瀏覽代碼

Added ChannelWindow.redrawNicklist and made SetNickColour command use it instead of assuming we were using the swing UI

Fixes issue 1002

git-svn-id: http://svn.dmdirc.com/trunk@3647 00569f92-eb28-0410-84fd-f71c24880f
tags/0.6
Chris Smith 16 年之前
父節點
當前提交
8657b5e630

+ 7
- 5
src/com/dmdirc/commandparser/commands/channel/SetNickColour.java 查看文件

25
 import com.dmdirc.Channel;
25
 import com.dmdirc.Channel;
26
 import com.dmdirc.ChannelClientProperty;
26
 import com.dmdirc.ChannelClientProperty;
27
 import com.dmdirc.Server;
27
 import com.dmdirc.Server;
28
-import com.dmdirc.commandparser.commands.ChannelCommand;
29
 import com.dmdirc.commandparser.CommandManager;
28
 import com.dmdirc.commandparser.CommandManager;
29
+import com.dmdirc.commandparser.commands.ChannelCommand;
30
 import com.dmdirc.commandparser.commands.IntelligentCommand;
30
 import com.dmdirc.commandparser.commands.IntelligentCommand;
31
 import com.dmdirc.parser.ChannelClientInfo;
31
 import com.dmdirc.parser.ChannelClientInfo;
32
 import com.dmdirc.ui.input.AdditionalTabTargets;
32
 import com.dmdirc.ui.input.AdditionalTabTargets;
33
 import com.dmdirc.ui.input.TabCompletionType;
33
 import com.dmdirc.ui.input.TabCompletionType;
34
 import com.dmdirc.ui.interfaces.ChannelWindow;
34
 import com.dmdirc.ui.interfaces.ChannelWindow;
35
-import com.dmdirc.ui.swing.ChannelFrame;
36
 import com.dmdirc.ui.interfaces.InputWindow;
35
 import com.dmdirc.ui.interfaces.InputWindow;
37
 import com.dmdirc.ui.messages.ColourManager;
36
 import com.dmdirc.ui.messages.ColourManager;
38
 
37
 
94
             if (text) {
93
             if (text) {
95
                 target.getMap().remove(ChannelClientProperty.TEXT_FOREGROUND);
94
                 target.getMap().remove(ChannelClientProperty.TEXT_FOREGROUND);
96
             }
95
             }
97
-            ((ChannelFrame) channel.getFrame()).getNickList().repaint();
96
+            ((ChannelWindow) channel.getFrame()).redrawNicklist();
98
         } else {
97
         } else {
99
             // We're setting the colour
98
             // We're setting the colour
100
             final Color newColour = ColourManager.parseColour(args[offset], null);
99
             final Color newColour = ColourManager.parseColour(args[offset], null);
102
                 sendLine(origin, isSilent, FORMAT_ERROR, "Invalid colour specified.");
101
                 sendLine(origin, isSilent, FORMAT_ERROR, "Invalid colour specified.");
103
                 return;
102
                 return;
104
             }
103
             }
104
+
105
             if (nicklist) {
105
             if (nicklist) {
106
                 target.getMap().put(ChannelClientProperty.NICKLIST_FOREGROUND, newColour);
106
                 target.getMap().put(ChannelClientProperty.NICKLIST_FOREGROUND, newColour);
107
             }
107
             }
108
+
108
             if (text) {
109
             if (text) {
109
                 target.getMap().put(ChannelClientProperty.TEXT_FOREGROUND, newColour);
110
                 target.getMap().put(ChannelClientProperty.TEXT_FOREGROUND, newColour);
110
             }
111
             }
112
+
111
             ((ChannelWindow) channel.getFrame()).updateNames();
113
             ((ChannelWindow) channel.getFrame()).updateNames();
112
         }
114
         }
113
     }
115
     }
124
     
126
     
125
     /** {@inheritDoc}. */
