Selaa lähdekoodia

Remove WritableFrameContainer.

Change-Id: I52a09d5f5ad69c2bebafa58582a173f706515fa6
Depends-On: Iab58f1d2b9275ee3fc60d79e433e158bae784911
Reviewed-on: http://gerrit.dmdirc.com/3425
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Greg Holmes <greg@dmdirc.com>
changes/25/3425/3
Chris Smith 10 vuotta sitten
vanhempi
commit
308c21b365
24 muutettua tiedostoa jossa 66 lisäystä ja 93 poistoa
  1. 3
    5
      src/com/dmdirc/addons/activewindow/ActiveCommand.java
  2. 3
    3
      src/com/dmdirc/addons/activewindow/ActiveWindowMessageSink.java
  3. 2
    4
      src/com/dmdirc/addons/conditional_execute/ConditionalExecuteCommand.java
  4. 1
    2
      src/com/dmdirc/addons/dcc/DCCCommandParser.java
  5. 4
    4
      src/com/dmdirc/addons/dcc/DCCFrameContainer.java
  6. 2
    6
      src/com/dmdirc/addons/debug/commands/Time.java
  7. 5
    6
      src/com/dmdirc/addons/nowplaying/NowPlayingCommand.java
  8. 6
    6
      src/com/dmdirc/addons/redirect/FakeWriteableFrameContainer.java
  9. 1
    2
      src/com/dmdirc/addons/redirect/RedirectCommand.java
  10. 3
    3
      src/com/dmdirc/addons/tabcompletion_bash/BashStyle.java
  11. 2
    2
      src/com/dmdirc/addons/tabcompletion_bash/BashStylePlugin.java
  12. 4
    4
      src/com/dmdirc/addons/tabcompletion_mirc/MircStyle.java
  13. 2
    2
      src/com/dmdirc/addons/tabcompletion_mirc/MircStylePlugin.java
  14. 1
    2
      src/com/dmdirc/addons/time/TimedCommand.java
  15. 1
    3
      src/com/dmdirc/addons/ui_swing/SwingWindowFactory.java
  16. 1
    2
      src/com/dmdirc/addons/ui_swing/components/frames/ComponentInputFrame.java
  17. 2
    2
      src/com/dmdirc/addons/ui_swing/components/frames/CustomInputFrame.java
  18. 3
    16
      src/com/dmdirc/addons/ui_swing/components/frames/InputTextFrame.java
  19. 2
    2
      src/com/dmdirc/addons/ui_swing/components/inputfields/SwingInputHandler.java
  20. 2
    2
      src/com/dmdirc/addons/ui_web/uicomponents/WebInputHandler.java
  21. 3
    10
      src/com/dmdirc/addons/ui_web/uicomponents/WebInputWindow.java
  22. 1
    0
      src/com/dmdirc/addons/ui_web/uicomponents/WebWindow.java
  23. 3
    2
      test/com/dmdirc/addons/conditional_execute/ConditionalExecuteCommandTest.java
  24. 9
    3
      test/com/dmdirc/addons/redirect/RedirectCommandTest.java

+ 3
- 5
src/com/dmdirc/addons/activewindow/ActiveCommand.java Näytä tiedosto

23
 package com.dmdirc.addons.activewindow;
23
 package com.dmdirc.addons.activewindow;
24
 
24
 
25
 import com.dmdirc.FrameContainer;
25
 import com.dmdirc.FrameContainer;
26
-import com.dmdirc.WritableFrameContainer;
27
 import com.dmdirc.addons.ui_swing.components.frames.TextFrame;
26
 import com.dmdirc.addons.ui_swing.components.frames.TextFrame;
28
 import com.dmdirc.addons.ui_swing.interfaces.ActiveFrameManager;
27
 import com.dmdirc.addons.ui_swing.interfaces.ActiveFrameManager;
29
 import com.dmdirc.commandparser.BaseCommandInfo;
28
 import com.dmdirc.commandparser.BaseCommandInfo;
69
     public void execute(final FrameContainer origin,
68
     public void execute(final FrameContainer origin,
70
             final CommandArguments args, final CommandContext context) {
69
             final CommandArguments args, final CommandContext context) {
71
         final TextFrame frame = activeFrameManager.getActiveFrame();
70
         final TextFrame frame = activeFrameManager.getActiveFrame();
72
-        if (frame.getContainer() instanceof WritableFrameContainer) {
73
-            ((WritableFrameContainer) frame.getContainer()).getCommandParser()
74
-                    .parseCommand(frame.getContainer(),
75
-                            args.getArgumentsAsString());
71
+        if (frame.getContainer().isWritable()) {
72
+            frame.getContainer().getCommandParser().parseCommand(frame.getContainer(),
73
+                    args.getArgumentsAsString());
76
         }
74
         }
77
     }
75
     }
78
 
76
 

+ 3
- 3
src/com/dmdirc/addons/activewindow/ActiveWindowMessageSink.java Näytä tiedosto

22
 
22
 
23
 package com.dmdirc.addons.activewindow;
23
 package com.dmdirc.addons.activewindow;
24
 
24
 
25
-import com.dmdirc.WritableFrameContainer;
25
+import com.dmdirc.FrameContainer;
26
 import com.dmdirc.addons.ui_swing.components.frames.TextFrame;
26
 import com.dmdirc.addons.ui_swing.components.frames.TextFrame;
27
 import com.dmdirc.addons.ui_swing.interfaces.ActiveFrameManager;
27
 import com.dmdirc.addons.ui_swing.interfaces.ActiveFrameManager;
28
 import com.dmdirc.messages.MessageSink;
28
 import com.dmdirc.messages.MessageSink;
60
 
60
 
61
     @Override
61
     @Override
