Subversion Repositories svn.mios

Rev

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

Rev 753 Rev 757
Line 48... Line 48...
48
import javax.swing.Box;
48
import javax.swing.Box;
49
import javax.swing.ButtonGroup;
49
import javax.swing.ButtonGroup;
50
import javax.swing.Icon;
50
import javax.swing.Icon;
51
import javax.swing.ImageIcon;
51
import javax.swing.ImageIcon;
52
import javax.swing.JButton;
52
import javax.swing.JButton;
-
 
53
import javax.swing.JCheckBox;
53
import javax.swing.JCheckBoxMenuItem;
54
import javax.swing.JCheckBoxMenuItem;
54
import javax.swing.JComponent;
55
import javax.swing.JComponent;
55
import javax.swing.JDesktopPane;
56
import javax.swing.JDesktopPane;
56
import javax.swing.JDialog;
57
import javax.swing.JDialog;
57
import javax.swing.JFileChooser;
58
import javax.swing.JFileChooser;
Line 74... Line 75...
74
import javax.swing.event.PopupMenuEvent;
75
import javax.swing.event.PopupMenuEvent;
75
import javax.swing.event.PopupMenuListener;
76
import javax.swing.event.PopupMenuListener;
76
77
77
import org.midibox.apps.miosstudio.MIOSStudio;
78
import org.midibox.apps.miosstudio.MIOSStudio;
78
import org.midibox.apps.miosstudio.gui.xml.MIOSStudioGUIXML;
79
import org.midibox.apps.miosstudio.gui.xml.MIOSStudioGUIXML;
-
 
80
import org.midibox.apps.miosstudio.xml.MIOSStudioXML;
79
import org.midibox.midi.MidiFilterDevice;
81
import org.midibox.midi.MidiFilterDevice;
80
import org.midibox.midi.MidiKeyboardControllerDevice;
82
import org.midibox.midi.MidiKeyboardControllerDevice;
81
import org.midibox.midi.MidiRouterDevice;
83
import org.midibox.midi.MidiRouterDevice;
82
import org.midibox.midi.SysexSendReceiveDevice;
84
import org.midibox.midi.SysexSendReceiveDevice;
83
import org.midibox.midi.gui.MidiDeviceManagerGUI;
85
import org.midibox.midi.gui.MidiDeviceManagerGUI;
Line 1119... Line 1121...
1119
     * midiMapManagerDialog.setVisible(true);
1121
     * midiMapManagerDialog.setVisible(true);
1120
     *
1122
     *
1121
     * midiMapManagerDialog.addWindowListener(new WindowAdapter() { public void
1123
     * midiMapManagerDialog.addWindowListener(new WindowAdapter() { public void
1122
     * windowClosing(WindowEvent we) {
1124
     * windowClosing(WindowEvent we) {
1123
     * midiDeviceRouting.getMidiMapManager().deleteObserver( midiMapManagerGUI);
1125
     * midiDeviceRouting.getMidiMapManager().deleteObserver( midiMapManagerGUI);
1124
     * midiMapManagerDialog = null; } }); } midiMapManagerDialog.requestFocus(); }
1126
     * midiMapManagerDialog = null; } }); } midiMapManagerDialog.requestFocus();
-
 
1127
     * }
1125
     */
1128
     */
1126
1129
1127
    private void buildMRUMenu(JComponent menu) {
1130
    private void buildMRUMenu(JComponent menu) {
1128
1131
1129
        menu.removeAll();
1132
        menu.removeAll();
Line 1253... Line 1256...
1253
1256
1254
            final File file = fc.getSelectedFile();
1257
            final File file = fc.getSelectedFile();
1255
1258
1256
            openWorkspace(file);
1259
            openWorkspace(file);
1257
           
1260
1258
            currentDirectory = fc.getCurrentDirectory()
1261
            currentDirectory = fc.getCurrentDirectory().toString();
1259
            .toString();
-
 
1260
        }
1262
        }
1261
    }
1263
    }
