Ignore:
Timestamp:
2014-07-07T08:32:16+02:00 (10 years ago)
Author:
zverik
Message:

notification

File:
1 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/geochat/src/geochat/GeoChatPanel.java

    r30262 r30511  
    44import java.awt.*;
    55import java.awt.event.*;
     6import java.io.IOException;
    67import java.text.SimpleDateFormat;
    78import java.util.*;
     
    1112import org.openstreetmap.josm.data.Bounds;
    1213import org.openstreetmap.josm.data.coor.LatLon;
    13 import org.openstreetmap.josm.gui.JosmUserIdentityManager;
    14 import org.openstreetmap.josm.gui.MapView;
     14import org.openstreetmap.josm.gui.*;
    1515import org.openstreetmap.josm.gui.dialogs.ToggleDialog;
    1616import org.openstreetmap.josm.gui.layer.MapViewPaintable;
     
    3333    private ChatServerConnection connection;
    3434    // those fields should be visible to popup menu actions
    35     protected Map<String, LatLon> users;
    36     protected ChatPaneManager chatPanes;
    37     protected boolean userLayerActive;
     35    Map<String, LatLon> users;
     36    ChatPaneManager chatPanes;
     37    boolean userLayerActive;
    3838   
    3939    public GeoChatPanel() {
     
    9797        JButton loginButton = new JButton(tr("Login"));
    9898        loginButton.addActionListener(new ActionListener() {
     99            @Override
    99100            public void actionPerformed( ActionEvent e ) {
    100101                connection.login(nameField.getText());
     
    105106        final JCheckBox autoLoginBox = new JCheckBox(tr("Enable autologin"), Main.pref.getBoolean("geochat.autologin", true));
    106107        autoLoginBox.addActionListener(new ActionListener() {
     108            @Override
    107109            public void actionPerformed( ActionEvent e ) {
    108110                Main.pref.put("geochat.autologin", autoLoginBox.isSelected());
     
    128130                connection.bruteLogout();
    129131            }
    130         } catch( Throwable e ) {
     132        } catch( IOException e ) {
    131133            Main.warn("Failed to logout from geochat server: " + e.getMessage());
    132134        }
     
    158160     * for all users nearby.
    159161     */
     162    @Override
    160163    public void paint( Graphics2D g, MapView mv, Bounds bbox ) {
    161164        Graphics2D g2d = (Graphics2D)g.create();
     
    205208        final String alarm = (alarmLevel <= 0 ? "" : alarmLevel == 1 ? "* " : "!!! ") + title;
    206209        GuiHelper.runInEDT(new Runnable() {
     210            @Override
    207211            public void run() {
    208212                setTitle(alarm);
     
    223227    /* ============ ChatServerConnectionListener methods ============= */
    224228
     229    @Override
    225230    public void loggedIn( String userName ) {
    226231        Main.pref.put("geochat.username", userName);
    227232        if( gcPanel.getComponentCount() == 1 ) {
    228                 GuiHelper.runInEDTAndWait(new Runnable() {
    229                                 @Override
    230                                 public void run() {
    231                             gcPanel.remove(0);
    232                             gcPanel.add(tabs, BorderLayout.CENTER);
    233                             gcPanel.add(input, BorderLayout.SOUTH);
    234                                 }
    235                         });
    236         }
    237         updateTitleAlarm();
    238     }
    239 
     233            GuiHelper.runInEDTAndWait(new Runnable() {
     234                @Override
     235                public void run() {
     236                    gcPanel.remove(0);
     237                    gcPanel.add(tabs, BorderLayout.CENTER);
     238                    gcPanel.add(input, BorderLayout.SOUTH);
     239                }
     240            });
     241        }
     242        updateTitleAlarm();
     243    }
     244
     245    @Override
    240246    public void notLoggedIn( final String reason ) {
    241247        if( reason != null ) {
    242             SwingUtilities.invokeLater(new Runnable() {
     248            GuiHelper.runInEDT(new Runnable() {
     249                @Override
    243250                public void run() {
    244                     JOptionPane.showMessageDialog(Main.parent, reason);
     251                    new Notification(tr("GeoChat") + ": " + reason).show();
    245252                }
    246253            });
     
    255262    }
    256263
     264    @Override
    257265    public void messageSendFailed( final String reason ) {
    258         SwingUtilities.invokeLater(new Runnable() {
     266        GuiHelper.runInEDT(new Runnable() {
     267            @Override
    259268            public void run() {
    260                 JOptionPane.showMessageDialog(Main.parent, reason);
     269                new Notification(tr("GeoChat") + ": " + reason).show();
    261270            }
    262271        });
    263272    }
    264273
     274    @Override
    265275    public void statusChanged( boolean active ) {
    266276        // only the public tab, because private chats don't rely on coordinates
     
    269279    }
    270280
     281    @Override
    271282    public void updateUsers( Map<String, LatLon> newUsers ) {
    272283        for( String uname : this.users.keySet() ) {
     
    292303    }
    293304
     305    @Override
    294306    public void receivedMessages( boolean replace, List<ChatMessage> messages ) {
    295307        if( replace )
     
    346358    }
    347359
     360    @Override
    348361    public void receivedPrivateMessages( boolean replace, List<ChatMessage> messages ) {
    349362        if( replace )
Note: See TracChangeset for help on using the changeset viewer.