Browse Source

Inject more things.

Change-Id: I0a6ccc960a4e08d0a7c6aac08aa5b89d2b17c125
Reviewed-on: http://gerrit.dmdirc.com/3038
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Greg Holmes <greg@dmdirc.com>
tags/0.8
Chris Smith 10 years ago
parent
commit
f2e48b0be9

+ 9
- 2
src/com/dmdirc/addons/ui_swing/components/menubar/HelpMenu.java View File

@@ -22,6 +22,7 @@
22 22
 
23 23
 package com.dmdirc.addons.ui_swing.components.menubar;
24 24
 
25
+import com.dmdirc.ServerManager;
25 26
 import com.dmdirc.addons.ui_swing.Apple;
26 27
 import com.dmdirc.addons.ui_swing.SwingController;
27 28
 import com.dmdirc.addons.ui_swing.dialogs.FeedbackDialog;
@@ -45,16 +46,22 @@ public class HelpMenu extends JMenu implements ActionListener {
45 46
     private static final long serialVersionUID = 1;
46 47
     /** Swing controller. */
47 48
     private final SwingController controller;
49
+    /** Server manager to use to join dev chat. */
50
+    private final ServerManager serverManager;
48 51
 
49 52
     /**
50 53
      * Instantiates a new help menu.
51 54
      *
52 55
      * @param controller Swing controller
56
+     * @param serverManager The manager to use to join dev chat.
53 57
      */
54 58
     @Inject
55
-    public HelpMenu(final SwingController controller) {
59
+    public HelpMenu(
60
+            final SwingController controller,
61
+            final ServerManager serverManager) {
56 62
         super("Help");
57 63
         this.controller = controller;
64
+        this.serverManager = serverManager;
58 65
         setMnemonic('h');
59 66
         initHelpMenu();
60 67
     }
@@ -101,7 +108,7 @@ public class HelpMenu extends JMenu implements ActionListener {
101 108
                 controller.showDialog(AboutDialog.class);
102 109
                 break;
103 110
             case "JoinDevChat":
104
-                controller.getServerManager().joinDevChat();
111
+                serverManager.joinDevChat();
105 112
                 break;
106 113
             case "feedback":
107 114
                 controller.showDialog(FeedbackDialog.class);

+ 16
- 6
src/com/dmdirc/addons/ui_swing/components/statusbar/InviteLabel.java View File

@@ -22,13 +22,14 @@
22 22
 
23 23
 package com.dmdirc.addons.ui_swing.components.statusbar;
24 24
 
25
+import com.dmdirc.ClientModule.GlobalConfig;
25 26
 import com.dmdirc.Invite;
26 27
 import com.dmdirc.Server;
28
+import com.dmdirc.ServerManager;
27 29
 import com.dmdirc.actions.ActionManager;
28 30
 import com.dmdirc.actions.CoreActionType;
29 31
 import com.dmdirc.addons.ui_swing.MainFrame;
30 32
 import com.dmdirc.addons.ui_swing.SelectionListener;
31
-import com.dmdirc.addons.ui_swing.SwingController;
32 33
 import com.dmdirc.addons.ui_swing.UIUtilities;
33 34
 import com.dmdirc.addons.ui_swing.components.frames.TextFrame;
34 35
 import com.dmdirc.addons.ui_swing.dialogs.DialogManager;
@@ -37,11 +38,13 @@ import com.dmdirc.interfaces.Connection;
37 38
 import com.dmdirc.interfaces.InviteListener;
38 39
 import com.dmdirc.interfaces.actions.ActionType;
39 40
 import com.dmdirc.interfaces.ui.StatusBarComponent;
41
+import com.dmdirc.ui.IconManager;
40 42
 
41 43
 import java.awt.event.ActionEvent;
42 44
 import java.awt.event.MouseEvent;
43 45
 import java.util.Collection;
44 46
 
47
+import javax.inject.Inject;
45 48
 import javax.swing.BorderFactory;
46 49
 import javax.swing.JLabel;
47 50
 import javax.swing.JMenuItem;
@@ -78,17 +81,24 @@ public class InviteLabel extends StatusbarPopupPanel<JLabel> implements
78 81
     /**
79 82
      * Instantiates a new invite label.
80 83
      *
81
-     * @param controller Swing controller
84
+     * @param dialogManager The manager to register dialogs with.
85
+     * @param iconManager The manager to retrieve the invite icon from.
86
+     * @param serverManager The manager to use to iterate servers.
82 87
      * @param mainFrame Main frame
83 88
      */
84
-    public InviteLabel(final SwingController controller, final MainFrame mainFrame) {
89
+    @Inject
90
+    public InviteLabel(
91
+            final DialogManager dialogManager,
92
+            @GlobalConfig final IconManager iconManager,
93
+            final ServerManager serverManager,
94
+            final MainFrame mainFrame) {
85 95
         super(new JLabel());
86 96
 
87
-        this.dialogManager = controller.getDialogManager();
97
+        this.dialogManager = dialogManager;
88 98
         this.mainFrame = mainFrame;
89 99
 
90 100
         setBorder(BorderFactory.createEtchedBorder());
91
-        label.setIcon(controller.getIconManager().getIcon("invite"));
101
+        label.setIcon(iconManager.getIcon("invite"));
92 102
 
93 103
         menu = new JPopupMenu();
94 104
         dismiss = new JMenuItem("Dismiss all invites");
@@ -98,7 +108,7 @@ public class InviteLabel extends StatusbarPopupPanel<JLabel> implements
98 108
         accept.setActionCommand("acceptAll");
99 109
         accept.addActionListener(this);
100 110
 
101
-        for (final Server server : controller.getServerManager().getServers()) {
111
+        for (final Server server : serverManager.getServers()) {
102 112
             server.addInviteListener(this);
103 113
         }
104 114
 

+ 7
- 3
src/com/dmdirc/addons/ui_swing/components/statusbar/SwingStatusBar.java View File

@@ -70,11 +70,15 @@ public class SwingStatusBar extends JPanel implements StatusBar {
70 70
      *
71 71
      * @param controller Swing controller
72 72
      * @param mainFrame Main frame
73
+     * @param inviteLabel The invite label to add to the status bar.
74
+     * @param updaterLabel The updater label to add to the status bar.
73 75
      */
74 76
     @Inject
75 77
     public SwingStatusBar(
76 78
             final SwingController controller,
77
-            final MainFrame mainFrame) {
79
+            final MainFrame mainFrame,
80
+            final InviteLabel inviteLabel,
81
+            final UpdaterLabel updaterLabel) {
78 82
         super();
79 83
 
80 84
         height = getFontMetrics(UIManager.getFont("Table.font")).getHeight()
@@ -85,8 +89,8 @@ public class SwingStatusBar extends JPanel implements StatusBar {
85 89
 
86 90
         messageLabel = new MessageLabel(controller, mainFrame);
87 91
         errorPanel = new ErrorPanel(controller, mainFrame, this);
88
-        updateLabel = new UpdaterLabel(controller);
89
-        inviteLabel = new InviteLabel(controller, mainFrame);
92
+        this.updateLabel = updaterLabel;
93
+        this.inviteLabel = inviteLabel;
90 94
 
91 95
         setLayout(new MigLayout("fill, ins 0, hidemode 3"));
92 96
 

+ 14
- 7
src/com/dmdirc/addons/ui_swing/components/statusbar/UpdaterLabel.java View File

@@ -26,12 +26,14 @@ import com.dmdirc.addons.ui_swing.SwingController;
26 26
 import com.dmdirc.addons.ui_swing.dialogs.updater.SwingRestartDialog;
27 27
 import com.dmdirc.addons.ui_swing.dialogs.updater.SwingUpdaterDialog;
28 28
 import com.dmdirc.interfaces.ui.StatusBarComponent;
29
+import com.dmdirc.updater.manager.CachingUpdateManager;
29 30
 import com.dmdirc.updater.manager.UpdateManager;
30 31
 import com.dmdirc.updater.manager.UpdateManagerListener;
31 32
 import com.dmdirc.updater.manager.UpdateManagerStatus;
32 33
 
33 34
 import java.awt.event.MouseEvent;
34 35
 
36
+import javax.inject.Inject;
35 37
 import javax.swing.BorderFactory;
36 38
 import javax.swing.JLabel;
37 39
 
@@ -50,19 +52,26 @@ public class UpdaterLabel extends StatusbarPopupPanel<JLabel> implements
50 52
     private static final long serialVersionUID = 1;
51 53
     /** Swing controller. */
52 54
     private final SwingController controller;
55
+    /** The update manager to use to retrieve information. */
56
+    private final CachingUpdateManager updateManager;
53 57
 
54 58
     /**
55 59
      * Instantiates a new updater label, handles showing updates on the status
56 60
      * bar.
57 61
      *
58 62
      * @param controller Swing controller
63
+     * @param updateManager The manager to use to retrieve information.
59 64
      */
60
-    public UpdaterLabel(final SwingController controller) {
65
+    @Inject
66
+    public UpdaterLabel(
67
+            final SwingController controller,
68
+            final CachingUpdateManager updateManager) {
61 69
         super(new JLabel());
62 70
 
63 71
         this.controller = controller;
72
+        this.updateManager = updateManager;
64 73
         setBorder(BorderFactory.createEtchedBorder());
65
-        controller.getCachingUpdateManager().addUpdateManagerListener(this);
74
+        updateManager.addUpdateManagerListener(this);
66 75
         setVisible(false);
67 76
         label.setText(null);
68 77
     }
@@ -76,13 +85,11 @@ public class UpdaterLabel extends StatusbarPopupPanel<JLabel> implements
76 85
     public void mouseReleased(final MouseEvent mouseEvent) {
77 86
         super.mouseReleased(mouseEvent);
78 87
         if (mouseEvent.getButton() == MouseEvent.BUTTON1) {
79
-            if (controller.getCachingUpdateManager().getManagerStatus()
80
-                    == UpdateManagerStatus.IDLE_RESTART_NEEDED) {
88
+            if (updateManager.getManagerStatus() == UpdateManagerStatus.IDLE_RESTART_NEEDED) {
81 89
                 closeDialog();
82 90
                 controller.showDialog(SwingRestartDialog.class);
83 91
             } else {
84
-                controller.showDialog(SwingUpdaterDialog.class,
85
-                        controller.getCachingUpdateManager());
92
+                controller.showDialog(SwingUpdaterDialog.class, updateManager);
86 93
             }
87 94
         }
88 95
     }
@@ -90,7 +97,7 @@ public class UpdaterLabel extends StatusbarPopupPanel<JLabel> implements
90 97
     /** {@inheritDoc} */
91 98
     @Override
92 99
     protected StatusbarPopupWindow getWindow() {
93
-        return new UpdaterPopup(controller.getDialogManager(), controller.getCachingUpdateManager(),
100
+        return new UpdaterPopup(controller.getDialogManager(), updateManager,
94 101
                 this, controller.getMainFrame());
95 102
     }
96 103
 

Loading…
Cancel
Save