127
     /** {@inheritDoc}. */
126
     public String getHelp() {
128
     public String getHelp() {
127
-        return "setnickcolour [--nicklist|--text] <nick> [colour] - " +
128
-                "set the specified person's display colour";
129
+        return "setnickcolour [--nicklist|--text] <nick> [colour] - "
130
+                + "set the specified person's display colour";
129
     }
131
     }
130
 
132
 
131
     /** {@inheritDoc} */
133
     /** {@inheritDoc} */

+ 6
- 0
src/com/dmdirc/ui/dummy/DummyChannelWindow.java 查看文件

205
         return parent;
205
         return parent;
206
     }
206
     }
207
 
207
 
208
+    /** {@inheritDoc} */
209
+    @Override
210
+    public void redrawNicklist() {
211
+        // Do nothing
212
+    }
213
+
208
 }
214
 }

+ 5
- 0
src/com/dmdirc/ui/interfaces/ChannelWindow.java 查看文件

67
      * @return Associated Channel
67
      * @return Associated Channel
68
      */
68
      */
69
     Channel getChannel();
69
     Channel getChannel();
70
+    
71
+    /**
72
+     * Redraws the nicklist belonging to this channel.
73
+     */
74
+    void redrawNicklist();
70
 
75
 
71
 }
76
 }

+ 9
- 2
src/com/dmdirc/ui/swing/ChannelFrame.java 查看文件

22
 
22
 
23
 package com.dmdirc.ui.swing;
23
 package com.dmdirc.ui.swing;
24
 
24
 
25
-import com.dmdirc.commandparser.PopupType;
26
-import com.dmdirc.ui.swing.components.renderers.NicklistRenderer;
27
 import com.dmdirc.Channel;
25
 import com.dmdirc.Channel;
28
 import com.dmdirc.Main;
26
 import com.dmdirc.Main;
29
 import com.dmdirc.ServerState;
27
 import com.dmdirc.ServerState;
28
+import com.dmdirc.commandparser.PopupType;
30
 import com.dmdirc.commandparser.parsers.ChannelCommandParser;
29
 import com.dmdirc.commandparser.parsers.ChannelCommandParser;
31
 import com.dmdirc.commandparser.parsers.CommandParser;
30
 import com.dmdirc.commandparser.parsers.CommandParser;
32
 import com.dmdirc.parser.ChannelClientInfo;
31
 import com.dmdirc.parser.ChannelClientInfo;
33
 import com.dmdirc.ui.interfaces.ChannelWindow;
32
 import com.dmdirc.ui.interfaces.ChannelWindow;
34
 import com.dmdirc.ui.swing.components.InputTextFrame;
33
 import com.dmdirc.ui.swing.components.InputTextFrame;
35
 import com.dmdirc.ui.swing.components.SwingInputHandler;
34
 import com.dmdirc.ui.swing.components.SwingInputHandler;
35
+import com.dmdirc.ui.swing.components.renderers.NicklistRenderer;
36
 import com.dmdirc.ui.swing.dialogs.channelsetting.ChannelSettingsDialog;
36
 import com.dmdirc.ui.swing.dialogs.channelsetting.ChannelSettingsDialog;
37
 import com.dmdirc.ui.swing.textpane.TextPane.ClickType;
37
 import com.dmdirc.ui.swing.textpane.TextPane.ClickType;
38
 import static com.dmdirc.ui.swing.UIUtilities.SMALL_BORDER;
38
 import static com.dmdirc.ui.swing.UIUtilities.SMALL_BORDER;
403
 
403
 
404
         popupMenu.add(settingsMI);
404
         popupMenu.add(settingsMI);
405
     }
405
     }
406
+
407
+    /** {@inheritDoc} */
408
+    @Override
409
+    public void redrawNicklist() {
410
+        getNickList().repaint();
411
+    }
412
+    
406
 }
413
 }

Loading…
取消
儲存