blob: 05746c08b5cf228a93f51133af3f01f9bec764d5 [file] [log] [blame]
Alexander Afanasyev88f0b3a2013-09-24 23:52:08 -07001/* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil -*- */
2/*
3 * @copyright See LICENCE for copyright and license information.
4 *
5 * @author Alexander Afanasyev <alexander.afanasyev@ucla.edu>
6 * @author Ilya Moiseenko <iliamo@ucla.edu>
7 */
8
9#import <Cocoa/Cocoa.h>
10
11@interface MenuDelegate : NSObject <NSApplicationDelegate>
12{
Ilya Moiseenko350b9b52013-09-25 16:38:41 -070013 NSStatusItem *statusItem;
14 NSImage *menuIcon;
15
16 IBOutlet NSPopover *statusPopover;
17
18 IBOutlet NSMenu *statusMenu;
19 IBOutlet NSMenuItem *connectionStatus;
20 IBOutlet NSMenuItem *startstopButton;
21 IBOutlet NSMenuItem *daemonStatus;
22 IBOutlet NSMenuItem *routingStatus;
23 IBOutlet NSMenuItem *trafficMap;
Ilya Moiseenko2dffcf52013-09-27 15:08:04 -070024 IBOutlet NSMenuItem *ndnPreferences;
Ilya Moiseenkoa10ef8d2013-09-25 17:23:05 -070025
26 BOOL daemonStarted;
Ilya Moiseenko90f40c92013-09-27 15:52:01 -070027 BOOL allowSoftwareUpdates;
28 BOOL enableHubDiscovery;
Ilya Moiseenko01264322013-09-26 15:34:21 -070029
30 IBOutlet NSView *daemonStatusView;
31
32 IBOutlet NSView *connectionStatusView;
33 IBOutlet NSTextField *connectionStatusText;
Ilya Moiseenko2dffcf52013-09-27 15:08:04 -070034
35 IBOutlet NSWindow *preferencesPanel;
Ilya Moiseenko90f40c92013-09-27 15:52:01 -070036 IBOutlet NSView *generalSettingsView;
37 IBOutlet NSView *forwardingSettingsView;
38 IBOutlet NSView *securitySettingsView;
Alexander Afanasyev88f0b3a2013-09-24 23:52:08 -070039}
Ilya Moiseenko350b9b52013-09-25 16:38:41 -070040
Ilya Moiseenko01264322013-09-26 15:34:21 -070041-(void)menu:(NSMenu *)menu willHighlightItem:(NSMenuItem *)item;
Ilya Moiseenkoa10ef8d2013-09-25 17:23:05 -070042-(IBAction)switchDaemon:(id)sender;
Ilya Moiseenko350b9b52013-09-25 16:38:41 -070043-(IBAction)openDaemonStatus:(id)sender;
44-(IBAction)openRoutingStatusPage:(id)sender;
45-(IBAction)openTrafficMapPage:(id)sender;
Ilya Moiseenko2dffcf52013-09-27 15:08:04 -070046-(IBAction)openNDNDPreferences:(id)sender;
Ilya Moiseenko350b9b52013-09-25 16:38:41 -070047
Ilya Moiseenko90f40c92013-09-27 15:52:01 -070048-(IBAction)openGeneralSettings:(id)sender;
49-(IBAction)openForwardingSettings:(id)sender;
50-(IBAction)openSecuritySettings:(id)sender;
51
52-(IBAction)switchSoftwareUpdates:(id)sender;
53-(IBAction)switchHubDiscovery:(id)sender;
Alexander Afanasyev88f0b3a2013-09-24 23:52:08 -070054@end