blob: 2332c462fe8e5be619788e59d381e241602c112a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
// Copyright 2004 Elliotte Rusty Harold
// Copyright 2013-2014 Victor Häggqvist
//
// This file is part of XQuisitor.
//
// XQuisitor is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published
// by the Free Software Foundation; either version 2 of the License,
// or (at your option) any later version.
//
// XQuisitor is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with XQuisitor; if not, write to the
//
// Free Software Foundation, Inc.
// 59 Temple Place, Suite 330
// Boston, MA 02111-1307
// USA
//
// In addition, as a special exception, Elliotte Rusty Harold gives
// permission to link the code of this program with the Saxon-B library (or
// with modified versions of Saxon-B that use the same license as Saxon-B),
// and distribute linked combinations including the two. You must obey the
// GNU General Public License in all respects for all of the code used other
// than Saxon-B. If you modify this file, you may extend this exception to
// your version of the file, but you are not obligated to do so. If you do
// not wish to do so, delete this exception statement from your version.
package com.snilius.xquery;
import java.awt.Dialog;
import java.awt.EventQueue;
import com.apple.eawt.ApplicationAdapter;
import com.apple.eawt.ApplicationEvent;
import com.apple.eawt.Application;
import javax.swing.*;
/**
* @author Elliotte Rusty Harold
* @version 1.0a5
*
* @author Victor Häggqvist
* @since 2013-12-18
* @version 2.0
*/
public class MacOSHandler extends Application {
private QueryFrame frame;
private JFrame about;
// can I add a hiddenFrame of some kind to keep the
// menu bar onscreen????
public MacOSHandler(QueryFrame frame) {
this.frame = frame;
about = new AboutDialog();
addApplicationListener(new AboutBoxHandler());
}
class AboutBoxHandler extends ApplicationAdapter {
// what else can I handle here????
public void handleAbout(ApplicationEvent event) {
EventQueue.invokeLater(new Runnable() {
public void run() {
about.show();
}
});
event.setHandled(true);
}
public void handleQuit(ApplicationEvent event) {
frame.quit();
}
}
}
|