Browse Source

Use new InviteManager iface.

pull/260/head
Chris Smith 9 years ago
parent
commit
cd809bb22c

+ 17
- 11
ui_swing/src/com/dmdirc/addons/ui_swing/components/statusbar/InviteLabel.java View File

24
 
24
 
25
 import com.dmdirc.ClientModule.GlobalConfig;
25
 import com.dmdirc.ClientModule.GlobalConfig;
26
 import com.dmdirc.DMDircMBassador;
26
 import com.dmdirc.DMDircMBassador;
27
-import com.dmdirc.Invite;
28
 import com.dmdirc.addons.ui_swing.EdtHandlerInvocation;
27
 import com.dmdirc.addons.ui_swing.EdtHandlerInvocation;
29
 import com.dmdirc.addons.ui_swing.MainFrame;
28
 import com.dmdirc.addons.ui_swing.MainFrame;
30
 import com.dmdirc.addons.ui_swing.events.SwingEventBus;
29
 import com.dmdirc.addons.ui_swing.events.SwingEventBus;
32
 import com.dmdirc.events.ServerInviteExpiredEvent;
31
 import com.dmdirc.events.ServerInviteExpiredEvent;
33
 import com.dmdirc.events.ServerInviteReceivedEvent;
32
 import com.dmdirc.events.ServerInviteReceivedEvent;
34
 import com.dmdirc.interfaces.Connection;
33
 import com.dmdirc.interfaces.Connection;
34
+import com.dmdirc.interfaces.InviteManager;
35
 import com.dmdirc.ui.IconManager;
35
 import com.dmdirc.ui.IconManager;
36
 
36
 
37
 import java.awt.Window;
37
 import java.awt.Window;
38
 import java.awt.event.MouseEvent;
38
 import java.awt.event.MouseEvent;
39
-import java.util.Collection;
39
+import java.util.List;
40
 import java.util.Optional;
40
 import java.util.Optional;
41
 
41
 
42
 import javax.inject.Inject;
42
 import javax.inject.Inject;
85
 
85
 
86
         menu = new JPopupMenu();
86
         menu = new JPopupMenu();
87
         dismiss = new JMenuItem("Dismiss all invites");
87
         dismiss = new JMenuItem("Dismiss all invites");
88
-        dismiss.addActionListener(e -> activeConnection.ifPresent(Connection::removeInvites));
88
+        dismiss.addActionListener(e -> activeConnection.map(Connection::getInviteManager)
89
+                .ifPresent(InviteManager::removeInvites));
89
         accept = new JMenuItem("Accept all invites");
90
         accept = new JMenuItem("Accept all invites");
90
-        accept.addActionListener(e -> activeConnection.ifPresent(Connection::acceptInvites));
91
+        accept.addActionListener(e -> activeConnection.map(Connection::getInviteManager)
92
+                .ifPresent(InviteManager::acceptInvites));
91
     }
93
     }
92
 
94
 
93
     /**
95
     /**
110
     private void popuplateMenu() {
112
     private void popuplateMenu() {
111
         menu.removeAll();
113
         menu.removeAll();
112
 
114
 
113
-        if (activeConnection.isPresent()) {
114
-            final Collection<Invite> invites = activeConnection.get().getInvites();
115
-            for (final Invite invite : invites) {
116
-                menu.add(new JMenuItem(new InviteAction(invite)));
117
-            }
118
-        }
115
+        activeConnection
116
+                .map(Connection::getInviteManager)
117
+                .map(InviteManager::getInvites)
118
+                .ifPresent(invites -> invites.stream()
119
+                        .map(InviteAction::new)
120
+                        .map(JMenuItem::new)
121
+                        .map(menu::add));
119
         menu.add(new JSeparator());
122
         menu.add(new JSeparator());
120
         menu.add(accept);
123
         menu.add(accept);
121
         menu.add(dismiss);
124
         menu.add(dismiss);
125
      * Updates the invite label for the currently active server.
128
      * Updates the invite label for the currently active server.
126
      */
129
      */
127
     private void update() {
130
     private void update() {
128
-        if (!activeConnection.isPresent() || activeConnection.get().getInvites().isEmpty()) {
131
+        if (activeConnection
132
+                .map(Connection::getInviteManager)
133
+                .map(InviteManager::getInvites)
134
+                .map(List::isEmpty).orElse(true)) {
129
             setVisible(false);
135
             setVisible(false);
130
             closeDialog();
136
             closeDialog();
131
         } else {
137
         } else {

+ 1
- 1
ui_swing/src/com/dmdirc/addons/ui_swing/components/statusbar/InvitePopup.java View File

61
     @Override
61
     @Override
62
     protected void initContent(final JPanel panel) {
62
     protected void initContent(final JPanel panel) {
63
         if (connection.isPresent()) {
63
         if (connection.isPresent()) {
64
-            for (final Invite invite : connection.get().getInvites()) {
64
+            for (final Invite invite : connection.get().getInviteManager().getInvites()) {
65
                 panel.add(new JLabel(invite.getChannel()), "growx, pushx");
65
                 panel.add(new JLabel(invite.getChannel()), "growx, pushx");
66
                 panel.add(new JLabel(invite.getSource().getNickname(), SwingConstants.CENTER),
66
                 panel.add(new JLabel(invite.getSource().getNickname(), SwingConstants.CENTER),
67
                         "growx, pushx, al center");
67
                         "growx, pushx, al center");

Loading…
Cancel
Save