Просмотр исходного кода

Tidy up the channel list modes pane.

Change-Id: Ifbe77fd01a01c4c3613515eb3499e803c9c236bd
Reviewed-on: http://gerrit.dmdirc.com/3133
Reviewed-by: Greg Holmes <greg@dmdirc.com>
Automatic-Compile: DMDirc Build Manager
tags/0.8
Chris Smith 10 лет назад
Родитель
Сommit
8323b536a0

+ 0
- 5
src/com/dmdirc/addons/ui_swing/SwingController.java Просмотреть файл

@@ -143,11 +143,6 @@ public class SwingController extends BaseCommandPlugin implements UIController {
143 143
         return globalConfig;
144 144
     }
145 145
 
146
-    @Deprecated
147
-    public ConfigProvider getGlobalIdentity() {
148
-        return globalIdentity;
149
-    }
150
-
151 146
     @Deprecated
152 147
     public IconManager getIconManager() {
153 148
         return iconManager;

+ 26
- 15
src/com/dmdirc/addons/ui_swing/dialogs/channelsetting/ChannelListModesPane.java Просмотреть файл

@@ -23,13 +23,15 @@
23 23
 package com.dmdirc.addons.ui_swing.dialogs.channelsetting;
24 24
 
25 25
 import com.dmdirc.Channel;
26
-import com.dmdirc.addons.ui_swing.SwingController;
27 26
 import com.dmdirc.addons.ui_swing.UIUtilities;
28 27
 import com.dmdirc.addons.ui_swing.components.renderers.ExtendedListModeCellRenderer;
29 28
 import com.dmdirc.addons.ui_swing.components.renderers.ListModeCellRenderer;
30 29
 import com.dmdirc.addons.ui_swing.dialogs.StandardInputDialog;
30
+import com.dmdirc.interfaces.config.AggregateConfigProvider;
31 31
 import com.dmdirc.interfaces.config.ConfigChangeListener;
32
+import com.dmdirc.interfaces.config.ConfigProvider;
32 33
 import com.dmdirc.parser.common.ChannelListModeItem;
34
+import com.dmdirc.ui.IconManager;
33 35
 import com.dmdirc.util.collections.MapList;
34 36
 import com.dmdirc.util.validators.NotEmptyValidator;
35 37
 
@@ -92,27 +94,39 @@ public final class ChannelListModesPane extends JPanel implements ActionListener
92 94
     private final JCheckBox toggle;
93 95
     /** Parent window. */
94 96
     private final Window parentWindow;
95
-    /** Swing controller. */
96
-    private final SwingController controller;
97 97
     /** Native cell renderer. */
98 98
     private final ListCellRenderer nativeRenderer;
99 99
     /** Cell renderer. */
100 100
     private ListCellRenderer renderer;
101 101
     /** Mode list. */
102 102
     private JList list;
103
+    /** The config to read settings from. */
104
+    private final AggregateConfigProvider globalConfig;
105
+    /** The config to write settings to. */
106
+    private final ConfigProvider userConfig;
107
+    /** The manager to use to retrieve icons for dialogs and validation. */
108
+    private final IconManager iconManager;
103 109
 
104 110
     /**
105 111
      * Creates a new instance of ChannelListModePane.
106 112
      *
107
-     * @param controller   Swing controller
113
+     * @param globalConfig The config to read settings from.
114
+     * @param userConfig   The config to write settings to.
115
+     * @param iconManager  The manager to use to retrieve icons for dialogs and validation.
108 116
      * @param channel      Parent channel
109 117
      * @param parentWindow Parent window
110 118
      */
111
-    public ChannelListModesPane(final SwingController controller,
112
-            final Channel channel, final Window parentWindow) {
119
+    public ChannelListModesPane(
120
+            final AggregateConfigProvider globalConfig,
121
+            final ConfigProvider userConfig,
122
+            final IconManager iconManager,
123
+            final Channel channel,
124
+            final Window parentWindow) {
113 125
         super();
114 126
 
115
-        this.controller = controller;
127
+        this.globalConfig = globalConfig;
128
+        this.userConfig = userConfig;
129
+        this.iconManager = iconManager;
116 130
         this.setOpaque(UIUtilities.getTabbedPaneOpaque());
117 131
         this.channel = channel;
118 132
         this.parentWindow = parentWindow;
@@ -134,8 +148,8 @@ public final class ChannelListModesPane extends JPanel implements ActionListener
134 148
         removeListModeButton = new JButton("Remove");
135 149
         removeListModeButton.setEnabled(false);
136 150
         modeCount = new JLabel();
137
-        toggle = new JCheckBox("Show extended information", channel.getConfigManager()
138
-                .getOptionBool("general", "extendedListModes"));
151
+        toggle = new JCheckBox("Show extended information",
152
+                channel.getConfigManager().getOptionBool("general", "extendedListModes"));
139 153
         toggle.setOpaque(UIUtilities.getTabbedPaneOpaque());
140 154
 
141 155
         initListModesPanel();
@@ -264,9 +278,7 @@ public final class ChannelListModesPane extends JPanel implements ActionListener
264 278
         }
265 279
 
266 280
         channel.getChannelInfo().flushModes();
267
-
268
-        controller.getGlobalIdentity().
269
-                setOption("general", "extendedListModes", toggle.isSelected());
281
+        userConfig.setOption("general", "extendedListModes", toggle.isSelected());
270 282
     }
271 283
 
272 284
     /** Adds a list mode. */
@@ -279,7 +291,7 @@ public final class ChannelListModesPane extends JPanel implements ActionListener
279 291
                     getOption("server", "mode" + listModesArray[selectedIndex]);
280 292
         }
