Ignore:
Timestamp:
Dec 31, 2012, 2:48:32 PM (12 years ago)
Author:
alloc
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • AE/installer2/src/net/oni2/aeinstaller/gui/MainWin.java

    r592 r593  
    1010
    1111import javax.swing.JComboBox;
     12import javax.swing.JComponent;
    1213import javax.swing.JFrame;
    1314import javax.swing.JLabel;
     15import javax.swing.JMenu;
     16import javax.swing.JOptionPane;
    1417import javax.swing.JSplitPane;
    1518import javax.swing.JTable;
     
    2326
    2427import net.oni2.aeinstaller.backend.Settings;
     28import net.oni2.aeinstaller.backend.Settings.Platform;
    2529import net.oni2.aeinstaller.backend.depot.DepotCacheUpdateProgressListener;
    2630import net.oni2.aeinstaller.backend.depot.DepotConfig;
     
    2933import net.oni2.aeinstaller.backend.depot.model.TaxonomyTerm;
    3034import net.oni2.aeinstaller.backend.depot.model.TaxonomyVocabulary;
     35import net.oni2.aeinstaller.gui.about.AboutDialog;
    3136import net.oni2.aeinstaller.gui.modtable.ModTableFilter;
    3237import net.oni2.aeinstaller.gui.modtable.ModTableModel;
     
    3742import org.javabuilders.event.BackgroundEvent;
    3843import org.javabuilders.swing.SwingJavaBuilder;
     44import org.simplericity.macify.eawt.ApplicationEvent;
     45import org.simplericity.macify.eawt.ApplicationListener;
    3946
    4047/**
    4148 * @author Christian Illy
    4249 */
    43 public class MainWin extends JFrame {
     50public class MainWin extends JFrame implements ApplicationListener {
    4451        private static final long serialVersionUID = -4027395051382659650L;
    4552
     
    4855        @SuppressWarnings("unused")
    4956        private BuildResult result = SwingJavaBuilder.build(this, bundle);
     57
     58        private JMenu mainMenu;
    5059
    5160        private JSplitPane contents;
     
    6675         */
    6776        public MainWin() {
    68                 this.setTitle(bundle.getString("frame.title") + " - v"
    69                                 + bundle.getString("version"));
     77                this.setTitle(SwingJavaBuilder.getConfig().getResource("appname")
     78                                + " - v"
     79                                + SwingJavaBuilder.getConfig().getResource("appversion"));
    7080
    7181                contents.setDividerLocation(400);
    7282                initTable();
    7383                initModTypeBox();
     84
     85                if (Settings.getPlatform() == Platform.MACOS) {
     86                        mainMenu.setVisible(false);
     87                }
    7488        }
    7589
     
    115129                                });
    116130
     131                // To get checkbox-cells with background of row
     132                ((JComponent) tblMods.getDefaultRenderer(Boolean.class))
     133                                .setOpaque(true);
     134
    117135                model = new ModTableModel();
    118136
     
    148166        }
    149167
    150         @SuppressWarnings("unused")
     168        private boolean askClose() {
     169                int res = JOptionPane.showConfirmDialog(this,
     170                                bundle.getString("askClose.text"),
     171                                bundle.getString("askClose.title"), JOptionPane.YES_NO_OPTION,
     172                                JOptionPane.QUESTION_MESSAGE);
     173                return res == JOptionPane.YES_OPTION;
     174        }
     175
    151176        private boolean closeFrames() {
    152177                System.gc();
     
    158183        }
    159184
    160         @SuppressWarnings("unused")
    161185        private void exit() {
    162186                setVisible(false);
     
    164188        }
    165189
    166         @SuppressWarnings("unused")
    167190        private void saveLocalData() {
    168191                Settings.getInstance().serializeToFile();
     
    213236        }
    214237
    215         @SuppressWarnings("unused")
    216238        private void showSettings() {
    217                 SettingsDialog.openWindow();
    218         }
     239                new SettingsDialog().setVisible(true);
     240        }
     241
     242        private void showAbout() {
     243                new AboutDialog().setVisible(true);
     244        }
     245
     246        @SuppressWarnings("unused")
     247        private void loadConfig() {
     248                // TODO Auto-generated method stub
     249                JOptionPane.showMessageDialog(this, "loadConfig", "todo",
     250                                JOptionPane.INFORMATION_MESSAGE);
     251        }
     252
     253        @SuppressWarnings("unused")
     254        private void saveConfig() {
     255                // TODO Auto-generated method stub
     256                JOptionPane.showMessageDialog(this, "saveConfig", "todo",
     257                                JOptionPane.INFORMATION_MESSAGE);
     258        }
     259
     260        @SuppressWarnings("unused")
     261        private void reglobalize() {
     262                // TODO Auto-generated method stub
     263                JOptionPane.showMessageDialog(this, "reglobalize", "todo",
     264                                JOptionPane.INFORMATION_MESSAGE);
     265        }
     266       
     267        @SuppressWarnings("unused")
     268        private void revertSelection() {
     269                // TODO Auto-generated method stub
     270                JOptionPane.showMessageDialog(this, "revertSelection", "todo",
     271                                JOptionPane.INFORMATION_MESSAGE);
     272        }
     273       
     274       
    219275
    220276        private void modSelection(NodeMod n) {
     
    243299                        sorter.setRowFilter(new ModTableFilter(-1));
    244300        }
     301
     302        @Override
     303        public void handleAbout(ApplicationEvent event) {
     304                event.setHandled(true);
     305                showAbout();
     306        }
     307
     308        @Override
     309        public void handleOpenApplication(ApplicationEvent event) {
     310        }
     311
     312        @Override
     313        public void handleOpenFile(ApplicationEvent event) {
     314        }
     315
     316        @Override
     317        public void handlePreferences(ApplicationEvent event) {
     318                showSettings();
     319        }
     320
     321        @Override
     322        public void handlePrintFile(ApplicationEvent event) {
     323        }
     324
     325        @Override
     326        public void handleQuit(ApplicationEvent event) {
     327                if (askClose()) {
     328                        event.setHandled(true);
     329                        closeFrames();
     330                        saveLocalData();
     331                        exit();
     332                } else {
     333                        event.setHandled(false);
     334                }
     335        }
     336
     337        @Override
     338        public void handleReOpenApplication(ApplicationEvent event) {
     339        }
    245340}
Note: See TracChangeset for help on using the changeset viewer.