Browse Source

Create the status bar on the EDT.

Oopsy.

Change-Id: If51a37c429a479db795adb48636d76eb32391616
Reviewed-on: http://gerrit.dmdirc.com/3266
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Greg Holmes <greg@dmdirc.com>
changes/66/3266/3
Chris Smith 10 years ago
parent
commit
f1fc5cd0b4

+ 0
- 4
src/com/dmdirc/addons/ui_swing/components/statusbar/SwingStatusBar.java View File

33
 import java.awt.Component;
33
 import java.awt.Component;
34
 import java.util.Arrays;
34
 import java.util.Arrays;
35
 
35
 
36
-import javax.inject.Inject;
37
-import javax.inject.Singleton;
38
 import javax.swing.JPanel;
36
 import javax.swing.JPanel;
39
 import javax.swing.SwingUtilities;
37
 import javax.swing.SwingUtilities;
40
 import javax.swing.UIManager;
38
 import javax.swing.UIManager;
45
 import static com.dmdirc.addons.ui_swing.SwingPreconditions.checkOnEDT;
43
 import static com.dmdirc.addons.ui_swing.SwingPreconditions.checkOnEDT;
46
 
44
 
47
 /** Status bar, shows message and info on the GUI. */
45
 /** Status bar, shows message and info on the GUI. */
48
-@Singleton
49
 public class SwingStatusBar extends JPanel implements StatusBar {
46
 public class SwingStatusBar extends JPanel implements StatusBar {
50
 
47
 
51
     /**
48
     /**
76
      * @param updaterLabel The updater label to add to the status bar.
73
      * @param updaterLabel The updater label to add to the status bar.
77
      * @param messageLabel The message label to add to the status bar.
74
      * @param messageLabel The message label to add to the status bar.
78
      */
75
      */
79
-    @Inject
80
     public SwingStatusBar(
76
     public SwingStatusBar(
81
             final SwingController controller,
77
             final SwingController controller,
82
             final MainFrame mainFrame,
78
             final MainFrame mainFrame,

+ 22
- 1
src/com/dmdirc/addons/ui_swing/injection/SwingModule.java View File

41
 import com.dmdirc.addons.ui_swing.commands.ServerSettings;
41
 import com.dmdirc.addons.ui_swing.commands.ServerSettings;
42
 import com.dmdirc.addons.ui_swing.components.addonpanel.PluginPanel;
42
 import com.dmdirc.addons.ui_swing.components.addonpanel.PluginPanel;
43
 import com.dmdirc.addons.ui_swing.components.addonpanel.ThemePanel;
43
 import com.dmdirc.addons.ui_swing.components.addonpanel.ThemePanel;
44
+import com.dmdirc.addons.ui_swing.components.statusbar.InviteLabel;
45
+import com.dmdirc.addons.ui_swing.components.statusbar.MessageLabel;
46
+import com.dmdirc.addons.ui_swing.components.statusbar.SwingStatusBar;
47
+import com.dmdirc.addons.ui_swing.components.statusbar.UpdaterLabel;
44
 import com.dmdirc.addons.ui_swing.dialogs.prefs.URLConfigPanel;
48
 import com.dmdirc.addons.ui_swing.dialogs.prefs.URLConfigPanel;
45
 import com.dmdirc.addons.ui_swing.dialogs.prefs.UpdateConfigPanel;
49
 import com.dmdirc.addons.ui_swing.dialogs.prefs.UpdateConfigPanel;
46
 import com.dmdirc.config.prefs.PreferencesDialogModel;
50
 import com.dmdirc.config.prefs.PreferencesDialogModel;
120
             public MainFrame call() {
124
             public MainFrame call() {
121
                 return new MainFrame(
125
                 return new MainFrame(
122
                         apple,
126
                         apple,
123
-                        controller,
127
+                        swingController,
124
                         windowFactory,
128
                         windowFactory,
125
                         lifecycleController,
129
                         lifecycleController,
126
                         globalConfig,
130
                         globalConfig,
132
         });
136
         });
133
     }
137
     }
134
 
138
 
139
+    @Provides
140
+    @Singleton
141
+    public SwingStatusBar getSwingStatusBar(
142
+            final SwingController swingController,
143
+            final MainFrame mainFrame,
144
+            final InviteLabel inviteLabel,
145
+            final UpdaterLabel updaterLabel,
146
+            final MessageLabel messageLabel) {
147
+        return UIUtilities.invokeAndWait(new Callable<SwingStatusBar>() {
148
+            @Override
149
+            public SwingStatusBar call() {
150
+                return new SwingStatusBar(swingController, mainFrame, inviteLabel, updaterLabel,
151
+                        messageLabel);
152
+            }
153
+        });
154
+    }
155
+
135
     @Provides
156
     @Provides
136
     @Singleton
157
     @Singleton
137
     public URLHandler getURLHandler(
158
     public URLHandler getURLHandler(

Loading…
Cancel
Save