1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 package org.xnap.platform.macos;
24
25 import org.xnap.XNap;
26 import org.xnap.gui.AboutDialog;
27 import org.xnap.gui.PreferencesDialog;
28 import org.xnap.gui.XNapFrame;
29
30 import com.apple.eawt.*;
31
32 public class MacOS141Handler extends ApplicationAdapter {
33
34 private MacOS141Handler()
35 {
36 }
37
38 public static void register()
39 {
40 MacOS141Handler h = new MacOS141Handler();
41
42 Application app = new Application();
43 app.addApplicationListener(h);
44 app.setEnabledPreferencesMenu(true);
45 }
46
47 public void handleAbout(ApplicationEvent event)
48 {
49 AboutDialog.showDialog(XNapFrame.getInstance());
50 event.setHandled(true);
51 }
52
53 public void handlePreferences(ApplicationEvent event)
54 {
55 PreferencesDialog.showDialog(XNapFrame.getInstance());
56 event.setHandled(true);
57 }
58
59 public void handleQuit(ApplicationEvent event)
60 {
61 if (XNapFrame.getInstance() != null) {
62 boolean quit = XNapFrame.getInstance().exit();
63 event.setHandled(quit);
64 }
65 else {
66 event.setHandled(true);
67 XNap.exit();
68 }
69 }
70
71 }