Browse Source

Remove usages of FrameContainer window methods.

These will be going away shortly.
pull/455/head
Chris Smith 8 years ago
parent
commit
b35d87089b

+ 2
- 1
dcc/src/com/dmdirc/addons/dcc/DCCManager.java View File

@@ -698,7 +698,8 @@ public class DCCManager {
698 698
      * Create the container window.
699 699
      */
700 700
     protected void createContainer() {
701
-        container = new PlaceholderContainer(this, config, backBufferFactory, mainWindow, eventBus);
701
+        container = new PlaceholderContainer(this, config, backBufferFactory, mainWindow,
702
+                windowManager, eventBus);
702 703
         windowManager.addWindow(container);
703 704
     }
704 705
 

+ 6
- 2
dcc/src/com/dmdirc/addons/dcc/PlaceholderContainer.java View File

@@ -28,6 +28,7 @@ import com.dmdirc.addons.ui_swing.dialogs.StandardQuestionDialog;
28 28
 import com.dmdirc.interfaces.Connection;
29 29
 import com.dmdirc.interfaces.WindowModel;
30 30
 import com.dmdirc.interfaces.config.AggregateConfigProvider;
31
+import com.dmdirc.ui.WindowManager;
31 32
 import com.dmdirc.ui.messages.BackBufferFactory;
32 33
 
33 34
 import java.awt.Dialog.ModalityType;
@@ -44,6 +45,7 @@ public class PlaceholderContainer extends FrameContainer {
44 45
     private final DCCManager plugin;
45 46
     /** Window that will own new dialogs. */
46 47
     private final Window parentWindow;
48
+    private final WindowManager windowManager;
47 49
 
48 50
     /**
49 51
      * Creates a placeholder DCC frame.
@@ -58,18 +60,20 @@ public class PlaceholderContainer extends FrameContainer {
58 60
             final AggregateConfigProvider config,
59 61
             final BackBufferFactory backBufferFactory,
60 62
             final Window parentWindow,
63
+            final WindowManager windowManager,
61 64
             final DMDircMBassador eventBus) {
62 65
         super(null, "dcc", "DCCs", "DCCs", config, backBufferFactory, eventBus,
63 66
                 Collections.singletonList("com.dmdirc.addons.dcc.ui.PlaceholderPanel"));
64 67
         this.plugin = plugin;
65 68
         this.parentWindow = parentWindow;
69
+        this.windowManager = windowManager;
66 70
         initBackBuffer();
67 71
     }
68 72
 
69 73
     @Override
70 74
     public void close() {
71 75
         int dccs = 0;
72
-        for (WindowModel window : getChildren()) {
76
+        for (WindowModel window : windowManager.getChildren(this)) {
73 77
             if (window instanceof TransferContainer
74 78
                     && ((TransferContainer) window).getDCC().isActive()
75 79
                     || window instanceof ChatContainer
@@ -99,7 +103,7 @@ public class PlaceholderContainer extends FrameContainer {
99 103
     public void removeChild(final WindowModel child) {
100 104
         super.removeChild(child);
101 105
 
102
-        if (getChildren().isEmpty()) {
106
+        if (windowManager.getChildren(this).isEmpty()) {
103 107
             close();
104 108
         }
105 109
     }

+ 3
- 1
logging/src/com/dmdirc/addons/logging/HistoryWindow.java View File

@@ -49,6 +49,7 @@ import static com.dmdirc.util.LogUtils.USER_ERROR;
49 49
 public class HistoryWindow extends FrameContainer {
50 50
 
51 51
     private static final Logger LOG = LoggerFactory.getLogger(HistoryWindow.class);
52
+    private final Optional<Connection> connection;
52 53
     private final Path logFile;
53 54
     private final int numLines;
54 55
 
@@ -66,6 +67,7 @@ public class HistoryWindow extends FrameContainer {
66 67
                 eventBus, Collections.singletonList(WindowComponent.TEXTAREA.getIdentifier()));
67 68
         this.logFile = logFile;
68 69
         this.numLines = numLines;
70
+        this.connection = parent.getConnection();
69 71
 
70 72
         initBackBuffer();
71 73
         outputLoggingBackBuffer(parent.getConfigManager().getOptionInt("ui", "frameBufferSize"));
@@ -73,7 +75,7 @@ public class HistoryWindow extends FrameContainer {
73 75
 
74 76
     @Override
75 77
     public Optional<Connection> getConnection() {
76
-        return getParent().flatMap(WindowModel::getConnection);
78
+        return connection;
77 79
     }
78 80
 
79 81
     @VisibleForTesting

+ 1
- 1
ui_swing/src/com/dmdirc/addons/ui_swing/framemanager/tree/TreeFrameManager.java View File

@@ -312,7 +312,7 @@ public class TreeFrameManager implements FrameManager, Serializable, ConfigChang
312 312
 
313 313
             for (WindowModel window : windowManager.getRootWindows()) {
314 314
                 addWindow(null, windowFactory.getSwingWindow(window));
315
-                final Collection<WindowModel> childWindows = window.getChildren();
315
+                final Collection<WindowModel> childWindows = windowManager.getChildren(window);
316 316
                 for (WindowModel childWindow : childWindows) {
317 317
                     addWindow(nodes.get(windowFactory.getSwingWindow(window)),
318 318
                             windowFactory.getSwingWindow(childWindow));

+ 4
- 2
ui_web2/src/com/dmdirc/addons/ui_web2/InitialStateProducer.java View File

@@ -45,9 +45,11 @@ public class InitialStateProducer {
45 45
     private final WindowManager windowManager;
46 46
 
47 47
     @Inject
48
-    public InitialStateProducer(final WindowManager windowManager) {
48
+    public InitialStateProducer(
49
+            final WindowManager windowManager,
50
+            final WindowModelSerialiser windowSerialiser) {
49 51
         serialiser = new GsonBuilder()
50
-                .registerTypeHierarchyAdapter(WindowModel.class, new WindowModelSerialiser())
52
+                .registerTypeHierarchyAdapter(WindowModel.class, windowSerialiser)
51 53
                 .registerTypeAdapter(BackBuffer.class, new BackBufferSerializer())
52 54
                 .create();
53 55
         this.windowManager = windowManager;

+ 11
- 1
ui_web2/src/com/dmdirc/addons/ui_web2/serialisers/WindowModelSerialiser.java View File

@@ -23,6 +23,7 @@
23 23
 package com.dmdirc.addons.ui_web2.serialisers;
24 24
 
25 25
 import com.dmdirc.interfaces.WindowModel;
26
+import com.dmdirc.ui.WindowManager;
26 27
 
27 28
 import com.google.gson.JsonElement;
28 29
 import com.google.gson.JsonObject;
@@ -31,11 +32,20 @@ import com.google.gson.JsonSerializer;
31 32
 
32 33
 import java.lang.reflect.Type;
33 34
 
35
+import javax.inject.Inject;
36
+
34 37
 /**
35 38
  * Serialises {@link WindowModel}s.
36 39
  */
37 40
 public class WindowModelSerialiser implements JsonSerializer<WindowModel> {
38 41
 
42
+    private final WindowManager windowManager;
43
+
44
+    @Inject
45
+    public WindowModelSerialiser(final WindowManager windowManager) {
46
+        this.windowManager = windowManager;
47
+    }
48
+
39 49
     @Override
40 50
     public JsonElement serialize(final WindowModel src, final Type typeOfSrc,
41 51
             final JsonSerializationContext context) {
@@ -44,7 +54,7 @@ public class WindowModelSerialiser implements JsonSerializer<WindowModel> {
44 54
         res.addProperty("icon", src.getIcon());
45 55
         res.addProperty("title", src.getTitle());
46 56
         res.addProperty("writable", src.isWritable());
47
-        res.add("children", context.serialize(src.getChildren()));
57
+        res.add("children", context.serialize(windowManager.getChildren(src)));
48 58
         res.add("components", context.serialize(src.getComponents()));
49 59
         res.add("backbuffer", context.serialize(src.getBackBuffer()));
50 60
         return res;

Loading…
Cancel
Save