// Copyright 2009 University of Otago. All rights reserved.
//
-@class NJDeviceController;
@class NJMappingsController;
-@interface EnjoyableApplicationDelegate : NSObject <NSApplicationDelegate> {
- IBOutlet NSMenu *dockMenuBase;
- IBOutlet NSWindow *window;
-}
+#import "NJMappingMenuController.h"
+#import "NJMappingsViewController.h"
+#import "NJDeviceViewController.h"
+#import "NJOutputController.h"
+#import "NJInputController.h"
-@property (nonatomic, strong) IBOutlet NJDeviceController *inputController;
-@property (nonatomic, strong) IBOutlet NJMappingsController *mappingsController;
+@interface EnjoyableApplicationDelegate : NSObject <NSApplicationDelegate,
+ NJInputControllerDelegate,
+ NJDeviceViewControllerDelegate,
+ NJMappingsViewControllerDelegate,
+ NJMappingMenuDelegate,
+ NSWindowDelegate>
+
+@property (nonatomic, strong) IBOutlet NJInputController *inputController;
+@property (nonatomic, strong) IBOutlet NJOutputController *outputController;
+@property (nonatomic, strong) IBOutlet NJMappingsViewController *mvc;
+@property (nonatomic, strong) IBOutlet NJDeviceViewController *dvc;
+
+@property (nonatomic, strong) IBOutlet NSMenu *dockMenu;
+@property (nonatomic, strong) IBOutlet NSMenu *statusItemMenu;
+@property (nonatomic, strong) IBOutlet NSWindow *window;
+@property (nonatomic, strong) IBOutlet NSButton *simulatingEventsButton;
+
+- (IBAction)restoreToForeground:(id)sender;
+- (IBAction)importMappingClicked:(id)sender;
+- (IBAction)exportMappingClicked:(id)sender;
+- (IBAction)simulatingEventsChanged:(NSButton *)sender;
@end