Subversion Repositories svn.mios

Rev

Rev 857 | Rev 872 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 857 Rev 870
Line 20... Line 20...
20
20
21
import java.awt.Dimension;
21
import java.awt.Dimension;
22
import java.awt.Toolkit;
22
import java.awt.Toolkit;
23
import java.awt.event.ActionEvent;
23
import java.awt.event.ActionEvent;
24
import java.awt.event.ActionListener;
24
import java.awt.event.ActionListener;
-
 
25
import java.awt.event.ContainerEvent;
-
 
26
import java.awt.event.ContainerListener;
25
import java.awt.event.KeyEvent;
27
import java.awt.event.KeyEvent;
26
import java.awt.event.WindowAdapter;
-
 
27
import java.awt.event.WindowEvent;
-
 
28
import java.io.File;
28
import java.io.File;
29
29
30
import javax.swing.JApplet;
30
import javax.swing.JApplet;
31
import javax.swing.JFrame;
31
import javax.swing.JFrame;
32
import javax.swing.JMenuItem;
32
import javax.swing.JMenuItem;
-
 
33
import javax.swing.UIManager;
33
34
34
import org.midibox.apps.miosstudio.gui.MIOSStudioGUI;
35
import org.midibox.apps.miosstudio.gui.MIOSStudioGUI;
35
import org.midibox.apps.miosstudio.gui.xml.MIOSStudioGUIXML;
36
import org.midibox.apps.miosstudio.gui.xml.MIOSStudioGUIXML;
36
import org.midibox.utils.gui.DialogOwner;
37
import org.midibox.utils.gui.DialogOwner;
37
import org.midibox.utils.gui.ImageLoader;
38
import org.midibox.utils.gui.ImageLoader;
Line 111... Line 112...
111
            this.miosStudioGUI = new MIOSStudioGUI(miosStudio);
112
            this.miosStudioGUI = new MIOSStudioGUI(miosStudio);
112
        }
113
        }
113
114
114
        setContentPane(miosStudioGUI);
115
        setContentPane(miosStudioGUI);
115
116
116
        setJMenuBar(miosStudioGUI.createMenuBar());
117
        if (miosStudioGUI.isMDI()) {
117
118
118
        miosStudioGUI.setCommentLabel(frameComment);
119
            miosStudioGUI.setCommentLabel(frameComment);
-
 
120
        }
119
    }
121
    }
120
122
121
    public void init() {
123
    public void init() {
122
-
 
-
 
124
        setJMenuBar(miosStudioGUI.createMenuBar());
123
    }
125
    }
124
126
125
    public void destroy() {
127
    public void destroy() {
126
128
127
        File configDirectory = new File(System.getProperty("user.home"),
129
        File configDirectory = new File(System.getProperty("user.home"),
Line 162... Line 164...
162
            miosStudioGUIXML.saveXML(configFile);
164
            miosStudioGUIXML.saveXML(configFile);
163
        }
165
        }
164
    }
166
    }
165
167
166
    public static void main(String[] args) {
168
    public static void main(String[] args) {
-
 
169
-
 
170
        System.setProperty("apple.laf.useScreenMenuBar", "true");
167
171
168
        SplashScreen splashScreen = new SplashScreen(splashImage, splashTitle);
172
        SplashScreen splashScreen = new SplashScreen(splashImage, splashTitle);
169
173
170
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
174
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
171
175
Line 174... Line 178...
174
                (screenSize.height - splashScreen.getHeight()) / 2);
178
                (screenSize.height - splashScreen.getHeight()) / 2);
175
179
176
        splashScreen.setVisible(true);
180
        splashScreen.setVisible(true);
177
181
178
        final JFrame frame = new JFrame(frameTitle);
182
        final JFrame frame = new JFrame(frameTitle);
179
-
 
180
        frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
-
 
181
183
182
        DialogOwner.setFrame(frame);
184
        DialogOwner.setFrame(frame);
183
185
184
        frame.setIconImage(ImageLoader.getImageIcon("ucIcon.png").getImage());