281 293
         new StandardInputDialog(parentWindow, ModalityType.DOCUMENT_MODAL,
282
-                controller.getIconManager(), "Add new " + modeText,
294
+                iconManager, "Add new " + modeText,
283 295
                 "Please enter the hostmask for the new " + modeText,
284 296
                 new NotEmptyValidator()) {
285 297
             /**
@@ -390,8 +402,7 @@ public final class ChannelListModesPane extends JPanel implements ActionListener
390 402
     /** {@inheritDoc} */
391 403
     @Override
392 404
     public void configChanged(final String domain, final String key) {
393
-        if (controller.getGlobalConfig().getOptionBool("general",
394
-                "extendedListModes")) {
405
+        if (globalConfig.getOptionBool("general", "extendedListModes")) {
395 406
             renderer = new ListModeCellRenderer(nativeRenderer);
396 407
         } else {
397 408
             renderer = new ExtendedListModeCellRenderer();

+ 13
- 1
src/com/dmdirc/addons/ui_swing/dialogs/channelsetting/ChannelSettingsDialog.java Просмотреть файл

@@ -32,6 +32,7 @@ import com.dmdirc.addons.ui_swing.components.expandingsettings.SettingsPanel;
32 32
 import com.dmdirc.addons.ui_swing.components.modes.ChannelModesPane;
33 33
 import com.dmdirc.addons.ui_swing.dialogs.StandardDialog;
34 34
 import com.dmdirc.config.prefs.PreferencesManager;
35
+import com.dmdirc.interfaces.config.AggregateConfigProvider;
35 36
 import com.dmdirc.interfaces.config.ConfigProvider;
36 37
 import com.dmdirc.interfaces.config.IdentityFactory;
37 38
 import com.dmdirc.interfaces.ui.InputWindow;
@@ -73,6 +74,10 @@ public class ChannelSettingsDialog extends StandardDialog implements ActionListe
73 74
     private ChannelListModesPane channelListModesPane;
74 75
     /** Swing controller. */
75 76
     private final SwingController controller;
77
+    /** The config to read settings from. */
78
+    private final AggregateConfigProvider globalConfig;
79
+    /** The config to write settings to. */
80
+    private final ConfigProvider userConfig;
76 81
     /** Service manager. */
77 82
     private final ServiceManager serviceManager;
78 83
     /** Icon manager. */
@@ -89,6 +94,8 @@ public class ChannelSettingsDialog extends StandardDialog implements ActionListe
89 94
      * @param identityFactory    Identity factory
90 95
      * @param windowFactory      Swing window factory
91 96
      * @param iconManager        Icon manager
97
+     * @param globalConfig       The config to read global settings from.
98
+     * @param userConfig         The config to write global settings to.
92 99
      * @param serviceManager     Service manager
93 100
      * @param preferencesManager Preferences Manager
94 101
      * @param compFactory        Preferences setting component factory
@@ -100,6 +107,8 @@ public class ChannelSettingsDialog extends StandardDialog implements ActionListe
100 107
             final IdentityFactory identityFactory,
101 108
             final SwingWindowFactory windowFactory,
102 109
             final IconManager iconManager,
110
+            final AggregateConfigProvider globalConfig,
111
+            final ConfigProvider userConfig,
103 112
             final ServiceManager serviceManager,
104 113
             final PreferencesManager preferencesManager,
105 114
             final PrefsComponentFactory compFactory,
@@ -109,6 +118,7 @@ public class ChannelSettingsDialog extends StandardDialog implements ActionListe
109 118
 
110 119
         this.controller = controller;
111 120
         this.iconManager = iconManager;
121
+        this.userConfig = userConfig;
112 122
         this.serviceManager = serviceManager;
113 123
         this.preferencesManager = preferencesManager;
114 124
         this.compFactory = compFactory;
@@ -120,6 +130,7 @@ public class ChannelSettingsDialog extends StandardDialog implements ActionListe
120 130
 
121 131
         initComponents();
122 132
         initListeners();
133
+        this.globalConfig = globalConfig;
123 134
     }
124 135
 
125 136
     /** Initialises the main UI components. */
@@ -171,7 +182,8 @@ public class ChannelSettingsDialog extends StandardDialog implements ActionListe
171 182
 
172 183
     /** Initialises the IRC Settings tab. */
173 184
     private void initListModesTab() {
174
-        channelListModesPane = new ChannelListModesPane(controller, channel, this);
185
+        channelListModesPane = new ChannelListModesPane(globalConfig, userConfig, iconManager,
186
+                channel, this);
175 187
         tabbedPane.addTab("List Modes", channelListModesPane);
176 188
     }
177 189
 

+ 7
- 2
src/com/dmdirc/addons/ui_swing/injection/DialogModule.java Просмотреть файл

@@ -24,6 +24,7 @@ package com.dmdirc.addons.ui_swing.injection;
24 24
 
25 25
 import com.dmdirc.Channel;
26 26
 import com.dmdirc.ClientModule.GlobalConfig;
27
+import com.dmdirc.ClientModule.UserConfig;
27 28
 import com.dmdirc.Server;
28 29
 import com.dmdirc.actions.wrappers.PerformWrapper;
29 30
 import com.dmdirc.addons.ui_swing.MainFrame;
@@ -43,6 +44,8 @@ import com.dmdirc.addons.ui_swing.dialogs.updater.SwingRestartDialog;
43 44
 import com.dmdirc.addons.ui_swing.dialogs.updater.SwingUpdaterDialog;
44 45
 import com.dmdirc.config.prefs.PreferencesManager;
45 46
 import com.dmdirc.interfaces.LifecycleController;
47
+import com.dmdirc.interfaces.config.AggregateConfigProvider;
48
+import com.dmdirc.interfaces.config.ConfigProvider;
46 49
 import com.dmdirc.interfaces.config.IdentityFactory;
47 50
 import com.dmdirc.plugins.ServiceManager;
48 51
 import com.dmdirc.ui.IconManager;
@@ -140,6 +143,8 @@ public class DialogModule {
140 143
             final IdentityFactory identityFactory,
141 144
             final SwingWindowFactory windowFactory,
142 145
             @GlobalConfig final IconManager iconManager,
146
+            @GlobalConfig final AggregateConfigProvider globalConfig,
147
+            @UserConfig final ConfigProvider userConfig,
143 148
             final ServiceManager serviceManager,
144 149
             final PreferencesManager preferencesManager,
145 150
             final PrefsComponentFactory compFactory,
@@ -148,8 +153,8 @@ public class DialogModule {
148 153
             @Override
149 154
             protected ChannelSettingsDialog getInstance(final Channel key) {
150 155
                 return new ChannelSettingsDialog(controller, identityFactory, windowFactory,
151
-                        iconManager, serviceManager, preferencesManager, compFactory, key,
152
-                        parentWindow);
156
+                        iconManager, globalConfig, userConfig, serviceManager, preferencesManager,
157
+                        compFactory, key, parentWindow);
153 158
             }
154 159
         };
155 160
     }

Загрузка…
Отмена
Сохранить