|
@@ -26,11 +26,11 @@ import com.dmdirc.Channel;
|
26
|
26
|
import com.dmdirc.FrameContainer;
|
27
|
27
|
import com.dmdirc.ServerState;
|
28
|
28
|
import com.dmdirc.addons.ui_swing.MainFrame;
|
29
|
|
-import com.dmdirc.addons.ui_swing.SwingController;
|
30
|
29
|
import com.dmdirc.addons.ui_swing.components.frames.TextFrame;
|
31
|
30
|
import com.dmdirc.addons.ui_swing.dialogs.ChannelJoinDialogFactory;
|
32
|
31
|
import com.dmdirc.addons.ui_swing.dialogs.channellist.ChannelListDialog;
|
33
|
32
|
import com.dmdirc.addons.ui_swing.dialogs.channelsetting.ChannelSettingsDialog;
|
|
33
|
+import com.dmdirc.addons.ui_swing.injection.DialogProvider;
|
34
|
34
|
import com.dmdirc.addons.ui_swing.injection.KeyedDialogProvider;
|
35
|
35
|
|
36
|
36
|
import java.awt.event.ActionEvent;
|
|
@@ -54,10 +54,10 @@ public class ChannelMenu extends JMenu implements ActionListener,
|
54
|
54
|
private static final long serialVersionUID = 1;
|
55
|
55
|
/** Dialog provider. */
|
56
|
56
|
private final KeyedDialogProvider<Channel, ChannelSettingsDialog> dialogProvider;
|
|
57
|
+ /** Channel list dialog provider. */
|
|
58
|
+ private final DialogProvider<ChannelListDialog> channelListDialogProvider;
|
57
|
59
|
/** Channel join dialog factory. */
|
58
|
60
|
private final ChannelJoinDialogFactory channelJoinDialogFactory;
|
59
|
|
- /** Swing controller. */
|
60
|
|
- private final SwingController controller;
|
61
|
61
|
/** Main frame. */
|
62
|
62
|
private final MainFrame mainFrame;
|
63
|
63
|
/** Menu items to be disabled/enabled. */
|
|
@@ -68,22 +68,22 @@ public class ChannelMenu extends JMenu implements ActionListener,
|
68
|
68
|
/**
|
69
|
69
|
* Creates a new channel menu.
|
70
|
70
|
*
|
71
|
|
- * @param controller Parent swing controller.
|
72
|
|
- * @param mainFrame Parent mainframe
|
73
|
|
- * @param dialogProvider Channel settings dialog provider
|
74
|
|
- * @param channelJoinDialogFactory Channel join dialog factory
|
|
71
|
+ * @param mainFrame Parent mainframe
|
|
72
|
+ * @param dialogProvider Channel settings dialog provider
|
|
73
|
+ * @param channelJoinDialogFactory Channel join dialog factory
|
|
74
|
+ * @param channelListDialogProvider Channel list dialog provider
|
75
|
75
|
*/
|
76
|
76
|
@Inject
|
77
|
77
|
public ChannelMenu(
|
78
|
|
- final SwingController controller,
|
79
|
78
|
final MainFrame mainFrame,
|
80
|
79
|
final KeyedDialogProvider<Channel, ChannelSettingsDialog> dialogProvider,
|
81
|
|
- final ChannelJoinDialogFactory channelJoinDialogFactory) {
|
|
80
|
+ final ChannelJoinDialogFactory channelJoinDialogFactory,
|
|
81
|
+ final DialogProvider<ChannelListDialog> channelListDialogProvider) {
|
82
|
82
|
super("Channel");
|
83
|
|
- this.controller = controller;
|
84
|
83
|
this.mainFrame = mainFrame;
|
85
|
84
|
this.dialogProvider = dialogProvider;
|
86
|
85
|
this.channelJoinDialogFactory = channelJoinDialogFactory;
|
|
86
|
+ this.channelListDialogProvider = channelListDialogProvider;
|
87
|
87
|
setMnemonic('c');
|
88
|
88
|
addMenuListener(this);
|
89
|
89
|
initChannelMenu();
|
|
@@ -130,7 +130,7 @@ public class ChannelMenu extends JMenu implements ActionListener,
|
130
|
130
|
}
|
131
|
131
|
break;
|
132
|
132
|
case "ListChannels":
|
133
|
|
- new ChannelListDialog(controller).display();
|
|
133
|
+ channelListDialogProvider.displayOrRequestFocus();
|
134
|
134
|
break;
|
135
|
135
|
}
|
136
|
136
|
}
|