186
        frame.setIconImage(ImageLoader.getImageIcon("ucIcon.png").getImage());
185
187
186
        frame.setBounds(50, 50, (screenSize.width - 100),
188
        frame.setBounds(50, 50, (screenSize.width - 100),
187
                (screenSize.height - 100));
189
                (screenSize.height - 100));
188
190
189
        final MIOSStudio miosStudio = new MIOSStudio();
191
        final MIOSStudio miosStudio = new MIOSStudio();
190
192
191
        miosStudio.init();
-
 
192
-
 
193
        frame.setContentPane(miosStudio);
193
        if (System.getProperty("mrj.version") == null) {
194
194
195
        JMenuItem exitMenuItem = new JMenuItem("Exit");
195
            JMenuItem exitMenuItem = new JMenuItem("Exit");
196
        exitMenuItem.setMnemonic(KeyEvent.VK_X);
196
            exitMenuItem.setMnemonic(KeyEvent.VK_X);
197
        exitMenuItem.setActionCommand("exit");
197
            exitMenuItem.setActionCommand("exit");
198
198
199
        exitMenuItem.addActionListener(new ActionListener() {
199
            exitMenuItem.addActionListener(new ActionListener() {
200
            public void actionPerformed(ActionEvent ae) {
200
                public void actionPerformed(ActionEvent ae) {
201
-
 
202
                miosStudio.destroy();
-
 
203
201
204
                System.exit(0);
202
                    System.exit(0);
205
            }
203
                }
206
        });
204
            });
207
205
           
208
        miosStudio.miosStudioGUI.getFileMenu().add(exitMenuItem);
206
            miosStudio.miosStudioGUI.getFileMenu().add(exitMenuItem);
209
207
210
        frame.addWindowListener(new WindowAdapter() {
208
            miosStudio.setJMenuBar(miosStudio.miosStudioGUI.createMenuBar());
211
            public void windowClosing(WindowEvent we) {
-
 
212
209
           
-
 
210
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
-
 
211
-
 
212
        } else {
-
 
213
-
 
214
            frame.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
-
 
215
           
-
 
216
            if (UIManager.getLookAndFeel().getClass().getName().toString() == UIManager
-
 
217
                    .getSystemLookAndFeelClassName()) {
-
 
218
-
 
219
                frame.setJMenuBar(miosStudio.miosStudioGUI.createMenuBar());
-
 
220
            }
-
 
221
-
 
222
            else {
-
 
223
-
 
224
                miosStudio
-
 
225
                        .setJMenuBar(miosStudio.miosStudioGUI.createMenuBar());
-
 
226
            }
-
 
227
        }
-
 
228
-
 
229
        Runtime.getRuntime().addShutdownHook(new Thread() {
-
 
230
-
 
231
            public void run() {
213
                miosStudio.destroy();
232
                miosStudio.destroy();
-
 
233
            }
-
 
234
-
 
235
        });
-
 
236
-
 
237
        frame.setContentPane(miosStudio);
-
 
238
-
 
239
        if (!miosStudio.miosStudioGUI.isMDI()) {
-
 
240
-
 
241
            frame.setResizable(false);
-
 
242
-
 
243
            frame.pack();
-
 
244
-
 
245
            miosStudio.miosStudioGUI.getToolBar().addContainerListener(
-
 
246
                    new ContainerListener() {
-
 
247
-
 
248
                        @Override
-
 
249
                        public void componentRemoved(ContainerEvent e) {
-
 
250
-
 
251
                            frame.pack();
-
 
252
-
 
253
                        }
-
 
254
-
 
255
                        @Override
-
 
256
                        public void componentAdded(ContainerEvent e) {
-
 
257
-
 
258
                            frame.pack();
214
259
215
                System.exit(0);
-
 
216
            }
260
                        }
217
        });
261
                    });
-
 
262
-
 
263
        }
218
264
219
        frame.setVisible(true);
265
        frame.setVisible(true);
-
 
266
220
        splashScreen.setVisible(false);
267
        splashScreen.setVisible(false);
-
 
268
221
    }
269
    }
-
 
270
222
}
271
}