62
     public void handleMessage(final MessageSinkManager despatcher,
62
     public void handleMessage(final MessageSinkManager despatcher,
63
-            final WritableFrameContainer source, final String[] patternMatches,
63
+            final FrameContainer source, final String[] patternMatches,
64
             final Date date, final String messageType, final Object... args) {
64
             final Date date, final String messageType, final Object... args) {
65
         final TextFrame frame = activeFrameManager.getActiveFrame();
65
         final TextFrame frame = activeFrameManager.getActiveFrame();
66
-        if (frame.getContainer() instanceof WritableFrameContainer) {
66
+        if (frame.getContainer().isWritable()) {
67
             frame.getContainer().addLine(messageType, date, args);
67
             frame.getContainer().addLine(messageType, date, args);
68
         }
68
         }
69
     }
69
     }

+ 2
- 4
src/com/dmdirc/addons/conditional_execute/ConditionalExecuteCommand.java Näytä tiedosto

23
 package com.dmdirc.addons.conditional_execute;
23
 package com.dmdirc.addons.conditional_execute;
24
 
24
 
25
 import com.dmdirc.FrameContainer;
25
 import com.dmdirc.FrameContainer;
26
-import com.dmdirc.WritableFrameContainer;
27
 import com.dmdirc.commandparser.BaseCommandInfo;
26
 import com.dmdirc.commandparser.BaseCommandInfo;
28
 import com.dmdirc.commandparser.CommandArguments;
27
 import com.dmdirc.commandparser.CommandArguments;
29
 import com.dmdirc.commandparser.CommandType;
28
 import com.dmdirc.commandparser.CommandType;
237
                         "You can't run commands and manipulate the namespace at the same time, ignored.");
236
                         "You can't run commands and manipulate the namespace at the same time, ignored.");
238
             } else {
237
             } else {
239
                 // Command to run!
238
                 // Command to run!
240
-                if (namespace.canRun(inverse) && origin instanceof WritableFrameContainer) {
241
-                    ((WritableFrameContainer) origin).getCommandParser().parseCommand(origin, args.
242
-                            getArgumentsAsString(i++));
239
+                if (namespace.canRun(inverse) && origin.isWritable()) {
240
+                    origin.getCommandParser().parseCommand(origin, args.getArgumentsAsString(i++));
243
                 }
241
                 }
244
                 return;
242
                 return;
245
             }
243
             }

+ 1
- 2
src/com/dmdirc/addons/dcc/DCCCommandParser.java Näytä tiedosto

23
 package com.dmdirc.addons.dcc;
23
 package com.dmdirc.addons.dcc;
24
 
24
 
25
 import com.dmdirc.FrameContainer;
25
 import com.dmdirc.FrameContainer;
26
-import com.dmdirc.WritableFrameContainer;
27
 import com.dmdirc.commandparser.parsers.GlobalCommandParser;
26
 import com.dmdirc.commandparser.parsers.GlobalCommandParser;
28
 import com.dmdirc.interfaces.CommandController;
27
 import com.dmdirc.interfaces.CommandController;
29
 import com.dmdirc.interfaces.config.AggregateConfigProvider;
28
 import com.dmdirc.interfaces.config.AggregateConfigProvider;
57
      */
56
      */
58
     @Override
57
     @Override
59
     protected void handleNonCommand(final FrameContainer origin, final String line) {
58
     protected void handleNonCommand(final FrameContainer origin, final String line) {
60
-        ((WritableFrameContainer) origin).sendLine(line);
59
+        origin.sendLine(line);
61
     }
60
     }
62
 
61
 
63
     @Override
62
     @Override

+ 4
- 4
src/com/dmdirc/addons/dcc/DCCFrameContainer.java Näytä tiedosto

22
 
22
 
23
 package com.dmdirc.addons.dcc;
23
 package com.dmdirc.addons.dcc;
24
 
24
 
25
-import com.dmdirc.WritableFrameContainer;
25
+import com.dmdirc.FrameContainer;
26
 import com.dmdirc.commandparser.parsers.CommandParser;
26
 import com.dmdirc.commandparser.parsers.CommandParser;
27
 import com.dmdirc.interfaces.Connection;
27
 import com.dmdirc.interfaces.Connection;
28
 import com.dmdirc.interfaces.config.AggregateConfigProvider;
28
 import com.dmdirc.interfaces.config.AggregateConfigProvider;
35
 /**
35
 /**
36
  * This class links DCC objects to a window.
36
  * This class links DCC objects to a window.
37
  */
37
  */
38
-public abstract class DCCFrameContainer extends WritableFrameContainer {
38
+public abstract class DCCFrameContainer extends FrameContainer {
39
 
39
 
40
     /** The Window we're using. */
40
     /** The Window we're using. */
41
     private boolean windowClosing = false;
41
     private boolean windowClosing = false;
61
             final TabCompleterFactory tabCompleterFactory,
61
             final TabCompleterFactory tabCompleterFactory,
62
             final URLBuilder urlBuilder,
62
             final URLBuilder urlBuilder,
63
             final Collection<String> components) {
63
             final Collection<String> components) {
64
-        super(icon, title, title, configManager, parser,
64
+        super(icon, title, title, configManager, urlBuilder, parser,
65
                 tabCompleterFactory.getTabCompleter(configManager),
65
                 tabCompleterFactory.getTabCompleter(configManager),
66
-                messageSinkManager, urlBuilder,
66
+                messageSinkManager,
67
                 components);
67
                 components);
68
     }
68
     }
69
 
69
 

+ 2
- 6
src/com/dmdirc/addons/debug/commands/Time.java Näytä tiedosto

23
 package com.dmdirc.addons.debug.commands;
23
 package com.dmdirc.addons.debug.commands;
24
 
24
 
25
 import com.dmdirc.FrameContainer;
25
 import com.dmdirc.FrameContainer;
26
-import com.dmdirc.WritableFrameContainer;
27
 import com.dmdirc.addons.debug.Debug;
26
 import com.dmdirc.addons.debug.Debug;
28
 import com.dmdirc.addons.debug.DebugCommand;
