Bläddra i källkod

Raise events.

Should probably improve this to only raise an event when the
values change, but will do for now.
pull/311/head
Chris Smith 9 år sedan
förälder
incheckning
11a021e08f

+ 7
- 0
src/com/dmdirc/FrameContainer.java Visa fil

@@ -44,6 +44,7 @@ import com.dmdirc.ui.messages.BackBufferFactory;
44 44
 import com.dmdirc.ui.messages.Formatter;
45 45
 import com.dmdirc.ui.messages.IRCDocument;
46 46
 import com.dmdirc.ui.messages.Styliser;
47
+import com.dmdirc.ui.messages.UnreadStatusManager;
47 48
 import com.dmdirc.ui.messages.sink.MessageSinkManager;
48 49
 import com.dmdirc.util.ChildEventBusManager;
49 50
 import com.dmdirc.util.URLBuilder;
@@ -96,6 +97,8 @@ public abstract class FrameContainer {
96 97
     private final DMDircMBassador eventBus;
97 98
     /** The icon manager to use for this container. */
98 99
     private final IconManager iconManager;
100
+    /** The manager handling this frame's unread status. */
101
+    private final UnreadStatusManager unreadStatusManager;
99 102
     /** Whether or not this container is writable. */
100 103
     private final boolean writable;
101 104
     /** The back buffer factory. */
@@ -152,6 +155,8 @@ public abstract class FrameContainer {
152 155
         eventBusManager = new ChildEventBusManager(eventBus);
153 156
         eventBusManager.connect();
154 157
         this.eventBus = eventBusManager.getChildBus();
158
+        this.unreadStatusManager = new UnreadStatusManager(this);
159
+        this.eventBus.subscribe(unreadStatusManager);
155 160
 
156 161
         setIcon(icon);
157 162
     }
@@ -188,6 +193,8 @@ public abstract class FrameContainer {
188 193
         eventBusManager = new ChildEventBusManager(eventBus);
189 194
         eventBusManager.connect();
190 195
         this.eventBus = eventBusManager.getChildBus();
196
+        this.unreadStatusManager = new UnreadStatusManager(this);
197
+        this.eventBus.subscribe(unreadStatusManager);
191 198
 
192 199
         setIcon(icon);
193 200
     }

+ 1
- 1
src/com/dmdirc/ui/messages/UnreadStatusManager.java Visa fil

@@ -44,7 +44,7 @@ public class UnreadStatusManager {
44 44
     private final DMDircMBassador eventBus;
45 45
     private final FrameContainer container;
46 46
     private int unreadLines;
47
-    private Optional<Colour> notificationColour;
47
+    private Optional<Colour> notificationColour = Optional.empty();
48 48
 
49 49
     private Colour miscellaneousColour = Colour.GREEN;
50 50
     private Colour messageColour = Colour.BLACK;

Laddar…
Avbryt
Spara