1262
1264
1263
    protected void openWorkspace(File workspaceFile) {
1265
    protected void openWorkspace(File workspaceFile) {
1264
1266
1265
        final File file = workspaceFile;
1267
        final File file = workspaceFile;
1266
1268
1267
        if (file.exists()) {
1269
        if (file.exists()) {
1268
1270
1269
            final WorkspaceOptionDialog workspaceOptionDialog = new WorkspaceOptionDialog();
1271
            final WorkspaceOptionDialog workspaceOptionDialog = new WorkspaceOptionDialog();
-
 
1272
-
 
1273
            Boolean bool = MIOSStudioGUIXML.containsTag(file,
-
 
1274
                    MIOSStudioXML.TAG_ROOT_ELEMENT);
-
 
1275
            workspaceOptionDialog.modelCheckBox.setEnabled(bool);
-
 
1276
            workspaceOptionDialog.modelCheckBox.setSelected(bool);
-
 
1277
-
 
1278
            bool = MIOSStudioGUIXML.containsTag(file,
-
 
1279
                    MIOSStudioGUIXML.TAG_INTERNAL_FRAMES);
-
 
1280
            workspaceOptionDialog.guiCheckBox.setEnabled(bool);
-
 
1281
            workspaceOptionDialog.guiCheckBox.setSelected(bool);
-
 
1282
-
 
1283
            bool = MIOSStudioGUIXML.containsTag(file,
-
 
1284
                    MIOSStudioGUIXML.TAG_EXTERNAL_COMMANDS);
-
 
1285
            workspaceOptionDialog.externalCommandsCheckBox.setEnabled(bool);
-
 
1286
            workspaceOptionDialog.externalCommandsCheckBox.setSelected(bool);
-
 
1287
-
 
1288
            bool = MIOSStudioGUIXML.containsTag(file,
-
 
1289
                    MIOSStudioGUIXML.TAG_LOOK_AND_FEEL);
-
 
1290
            workspaceOptionDialog.lookAndFeelCheckBox.setEnabled(bool);
-
 
1291
            workspaceOptionDialog.lookAndFeelCheckBox.setSelected(bool);
1270
1292
1271
            workspaceOptionDialog.pack();
1293
            workspaceOptionDialog.pack();
1272
1294
1273
            workspaceOptionDialog.okButton
1295
            workspaceOptionDialog.okButton
1274
                    .addActionListener(new ActionListener() {
1296
                    .addActionListener(new ActionListener() {
1275
1297
1276
                        public void actionPerformed(ActionEvent ae) {
1298
                        public void actionPerformed(ActionEvent ae) {
1277
1299
1278
                            workspaceOptionDialog.setVisible(false);
1300
                            workspaceOptionDialog.setVisible(false);
1279
-
 
1280
                            boolean gui;
-
 
1281
-
 
1282
                            boolean model;
-
 
1283
-
 
1284
                            if (workspaceOptionDialog.guiRadioButton
-
 
1285
                                    .isSelected()) {
-
 
1286
-
 
1287
                                gui = true;
-
 
1288
                                model = false;
-
 
1289
-
 
1290
                            } else if (workspaceOptionDialog.modelRadioButton
-
 
1291
                                    .isSelected()) {
-
 
1292
-
 
1293
                                gui = false;
-
 
1294
                                model = true;
-
 
1295
-
 
1296
                            } else {
-
 
1297
-
 
1298
                                gui = true;
-
 
1299
                                model = true;
-
 
1300
                            }
-
 
1301
1301
1302
                            MIOSStudioGUIXML miosStudioGUIXML = new MIOSStudioGUIXML(
1302
                            MIOSStudioGUIXML miosStudioGUIXML = new MIOSStudioGUIXML(
1303
                                    MIOSStudioGUI.this,
1303
                                    MIOSStudioGUI.this,
1304
                                    MIOSStudioGUIXML.TAG_ROOT_ELEMENT, model,
1304
                                    MIOSStudioGUIXML.TAG_ROOT_ELEMENT,
-
 
1305
                                    workspaceOptionDialog.modelCheckBox
-
 
1306
                                            .isSelected(),
-
 
1307
                                    workspaceOptionDialog.guiCheckBox
-
 
1308
                                            .isSelected(),
-
 
1309
                                    workspaceOptionDialog.externalCommandsCheckBox
-
 
1310
                                            .isSelected(),
-
 
1311
                                    workspaceOptionDialog.lookAndFeelCheckBox
1305
                                    gui, false);
1312
                                            .isSelected(), false);
1306
1313
1307
                            miosStudioGUIXML.loadXML(file);
1314
                            miosStudioGUIXML.loadXML(file);
1308
                           
1315
1309
                        }
1316
                        }
1310
                    });
1317
                    });
Line 1364... Line 1371...
1364
                    .addActionListener(new ActionListener() {
1371
                    .addActionListener(new ActionListener() {
1365
1372
1366
                        public void actionPerformed(ActionEvent ae) {
1373
                        public void actionPerformed(ActionEvent ae) {
1367
1374
1368
                            workspaceOptionDialog.setVisible(false);
1375
                            workspaceOptionDialog.setVisible(false);
1369
-
 
1370
                            boolean gui;
-
 
1371
-
 
1372
                            boolean model;
-
 
1373
-
 
1374
                            if (workspaceOptionDialog.guiRadioButton
-
 
1375
                                    .isSelected()) {
-
 
1376
-
 
1377
                                gui = true;
-
 
1378
                                model = false;
-
 
1379
-
 
1380
                            } else if (workspaceOptionDialog.modelRadioButton
-
 
1381
                                    .isSelected()) {
-
 
1382
-
 
1383
                                gui = false;
-
 
1384
                                model = true;
-
 
1385
-
 
1386
                            } else {
-
 
1387
-
 
1388
                                gui = true;
-
 
1389
                                model = true;
-
 
1390
                            }
-
 
1391
1376
1392
                            MIOSStudioGUIXML miosStudioGUIXML = new MIOSStudioGUIXML(
1377
                            MIOSStudioGUIXML miosStudioGUIXML = new MIOSStudioGUIXML(
1393
                                    MIOSStudioGUI.this,
1378
                                    MIOSStudioGUI.this,
1394
                                    MIOSStudioGUIXML.TAG_ROOT_ELEMENT, model,
1379
                                    MIOSStudioGUIXML.TAG_ROOT_ELEMENT,
-
 
1380
                                    workspaceOptionDialog.modelCheckBox
-
 
1381
                                            .isSelected(),
-
 
1382
                                    workspaceOptionDialog.guiCheckBox
-
 
1383
                                            .isSelected(),
-
 
1384
                                    workspaceOptionDialog.externalCommandsCheckBox
-
 
1385
                                            .isSelected(),
-
 
1386
                                    workspaceOptionDialog.lookAndFeelCheckBox
1395
                                    gui, false);
1387
                                            .isSelected(), false);
1396
1388
1397
                            miosStudioGUIXML.saveXML(file);
1389
                            miosStudioGUIXML.saveXML(file);
1398
1390
1399
                            currentDirectory = fc.getCurrentDirectory()
1391
                            currentDirectory = fc.getCurrentDirectory()
1400
                                    .toString();
1392
                                    .toString();
Line 1777... Line 1769...
1777
        }
1769
        }
1778
    }
1770
    }
1779
1771
1780
    class WorkspaceOptionDialog extends JDialog {
1772
    class WorkspaceOptionDialog extends JDialog {
1781
1773
1782
        ButtonGroup buttonGroup;
1774
        File file;
1783
1775
1784
        JRadioButton modelRadioButton;
1776
        JCheckBox modelCheckBox;
1785
1777
1786
        JRadioButton guiRadioButton;
1778
        JCheckBox guiCheckBox;
-
 
1779
-
 
1780
        JCheckBox externalCommandsCheckBox;
-
 
1781
-
 
1782
        JCheckBox lookAndFeelCheckBox;
1787
1783
1788
        JButton okButton;
1784
        JButton okButton;
1789
1785
1790
        public WorkspaceOptionDialog() {
1786
        public WorkspaceOptionDialog() {
1791
1787
Line 1804... Line 1800...
1804
1800
1805
            JLabel label = new JLabel("Load/save workspace: ");
1801
            JLabel label = new JLabel("Load/save workspace: ");
1806
            panel.add(label, gbc);
1802
            panel.add(label, gbc);
1807
            gbc.gridy++;
1803
            gbc.gridy++;
1808
1804
-
 
1805
            modelCheckBox = new JCheckBox("MIOS Studio setup", true);
1809
            buttonGroup = new ButtonGroup();
1806
            panel.add(modelCheckBox, gbc);
-
 
1807
            gbc.gridy++;
1810
1808
1811
            JRadioButton radioButton = new JRadioButton(
-
 
1812
                    "Graphical layout and MIOS Studio setup", true);
1809
            guiCheckBox = new JCheckBox("Graphical layout", true);
1813
            panel.add(radioButton, gbc);
1810
            panel.add(guiCheckBox, gbc);
1814
            buttonGroup.add(radioButton);
-
 
1815
            gbc.gridy++;
1811
            gbc.gridy++;
1816
1812
1817
            guiRadioButton = new JRadioButton("Graphical layout only", false);
1813
            externalCommandsCheckBox = new JCheckBox(
1818
            panel.add(guiRadioButton, gbc);
1814
                    "External Command buttons", true);
1819
            buttonGroup.add(guiRadioButton);
1815
            panel.add(externalCommandsCheckBox, gbc);
1820
            gbc.gridy++;
1816
            gbc.gridy++;
1821
1817
1822
            modelRadioButton = new JRadioButton("MIOS Studio setup only", false);
1818
            lookAndFeelCheckBox = new JCheckBox("Look & Feel", true);
1823
            panel.add(modelRadioButton, gbc);
1819
            panel.add(lookAndFeelCheckBox, gbc);
1824
            buttonGroup.add(modelRadioButton);
-
 
1825
            gbc.gridy++;
1820
            gbc.gridy++;
1826
1821
1827
            gbc.anchor = (GridBagConstraints.CENTER);
1822
            gbc.anchor = (GridBagConstraints.CENTER);
1828
1823
1829
            okButton = new JButton("OK");
1824
            okButton = new JButton("OK");