27
 import com.dmdirc.addons.debug.DebugCommand;
29
 import com.dmdirc.commandparser.CommandArguments;
28
 import com.dmdirc.commandparser.CommandArguments;
70
      * Facilitates timing of a command.
69
      * Facilitates timing of a command.
71
      *
70
      *
72
      * @param origin The origin of the command
71
      * @param origin The origin of the command
73
-     * @param window The window to be passed on to the timed command, if any
74
      * @param args   The arguments that were passed to the command
72
      * @param args   The arguments that were passed to the command
75
      */
73
      */
76
     private void doTime(final FrameContainer origin,
74
     private void doTime(final FrameContainer origin,
80
             return;
78
             return;
81
         }
79
         }
82
 
80
 
83
-        if (origin instanceof WritableFrameContainer) {
84
-            final WritableFrameContainer container = (WritableFrameContainer) origin;
81
+        if (origin.isWritable()) {
85
             final long start = System.currentTimeMillis();
82
             final long start = System.currentTimeMillis();
86
-            container.getCommandParser().parseCommand(origin,
87
-                    args.getArgumentsAsString(0));
83
+            origin.getCommandParser().parseCommand(origin, args.getArgumentsAsString(0));
88
             final long end = System.currentTimeMillis();
84
             final long end = System.currentTimeMillis();
89
             sendLine(origin, args.isSilent(), FORMAT_OUTPUT,
85
             sendLine(origin, args.isSilent(), FORMAT_OUTPUT,
90
                     "Command executed in " + (end - start) + " milliseconds.");
86
                     "Command executed in " + (end - start) + " milliseconds.");

+ 5
- 6
src/com/dmdirc/addons/nowplaying/NowPlayingCommand.java Näytä tiedosto

24
 
24
 
25
 import com.dmdirc.ClientModule.GlobalConfig;
25
 import com.dmdirc.ClientModule.GlobalConfig;
26
 import com.dmdirc.FrameContainer;
26
 import com.dmdirc.FrameContainer;
27
-import com.dmdirc.WritableFrameContainer;
28
 import com.dmdirc.commandparser.BaseCommandInfo;
27
 import com.dmdirc.commandparser.BaseCommandInfo;
29
 import com.dmdirc.commandparser.CommandArguments;
28
 import com.dmdirc.commandparser.CommandArguments;
30
 import com.dmdirc.commandparser.CommandType;
29
 import com.dmdirc.commandparser.CommandType;
83
     @Override
82
     @Override
84
     public void execute(final FrameContainer origin,
83
     public void execute(final FrameContainer origin,
85
             final CommandArguments args, final CommandContext context) {
84
             final CommandArguments args, final CommandContext context) {
86
-        final WritableFrameContainer target = ((ChatCommandContext) context).getChat();
87
-        if (args.getArguments().length > 0 && args.getArguments()[0]
88
-                .equalsIgnoreCase("--sources")) {
85
+        final FrameContainer target = ((ChatCommandContext) context).getChat();
86
+        if (args.getArguments().length > 0
87
+                && args.getArguments()[0].equalsIgnoreCase("--sources")) {
89
             doSourceList(origin, args.isSilent(), args.getArgumentsAsString(1));
88
             doSourceList(origin, args.isSilent(), args.getArgumentsAsString(1));
90
-        } else if (args.getArguments().length > 0 && args.getArguments()[0]
91
-                .equalsIgnoreCase("--source")) {
89
+        } else if (args.getArguments().length > 0
90
+                && args.getArguments()[0].equalsIgnoreCase("--source")) {
92
             if (args.getArguments().length > 1) {
91
             if (args.getArguments().length > 1) {
93
                 final String sourceName = args.getArguments()[1];
92
                 final String sourceName = args.getArguments()[1];
94
                 final MediaSource source = manager.getSource(sourceName);
93
                 final MediaSource source = manager.getSource(sourceName);

+ 6
- 6
src/com/dmdirc/addons/redirect/FakeWriteableFrameContainer.java Näytä tiedosto

22
 
22
 
23
 package com.dmdirc.addons.redirect;
23
 package com.dmdirc.addons.redirect;
24
 
24
 
25
-import com.dmdirc.WritableFrameContainer;
25
+import com.dmdirc.FrameContainer;
26
 import com.dmdirc.interfaces.Connection;
26
 import com.dmdirc.interfaces.Connection;
27
 import com.dmdirc.messages.MessageSinkManager;
27
 import com.dmdirc.messages.MessageSinkManager;
28
 import com.dmdirc.ui.messages.Formatter;
28
 import com.dmdirc.ui.messages.Formatter;
34
 /**
34
 /**
35
  * Implements a fake input window, which sends echoed text to the specified chat window instead.
35
  * Implements a fake input window, which sends echoed text to the specified chat window instead.
36
  */
36
  */
37
-public class FakeWriteableFrameContainer extends WritableFrameContainer {
37
+public class FakeWriteableFrameContainer extends FrameContainer {
38
 
38
 
39
     /** The target for this window. */
39
     /** The target for this window. */
40
-    private final WritableFrameContainer target;
40
+    private final FrameContainer target;
41
 
41
 
42
     /**
42
     /**
43
      * Creates a new instance of FakeInputWindow.
43
      * Creates a new instance of FakeInputWindow.
47
      * @param urlBuilder         The URL builder to use when finding icons.
47
      * @param urlBuilder         The URL builder to use when finding icons.
48
      */
48
      */
49
     public FakeWriteableFrameContainer(
49
     public FakeWriteableFrameContainer(
50
-            final WritableFrameContainer target,
50
+            final FrameContainer target,
51
             final MessageSinkManager messageSinkManager,
51
             final MessageSinkManager messageSinkManager,
52
             final URLBuilder urlBuilder) {
52
             final URLBuilder urlBuilder) {
53
         super(target.getIcon(), target.getName(), target.getTitle(),
53
         super(target.getIcon(), target.getName(), target.getTitle(),
54
-                target.getConfigManager(), target.getCommandParser(),
54
+                target.getConfigManager(), urlBuilder, target.getCommandParser(),
55
                 target.getTabCompleter(), messageSinkManager,
55
                 target.getTabCompleter(), messageSinkManager,
56
-                urlBuilder, Collections.<String>emptyList());
56
+                Collections.<String>emptyList());
57
         this.target = target;
57
         this.target = target;
58
     }
58
     }
59
 
59
 

+ 1
- 2
src/com/dmdirc/addons/redirect/RedirectCommand.java Näytä tiedosto

23
 package com.dmdirc.addons.redirect;
23
 package com.dmdirc.addons.redirect;
24
 
24
 
25
 import com.dmdirc.FrameContainer;
25
 import com.dmdirc.FrameContainer;
26
-import com.dmdirc.WritableFrameContainer;
27
 import com.dmdirc.commandparser.BaseCommandInfo;
26
 import com.dmdirc.commandparser.BaseCommandInfo;
28
 import com.dmdirc.commandparser.CommandArguments;
27
 import com.dmdirc.commandparser.CommandArguments;
29
 import com.dmdirc.commandparser.CommandType;
28
 import com.dmdirc.commandparser.CommandType;
75
     @Override
74
     @Override
76
     public void execute(final FrameContainer origin,
75
     public void execute(final FrameContainer origin,
77
             final CommandArguments args, final CommandContext context) {
76
             final CommandArguments args, final CommandContext context) {
78
-        final WritableFrameContainer target = ((ChatCommandContext) context).getChat();
77
+        final FrameContainer target = ((ChatCommandContext) context).getChat();
79
         target.getCommandParser().parseCommand(new FakeWriteableFrameContainer(
78
         target.getCommandParser().parseCommand(new FakeWriteableFrameContainer(
80
                 target, messageSinkManager, urlBuilder), args.getArgumentsAsString());
79
                 target, messageSinkManager, urlBuilder), args.getArgumentsAsString());
81
     }
80
     }

+ 3
- 3
src/com/dmdirc/addons/tabcompletion_bash/BashStyle.java Näytä tiedosto

22
 
22
 
23
 package com.dmdirc.addons.tabcompletion_bash;
23
 package com.dmdirc.addons.tabcompletion_bash;
24
 
24
 
25
-import com.dmdirc.WritableFrameContainer;
25
+import com.dmdirc.FrameContainer;
26
 import com.dmdirc.ui.input.AdditionalTabTargets;
26
 import com.dmdirc.ui.input.AdditionalTabTargets;
27
 import com.dmdirc.ui.input.TabCompleter;
27
 import com.dmdirc.ui.input.TabCompleter;
28
 import com.dmdirc.ui.input.TabCompleterResult;
28
 import com.dmdirc.ui.input.TabCompleterResult;
42
     /** The tab completer that we use. */
42
     /** The tab completer that we use. */
43
     protected final TabCompleter tabCompleter;
43
     protected final TabCompleter tabCompleter;
44
     /** The input window that we use. */
44
     /** The input window that we use. */
45
-    protected final WritableFrameContainer window;
45
+    protected final FrameContainer window;
46
 
46
 
47
     /**
47
     /**
48
      * Creates a new Bash-style tab completer.
48
      * Creates a new Bash-style tab completer.
50
      * @param completer The tab completer this style is for
50
      * @param completer The tab completer this style is for
51
      * @param window    The window this tab style is for
51
      * @param window    The window this tab style is for
52
      */
52
      */
53
-    public BashStyle(final TabCompleter completer, final WritableFrameContainer window) {
53
+    public BashStyle(final TabCompleter completer, final FrameContainer window) {
54
         this.tabCompleter = completer;
54
         this.tabCompleter = completer;
55
         this.window = window;
55
         this.window = window;
56
     }
56
     }

+ 2
- 2
src/com/dmdirc/addons/tabcompletion_bash/BashStylePlugin.java Näytä tiedosto

22
 
22
 
23
 package com.dmdirc.addons.tabcompletion_bash;
23
 package com.dmdirc.addons.tabcompletion_bash;
24
 
24
 
25
-import com.dmdirc.WritableFrameContainer;
25
+import com.dmdirc.FrameContainer;
26
 import com.dmdirc.plugins.Exported;
26
 import com.dmdirc.plugins.Exported;
27
 import com.dmdirc.plugins.implementations.BasePlugin;
27
 import com.dmdirc.plugins.implementations.BasePlugin;
28
 import com.dmdirc.ui.input.TabCompleter;
28
 import com.dmdirc.ui.input.TabCompleter;
43
      */
43
      */
44
     @Exported
44
     @Exported
45
     public TabCompletionStyle getCompletionStyle(final TabCompleter completer,
45
     public TabCompletionStyle getCompletionStyle(final TabCompleter completer,
46
-            final WritableFrameContainer window) {
46
+            final FrameContainer window) {
47
         return new BashStyle(completer, window);
47
         return new BashStyle(completer, window);
48
     }
48
     }
49
 
49
 

+ 4
- 4
src/com/dmdirc/addons/tabcompletion_mirc/MircStyle.java Näytä tiedosto

23
 package com.dmdirc.addons.tabcompletion_mirc;
23
 package com.dmdirc.addons.tabcompletion_mirc;
24
 
24
 
25
 import com.dmdirc.Channel;
25
 import com.dmdirc.Channel;
26
-import com.dmdirc.WritableFrameContainer;
26
+import com.dmdirc.FrameContainer;
27
 import com.dmdirc.ui.input.AdditionalTabTargets;
27
 import com.dmdirc.ui.input.AdditionalTabTargets;
28
 import com.dmdirc.ui.input.TabCompleter;
28
 import com.dmdirc.ui.input.TabCompleter;
29
 import com.dmdirc.ui.input.TabCompleterResult;
29
 import com.dmdirc.ui.input.TabCompleterResult;
42
     /** The tab completer that we use. */
42
     /** The tab completer that we use. */
43
     protected final TabCompleter tabCompleter;
43
     protected final TabCompleter tabCompleter;
44
     /** The input window that we use. */
44
     /** The input window that we use. */
45
-    protected final WritableFrameContainer window;
45
+    protected final FrameContainer window;
46
 
46
 
47
     /**
47
     /**
48
      * Creates a new mIRC-style tab completer.
48
      * Creates a new mIRC-style tab completer.
50
      * @param completer The tab completer this style is for
50
      * @param completer The tab completer this style is for
51
      * @param window    The window this tab style is for
51
      * @param window    The window this tab style is for
52
      */
52
      */
53
-    public MircStyle(final TabCompleter completer, final WritableFrameContainer window) {
53
+    public MircStyle(final TabCompleter completer, final FrameContainer window) {
54
         this.tabCompleter = completer;
54
         this.tabCompleter = completer;
55
         this.window = window;
55
         this.window = window;
56
     }
56
     }
61
             final AdditionalTabTargets additional) {
61
             final AdditionalTabTargets additional) {
62
 
62
 
63
         final String word = original.substring(start, end);
63
         final String word = original.substring(start, end);
64
-        String target = "";
64
+        final String target;
65
         if (word.equals(lastWord)) {
65
         if (word.equals(lastWord)) {
66
             final TabCompleterResult res = tabCompleter.complete(tabString, additional);
66
             final TabCompleterResult res = tabCompleter.complete(tabString, additional);
67
             Collections.sort(res.getResults(), String.CASE_INSENSITIVE_ORDER);
67
             Collections.sort(res.getResults(), String.CASE_INSENSITIVE_ORDER);

+ 2
- 2
src/com/dmdirc/addons/tabcompletion_mirc/MircStylePlugin.java Näytä tiedosto

22
 
22
 
23
 package com.dmdirc.addons.tabcompletion_mirc;
23
 package com.dmdirc.addons.tabcompletion_mirc;
24
 
24
 
25
-import com.dmdirc.WritableFrameContainer;
25
+import com.dmdirc.FrameContainer;
26
 import com.dmdirc.plugins.Exported;
26
 import com.dmdirc.plugins.Exported;
27
 import com.dmdirc.plugins.implementations.BasePlugin;
27
 import com.dmdirc.plugins.implementations.BasePlugin;
28
 import com.dmdirc.ui.input.TabCompleter;
28
 import com.dmdirc.ui.input.TabCompleter;
43
      */
43
      */
44
     @Exported
44
     @Exported
45
     public TabCompletionStyle getCompletionStyle(final TabCompleter completer,
45
     public TabCompletionStyle getCompletionStyle(final TabCompleter completer,
46
-            final WritableFrameContainer window) {
46
+            final FrameContainer window) {
47
         return new MircStyle(completer, window);
47
         return new MircStyle(completer, window);
48
     }
48
     }
49
 
49
 

+ 1
- 2
src/com/dmdirc/addons/time/TimedCommand.java Näytä tiedosto

23
 package com.dmdirc.addons.time;
23
 package com.dmdirc.addons.time;
24
 
24
 
25
 import com.dmdirc.FrameContainer;
25
 import com.dmdirc.FrameContainer;
26
-import com.dmdirc.WritableFrameContainer;
27
 import com.dmdirc.commandparser.parsers.CommandParser;
26
 import com.dmdirc.commandparser.parsers.CommandParser;
28
 import com.dmdirc.commandparser.parsers.GlobalCommandParser;
27
 import com.dmdirc.commandparser.parsers.GlobalCommandParser;
29
 import com.dmdirc.interfaces.CommandController;
28
 import com.dmdirc.interfaces.CommandController;
104
         if (origin == null) {
103
         if (origin == null) {
105
             parser = new GlobalCommandParser(origin.getConfigManager(), commandController);
104
             parser = new GlobalCommandParser(origin.getConfigManager(), commandController);
106
         } else {
105
         } else {
107
-            parser = ((WritableFrameContainer) origin).getCommandParser();
106
+            parser = origin.getCommandParser();
108
         }
107
         }
109
 
108
 
110
         parser.parseCommand(origin, command);
109
         parser.parseCommand(origin, command);

+ 1
- 3
src/com/dmdirc/addons/ui_swing/SwingWindowFactory.java Näytä tiedosto

25
 import com.dmdirc.Channel;
25
 import com.dmdirc.Channel;
26
 import com.dmdirc.FrameContainer;
26
 import com.dmdirc.FrameContainer;
27
 import com.dmdirc.Server;
27
 import com.dmdirc.Server;
28
-import com.dmdirc.WritableFrameContainer;
29
 import com.dmdirc.addons.ui_swing.components.frames.ChannelFrameFactory;
28
 import com.dmdirc.addons.ui_swing.components.frames.ChannelFrameFactory;
30
 import com.dmdirc.addons.ui_swing.components.frames.CustomFrameFactory;
29
 import com.dmdirc.addons.ui_swing.components.frames.CustomFrameFactory;
31
 import com.dmdirc.addons.ui_swing.components.frames.CustomInputFrameFactory;
30
 import com.dmdirc.addons.ui_swing.components.frames.CustomInputFrameFactory;
104
                 new WindowProvider() {
103
                 new WindowProvider() {
105
                     @Override
104
                     @Override
106
                     public TextFrame getWindow(final FrameContainer container) {
105
                     public TextFrame getWindow(final FrameContainer container) {
107
-                        return customInputFrameFactory.getCustomInputFrame(
108
-                                (WritableFrameContainer) container);
106
+                        return customInputFrameFactory.getCustomInputFrame(container);
109
                     }
107
                     }
110
                 });
108
                 });
111
         registerImplementation(
109
         registerImplementation(

+ 1
- 2
src/com/dmdirc/addons/ui_swing/components/frames/ComponentInputFrame.java Näytä tiedosto

23
 package com.dmdirc.addons.ui_swing.components.frames;
23
 package com.dmdirc.addons.ui_swing.components.frames;
24
 
24
 
25
 import com.dmdirc.FrameContainer;
25
 import com.dmdirc.FrameContainer;
26
-import com.dmdirc.WritableFrameContainer;
27
 import com.dmdirc.addons.ui_swing.SwingController;
26
 import com.dmdirc.addons.ui_swing.SwingController;
28
 import com.dmdirc.addons.ui_swing.components.inputfields.SwingInputField;
27
 import com.dmdirc.addons.ui_swing.components.inputfields.SwingInputField;
29
 import com.dmdirc.commandparser.PopupType;
28
 import com.dmdirc.commandparser.PopupType;
61
             final TextFrameDependencies deps,
60
             final TextFrameDependencies deps,
62
             final Provider<SwingInputField> inputFieldProvider,
61
             final Provider<SwingInputField> inputFieldProvider,
63
             final URLBuilder urlBuilder,
62
             final URLBuilder urlBuilder,
64
-            final WritableFrameContainer owner) {
63
+            final FrameContainer owner) {
65
         super(deps, inputFieldProvider, owner);
64
         super(deps, inputFieldProvider, owner);
66
         this.controller = deps.controller;
65
         this.controller = deps.controller;
67
         this.urlBuilder = urlBuilder;
66
         this.urlBuilder = urlBuilder;

+ 2
- 2
src/com/dmdirc/addons/ui_swing/components/frames/CustomInputFrame.java Näytä tiedosto

22
 
22
 
23
 package com.dmdirc.addons.ui_swing.components.frames;
23
 package com.dmdirc.addons.ui_swing.components.frames;
24
 
24
 
25
-import com.dmdirc.WritableFrameContainer;
25
+import com.dmdirc.FrameContainer;
26
 import com.dmdirc.addons.ui_swing.components.inputfields.SwingInputField;
26
 import com.dmdirc.addons.ui_swing.components.inputfields.SwingInputField;
27
 import com.dmdirc.commandparser.PopupType;
27
 import com.dmdirc.commandparser.PopupType;
28
 import com.dmdirc.util.annotations.factory.Factory;
28
 import com.dmdirc.util.annotations.factory.Factory;
52
     public CustomInputFrame(
52
     public CustomInputFrame(
53
             final TextFrameDependencies deps,
53
             final TextFrameDependencies deps,
54
             final Provider<SwingInputField> inputFieldProvider,
54
             final Provider<SwingInputField> inputFieldProvider,
55
-            @Unbound final WritableFrameContainer owner) {
55
+            @Unbound final FrameContainer owner) {
56
         super(deps, inputFieldProvider, owner);
56
         super(deps, inputFieldProvider, owner);
57
 
57
 
58
         initComponents();
58
         initComponents();

+ 3
- 16
src/com/dmdirc/addons/ui_swing/components/frames/InputTextFrame.java Näytä tiedosto

22
 
22
 
23
 package com.dmdirc.addons.ui_swing.components.frames;
23
 package com.dmdirc.addons.ui_swing.components.frames;
24
 
24
 
25
-import com.dmdirc.WritableFrameContainer;
25
+import com.dmdirc.FrameContainer;
26
 import com.dmdirc.addons.ui_swing.MainFrame;
26
 import com.dmdirc.addons.ui_swing.MainFrame;
27
 import com.dmdirc.addons.ui_swing.UIUtilities;
27
 import com.dmdirc.addons.ui_swing.UIUtilities;
28
 import com.dmdirc.addons.ui_swing.actions.CopyAction;
28
 import com.dmdirc.addons.ui_swing.actions.CopyAction;
112
     public InputTextFrame(
112
     public InputTextFrame(
113
             final TextFrameDependencies deps,
113
             final TextFrameDependencies deps,
114
             final Provider<SwingInputField> inputFieldProvider,
114
             final Provider<SwingInputField> inputFieldProvider,
115
-            final WritableFrameContainer owner) {
115
+            final FrameContainer owner) {
116
         super(owner, owner.getCommandParser(), deps);
116
         super(owner, owner.getCommandParser(), deps);
117
 
117
 
118
         this.config = owner.getConfigManager();
118
         this.config = owner.getConfigManager();
168
         inputHandler = new SwingInputHandler(pluginManager, inputField, commandController,
168
         inputHandler = new SwingInputHandler(pluginManager, inputField, commandController,
169
                 getContainer().getCommandParser(), getContainer(), eventBus);
169
                 getContainer().getCommandParser(), getContainer(), eventBus);
170
         inputHandler.addValidationListener(inputField);
170
         inputHandler.addValidationListener(inputField);
171
-        inputHandler.setTabCompleter(((WritableFrameContainer) frameParent).
172
-                getTabCompleter());
171
+        inputHandler.setTabCompleter(frameParent.getTabCompleter());
173
 
172
 
174
         getInputField().addMouseListener(this);
173
         getInputField().addMouseListener(this);
175
 
174
 
215
                 "ctrl V"), "paste");
214
                 "ctrl V"), "paste");
216
     }
215
     }
217
 
216
 
218
-    /**
219
-     * Returns the container associated with this frame.
220
-     *
221
-     * @return This frame's container.
222
-     */
223
-    @Override
224
-    @SuppressWarnings("unchecked")
225
-    public WritableFrameContainer getContainer() {
226
-        return (WritableFrameContainer) super.
227
-                getContainer();
228
-    }
229
-
230
     /**
217
     /**
231
      * Returns the input handler associated with this frame.
218
      * Returns the input handler associated with this frame.
232
      *
219
      *

+ 2
- 2
src/com/dmdirc/addons/ui_swing/components/inputfields/SwingInputHandler.java Näytä tiedosto

22
 
22
 
23
 package com.dmdirc.addons.ui_swing.components.inputfields;
23
 package com.dmdirc.addons.ui_swing.components.inputfields;
24
 
24
 
25
-import com.dmdirc.WritableFrameContainer;
25
+import com.dmdirc.FrameContainer;
26
 import com.dmdirc.addons.ui_swing.Apple;
26
 import com.dmdirc.addons.ui_swing.Apple;
27
 import com.dmdirc.addons.ui_swing.UIUtilities;
27
 import com.dmdirc.addons.ui_swing.UIUtilities;
28
 import com.dmdirc.addons.ui_swing.components.LoggingSwingWorker;
28
 import com.dmdirc.addons.ui_swing.components.LoggingSwingWorker;
66
             final InputField target,
66
             final InputField target,
67
             final CommandController commandController,
67
             final CommandController commandController,
68
             final CommandParser commandParser,
68
             final CommandParser commandParser,
69
-            final WritableFrameContainer parentWindow,
69
+            final FrameContainer parentWindow,
70
             final EventBus eventBus) {
70
             final EventBus eventBus) {
71
         super(serviceManager, target, commandController, commandParser, parentWindow, eventBus);
71
         super(serviceManager, target, commandController, commandParser, parentWindow, eventBus);
72
     }
72
     }

+ 2
- 2
src/com/dmdirc/addons/ui_web/uicomponents/WebInputHandler.java Näytä tiedosto

22
 
22
 
23
 package com.dmdirc.addons.ui_web.uicomponents;
23
 package com.dmdirc.addons.ui_web.uicomponents;
24
 
24
 
25
-import com.dmdirc.WritableFrameContainer;
25
+import com.dmdirc.FrameContainer;
26
 import com.dmdirc.commandparser.parsers.CommandParser;
26
 import com.dmdirc.commandparser.parsers.CommandParser;
27
 import com.dmdirc.interfaces.CommandController;
27
 import com.dmdirc.interfaces.CommandController;
28
 import com.dmdirc.interfaces.ui.InputField;
28
 import com.dmdirc.interfaces.ui.InputField;
42
             final InputField target,
42
             final InputField target,
43
             final CommandController commandController,
43
             final CommandController commandController,
44
             final CommandParser commandParser,
44
             final CommandParser commandParser,
45
-            final WritableFrameContainer parentWindow,
45
+            final FrameContainer parentWindow,
46
             final EventBus eventBus) {
46
             final EventBus eventBus) {
47
         super(serviceManager, target, commandController, commandParser, parentWindow, eventBus);
47
         super(serviceManager, target, commandController, commandParser, parentWindow, eventBus);
48
     }
48
     }

+ 3
- 10
src/com/dmdirc/addons/ui_web/uicomponents/WebInputWindow.java Näytä tiedosto

22
 
22
 
23
 package com.dmdirc.addons.ui_web.uicomponents;
23
 package com.dmdirc.addons.ui_web.uicomponents;
24
 
24
 
25
-import com.dmdirc.WritableFrameContainer;
25
+import com.dmdirc.FrameContainer;
26
 import com.dmdirc.addons.ui_web.Client;
26
 import com.dmdirc.addons.ui_web.Client;
27
 import com.dmdirc.addons.ui_web.WebInterfaceUI;
27
 import com.dmdirc.addons.ui_web.WebInterfaceUI;
28
 import com.dmdirc.commandparser.parsers.CommandParser;
28
 import com.dmdirc.commandparser.parsers.CommandParser;
37
  */
37
  */
38
 public class WebInputWindow extends WebWindow implements InputWindow {
38
 public class WebInputWindow extends WebWindow implements InputWindow {
39
 
39
 
40
-    private final WritableFrameContainer container;
41
     private final CommandParser commandparser;
40
     private final CommandParser commandparser;
42
     private final WebInputHandler inputHandler;
41
     private final WebInputHandler inputHandler;
43
     private final Map<Client, WebInputHandler> inputHandlers = new HashMap<>();
42
     private final Map<Client, WebInputHandler> inputHandlers = new HashMap<>();
44
     private final WebInterfaceUI controller;
43
     private final WebInterfaceUI controller;
45
 
44
 
46
     public WebInputWindow(final WebInterfaceUI controller,
45
     public WebInputWindow(final WebInterfaceUI controller,
47
-            final WritableFrameContainer parent, final String id) {
46
+            final FrameContainer parent, final String id) {
48
         super(controller, parent, id);
47
         super(controller, parent, id);
49
-        this.container = parent;
50
         this.commandparser = parent.getCommandParser();
48
         this.commandparser = parent.getCommandParser();
51
         this.controller = controller;
49
         this.controller = controller;
52
         this.inputHandler = new WebInputHandler(controller.getPluginManager(),
50
         this.inputHandler = new WebInputHandler(controller.getPluginManager(),
53
                 new WebInputField(), controller.getCommandController(),
51
                 new WebInputField(), controller.getCommandController(),
54
-                commandparser, getContainer(), controller.getEventBus());
55
-    }
56
-
57
-    @Override
58
-    public WritableFrameContainer getContainer() {
59
-        return container;
52
+                commandparser, parent, controller.getEventBus());
60
     }
53
     }
61
 
54
 
62
     @Override
55
     @Override

+ 1
- 0
src/com/dmdirc/addons/ui_web/uicomponents/WebWindow.java Näytä tiedosto

83
         return id;
83
         return id;
84
     }
84
     }
85
 
85
 
86
+    @Override
86
     public FrameContainer getContainer() {
87
     public FrameContainer getContainer() {
87
         return container;
88
         return container;
88
     }
89
     }

+ 3
- 2
test/com/dmdirc/addons/conditional_execute/ConditionalExecuteCommandTest.java Näytä tiedosto

22
 
22
 
23
 package com.dmdirc.addons.conditional_execute;
23
 package com.dmdirc.addons.conditional_execute;
24
 
24
 
25
-import com.dmdirc.WritableFrameContainer;
25
+import com.dmdirc.FrameContainer;
26
 import com.dmdirc.commandparser.CommandArguments;
26
 import com.dmdirc.commandparser.CommandArguments;
27
 import com.dmdirc.commandparser.commands.context.CommandContext;
27
 import com.dmdirc.commandparser.commands.context.CommandContext;
28
 import com.dmdirc.commandparser.parsers.CommandParser;
28
 import com.dmdirc.commandparser.parsers.CommandParser;
47
 
47
 
48
     @Mock private CommandController commandController;
48
     @Mock private CommandController commandController;
49
     @Mock private CommandParser commandParser;
49
     @Mock private CommandParser commandParser;
50
-    @Mock private WritableFrameContainer container;
50
+    @Mock private FrameContainer container;
51
     @Mock private CommandContext context;
51
     @Mock private CommandContext context;
52
     private ConditionalExecuteCommand command;
52
     private ConditionalExecuteCommand command;
53
 
53
 
56
         when(commandController.getCommandChar()).thenReturn('/');
56
         when(commandController.getCommandChar()).thenReturn('/');
57
         when(commandController.getSilenceChar()).thenReturn('/');
57
         when(commandController.getSilenceChar()).thenReturn('/');
58
         when(container.getCommandParser()).thenReturn(commandParser);
58
         when(container.getCommandParser()).thenReturn(commandParser);
59
+        when(container.isWritable()).thenReturn(true);
59
 
60
 
60
         command = new ConditionalExecuteCommand(commandController);
61
         command = new ConditionalExecuteCommand(commandController);
61
     }
62
     }

+ 9
- 3
test/com/dmdirc/addons/redirect/RedirectCommandTest.java Näytä tiedosto

24
 
24
 
25
 import com.dmdirc.FrameContainer;
25
 import com.dmdirc.FrameContainer;
26
 import com.dmdirc.MessageTarget;
26
 import com.dmdirc.MessageTarget;
27
-import com.dmdirc.WritableFrameContainer;
28
 import com.dmdirc.commandparser.CommandArguments;
27
 import com.dmdirc.commandparser.CommandArguments;
29
 import com.dmdirc.commandparser.commands.context.ChatCommandContext;
28
 import com.dmdirc.commandparser.commands.context.ChatCommandContext;
30
 import com.dmdirc.commandparser.commands.global.Echo;
29
 import com.dmdirc.commandparser.commands.global.Echo;
34
 import com.dmdirc.interfaces.ui.InputWindow;
33
 import com.dmdirc.interfaces.ui.InputWindow;
35
 import com.dmdirc.messages.MessageSinkManager;
34
 import com.dmdirc.messages.MessageSinkManager;
36
 import com.dmdirc.ui.WindowManager;
35
 import com.dmdirc.ui.WindowManager;
36
+import com.dmdirc.ui.input.TabCompleter;
37
 import com.dmdirc.util.URLBuilder;
37
 import com.dmdirc.util.URLBuilder;
38
 
38
 
39
 import org.junit.Before;
39
 import org.junit.Before;
44
 import org.mockito.runners.MockitoJUnitRunner;
44
 import org.mockito.runners.MockitoJUnitRunner;
45
 import org.mockito.stubbing.Answer;
45
 import org.mockito.stubbing.Answer;
46
 
46
 
47
-import static org.mockito.Mockito.*;
47
+import static org.mockito.Matchers.any;
48
+import static org.mockito.Matchers.eq;
49
+import static org.mockito.Mockito.doAnswer;
50
+import static org.mockito.Mockito.verify;
51
+import static org.mockito.Mockito.when;
48
 
52
 
49
 @RunWith(MockitoJUnitRunner.class)
53
 @RunWith(MockitoJUnitRunner.class)
50
 public class RedirectCommandTest {
54
 public class RedirectCommandTest {
52
     @Mock private MessageTarget target;
56
     @Mock private MessageTarget target;
53
     @Mock private InputWindow inputWindow;
57
     @Mock private InputWindow inputWindow;
54
     @Mock private CommandController commandController;
58
     @Mock private CommandController commandController;
55
-    @Mock private WritableFrameContainer frameContainer;
59
+    @Mock private FrameContainer frameContainer;
56
     @Mock private AggregateConfigProvider configProvider;
60
     @Mock private AggregateConfigProvider configProvider;
57
     @Mock private CommandParser commandParser;
61
     @Mock private CommandParser commandParser;
62
+    @Mock private TabCompleter tabCompleter;
58
     @Mock private MessageSinkManager messageSinkManager;
63
     @Mock private MessageSinkManager messageSinkManager;
59
     @Mock private WindowManager windowManager;
64
     @Mock private WindowManager windowManager;
60
     @Mock private URLBuilder urlBuilder;
65
     @Mock private URLBuilder urlBuilder;
66
         when(inputWindow.getContainer()).thenReturn(frameContainer);
71
         when(inputWindow.getContainer()).thenReturn(frameContainer);
67
         when(target.getConfigManager()).thenReturn(configProvider);
72
         when(target.getConfigManager()).thenReturn(configProvider);
68
         when(target.getCommandParser()).thenReturn(commandParser);
73
         when(target.getCommandParser()).thenReturn(commandParser);
74
+        when(target.getTabCompleter()).thenReturn(tabCompleter);
69
         when(configProvider.hasOptionString("formatter", "commandOutput")).thenReturn(true);
75
         when(configProvider.hasOptionString("formatter", "commandOutput")).thenReturn(true);
70
         when(configProvider.getOption("formatter", "commandOutput")).thenReturn("%1$s");
76
         when(configProvider.getOption("formatter", "commandOutput")).thenReturn("%1$s");
71
         doAnswer(new Answer<Void>() {
77
         doAnswer(new Answer<Void>() {

Loading…
Peruuta
Tallenna