瀏覽代碼

Use JMenuItemBuilder in the menubar.

pull/384/head
Greg Holmes 9 年之前
父節點
當前提交
5e7a0a1652

+ 10
- 8
ui_swing/src/com/dmdirc/addons/ui_swing/components/menubar/ChannelMenu.java 查看文件

@@ -93,10 +93,11 @@ public class ChannelMenu extends JMenu implements MenuListener {
93 93
      * Initialises the channel menu.
94 94
      */
95 95
     private void initChannelMenu() {
96
-        join = new JMenuItem();
97
-        join.setText("Join Channel...");
98
-        join.setMnemonic('j');
99
-        join.addActionListener(e -> joinChannel());
96
+        join = JMenuItemBuilder.create()
97
+                .setText("Join Channle...")
98
+                .setMnemonic('j')
99
+                .addActionListener(e -> joinChannel())
100
+                .build();
100 101
         add(join);
101 102
 
102 103
         csd = new JMenuItem();
@@ -105,10 +106,11 @@ public class ChannelMenu extends JMenu implements MenuListener {
105 106
         csd.addActionListener(l -> showChannelSettings());
106 107
         add(csd);
107 108
 
108
-        list = new JMenuItem();
109
-        list.setText("List channels...");
110
-        list.setMnemonic('l');
111
-        list.addActionListener(e -> channelListDialogProvider.displayOrRequestFocus());
109
+        list = JMenuItemBuilder.create()
110
+                .setText("List channels...")
111
+                .setMnemonic('l')
112
+                .addActionListener(e -> channelListDialogProvider.displayOrRequestFocus())
113
+                .build();
112 114
         add(list);
113 115
     }
114 116
 

+ 15
- 43
ui_swing/src/com/dmdirc/addons/ui_swing/components/menubar/HelpMenu.java 查看文件

@@ -28,19 +28,15 @@ import com.dmdirc.addons.ui_swing.dialogs.feedback.FeedbackDialog;
28 28
 import com.dmdirc.addons.ui_swing.injection.DialogProvider;
29 29
 import com.dmdirc.interfaces.ConnectionManager;
30 30
 
31
-import java.awt.event.ActionEvent;
32
-import java.awt.event.ActionListener;
33
-
34 31
 import javax.inject.Inject;
35 32
 import javax.inject.Singleton;
36 33
 import javax.swing.JMenu;
37
-import javax.swing.JMenuItem;
38 34
 
39 35
 /**
40 36
  * A menu providing help commands to the menu bar.
41 37
  */
42 38
 @Singleton
43
-public class HelpMenu extends JMenu implements ActionListener {
39
+public class HelpMenu extends JMenu {
44 40
 
45 41
     /** Serial version UID. */
46 42
     private static final long serialVersionUID = 1;
@@ -75,45 +71,21 @@ public class HelpMenu extends JMenu implements ActionListener {
75 71
      * Initialises the help menu.
76 72
      */
77 73
     private void initHelpMenu() {
78
-        JMenuItem menuItem;
79
-
80
-        menuItem = new JMenuItem();
81
-        menuItem.setMnemonic('j');
82
-        menuItem.setText("Join Dev channel");
83
-        menuItem.setActionCommand("JoinDevChat");
84
-        menuItem.addActionListener(this);
85
-        add(menuItem);
86
-
87
-        menuItem = new JMenuItem();
88
-        menuItem.setMnemonic('f');
89
-        menuItem.setText("Send Feedback");
90
-        menuItem.setActionCommand("feedback");
91
-        menuItem.addActionListener(this);
92
-        add(menuItem);
93
-
74
+        add(JMenuItemBuilder.create()
75
+                .setMnemonic('j')
76
+                .setText("Join Dev channel")
77
+                .addActionListener(e -> connectionManager.joinDevChat())
78
+                .build());
79
+        add(JMenuItemBuilder.create().setMnemonic('f')
80
+                .setText("Send Feedback")
81
+                .addActionListener(e -> feedbackDialogProvider.displayOrRequestFocus())
82
+                .build());
94 83
         if (!Apple.isAppleUI()) {
95
-            menuItem = new JMenuItem();
96
-            menuItem.setMnemonic('a');
97
-            menuItem.setText("About");
98
-            menuItem.setActionCommand("About");
99
-            menuItem.addActionListener(this);
100
-            add(menuItem);
84
+            add(JMenuItemBuilder.create()
85
+                    .setMnemonic('a')
86
+                    .setText("About")
87
+                    .addActionListener(e -> aboutDialogProvider.displayOrRequestFocus())
88
+                    .build());
101 89
         }
102 90
     }
103
-
104
-    @Override
105
-    public void actionPerformed(final ActionEvent e) {
106
-        switch (e.getActionCommand()) {
107
-            case "About":
108
-                aboutDialogProvider.displayOrRequestFocus();
109
-                break;
110
-            case "JoinDevChat":
111
-                connectionManager.joinDevChat();
112
-                break;
113
-            case "feedback":
114
-                feedbackDialogProvider.displayOrRequestFocus();
115
-                break;
116
-        }
117
-    }
118
-
119 91
 }

+ 3
- 3
ui_swing/src/com/dmdirc/addons/ui_swing/components/menubar/MenuBar.java 查看文件

@@ -108,9 +108,9 @@ public class MenuBar extends JMenuBar {
108 108
     }
109 109
 
110 110
     public void removeMenuItem(final String parentMenu, final String childItem) {
111
-        Optional<JMenu> menu = getParentMenuItem(parentMenu);
111
+        final Optional<JMenu> menu = getParentMenuItem(parentMenu);
112 112
         if (menu.isPresent()) {
113
-            Optional<JMenuItem> menuItem = getChildItem(menu.get(), childItem);
113
+            final Optional<JMenuItem> menuItem = getChildItem(menu.get(), childItem);
114 114
             if (menuItem.isPresent()) {
115 115
                 menu.get().remove(menuItem.get());
116 116
             }
@@ -135,7 +135,7 @@ public class MenuBar extends JMenuBar {
135 135
             child = menu.getMenuComponent(i);
136 136
             if (child instanceof JMenuItem) {
137 137
                 final JMenuItem childMenu = (JMenuItem) child;
138
-                if (childMenu != null && childMenu.getText().equals(name)) {
138
+                if (childMenu.getText().equals(name)) {
139 139
                     break;
140 140
                 }
141 141
             }

+ 26
- 24
ui_swing/src/com/dmdirc/addons/ui_swing/components/menubar/ServerMenu.java 查看文件

@@ -94,35 +94,37 @@ public class ServerMenu extends JMenu implements MenuListener {
94 94
      * Initialises the server menu.
95 95
      */
96 96
     private void initServerMenu() {
97
-        final JMenuItem newServer = new JMenuItem();
98
-        newServer.setText("New Server...");
99
-        newServer.setMnemonic('n');
100
-        newServer.addActionListener(e -> newServerProvider.displayOrRequestFocus());
101
-        add(newServer);
102
-
103
-        disconnect = new JMenuItem();
104
-        disconnect.setText("Disconnect");
105
-        disconnect.setMnemonic('d');
106
-        disconnect.addActionListener(e -> activeFrameManager.getActiveFrame()
107
-                .map(TextFrame::getContainer)
108
-                .flatMap(WindowModel::getConnection)
109
-                .ifPresent(Connection::disconnect));
97
+        add(JMenuItemBuilder.create()
98
+                .setText("New Server...")
99
+                .setMnemonic('n')
100
+                .addActionListener(e -> newServerProvider.displayOrRequestFocus())
101
+                .build());
102
+
103
+        disconnect = JMenuItemBuilder.create()
104
+                .setText("Disconnect")
105
+                .setMnemonic('d')
106
+                .addActionListener(
107
+                        e -> activeFrameManager.getActiveFrame().map(TextFrame::getContainer)
108
+                                .flatMap(WindowModel::getConnection)
109
+                                .ifPresent(Connection::disconnect))
110
+                .build();
110 111
         add(disconnect);
111 112
 
112
-        ssd = new JMenuItem();
113
-        ssd.setMnemonic('s');
114
-        ssd.setText("Server settings");
115
-        ssd.addActionListener(e -> activeFrameManager.getActiveFrame()
116
-                .ifPresent(f -> f.getContainer().getConnection()
117
-                        .ifPresent(ssdProvider::displayOrRequestFocus)));
113
+        ssd = JMenuItemBuilder.create()
114
+                .setMnemonic('s')
115
+                .setText("Server settings")
116
+                .addActionListener(e -> activeFrameManager.getActiveFrame().ifPresent(
117
+                        f -> f.getContainer().getConnection()
118
+                                .ifPresent(ssdProvider::displayOrRequestFocus)))
119
+                .build();
118 120
         add(ssd);
119 121
 
120 122
         if (!Apple.isAppleUI()) {
121
-            final JMenuItem exit = new JMenuItem();
122
-            exit.setText("Exit");
123
-            exit.setMnemonic('x');
124
-            exit.addActionListener(e -> UIUtilities.invokeOffEDT(lifecycleController::quit));
125
-            add(exit);
123
+            add(JMenuItemBuilder.create()
124
+                    .setText("Exit")
125
+                    .setMnemonic('x')
126
+                    .addActionListener(e -> UIUtilities.invokeOffEDT(lifecycleController::quit))
127
+                    .build());
126 128
         }
127 129
     }
128 130
 

+ 12
- 20
ui_swing/src/com/dmdirc/addons/ui_swing/components/menubar/SettingsMenu.java 查看文件

@@ -31,7 +31,6 @@ import com.dmdirc.addons.ui_swing.injection.DialogProvider;
31 31
 import javax.inject.Inject;
32 32
 import javax.inject.Singleton;
33 33
 import javax.swing.JMenu;
34
-import javax.swing.JMenuItem;
35 34
 
36 35
 /**
37 36
  * A menu to add settings related commands to the menu bar.
@@ -66,27 +65,20 @@ public class SettingsMenu extends JMenu {
66 65
      * Initialises the settings menu.
67 66
      */
68 67
     private void initSettingsMenu() {
69
-        JMenuItem menuItem;
70
-
71 68
         if (!Apple.isAppleUI()) {
72
-            menuItem = new JMenuItem();
73
-            menuItem.setText("Preferences");
74
-            menuItem.setMnemonic('p');
75
-            menuItem.addActionListener(e -> prefsDialogProvider.displayOrRequestFocus());
76
-            add(menuItem);
69
+            add(JMenuItemBuilder.create().setText("Preferences").setMnemonic('p')
70
+                    .addActionListener(e -> prefsDialogProvider.displayOrRequestFocus()).build());
77 71
         }
78
-
79
-        menuItem = new JMenuItem();
80
-        menuItem.setMnemonic('p');
81
-        menuItem.setText("Profile Manager");
82
-        menuItem.addActionListener(e -> profileDialogProvider.displayOrRequestFocus());
83
-        add(menuItem);
84
-
85
-        menuItem = new JMenuItem();
86
-        menuItem.setMnemonic('a');
87
-        menuItem.setText("Alias Manager");
88
-        menuItem.addActionListener(e -> aliasDialogProvider.displayOrRequestFocus());
89
-        add(menuItem);
72
+        add(JMenuItemBuilder.create()
73
+                .setMnemonic('p')
74
+                .addActionListener(e -> profileDialogProvider.displayOrRequestFocus())
75
+                .setText("Profile Manager")
76
+                .build());
77
+        add(JMenuItemBuilder.create()
78
+                .setMnemonic('a')
79
+                .setText("Alias Manager")
80
+                .addActionListener(e -> aliasDialogProvider.displayOrRequestFocus())
81
+                .build());
90 82
     }
91 83
 
92 84
 }

Loading…
取消
儲存