Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: plugins/CsBeagle/BuddyEntry.java


1   /*
2    * BuddyEntry.java
3    *
4    * Created on October 27, 2002, 2:28 PM
5    */
6   
7   package plugins.CsBeagle;
8   
9   import javax.swing.JPopupMenu;
10  import javax.swing.JMenu;
11  import javax.swing.JMenuItem;
12  import java.util.Vector;
13  import javax.swing.Action;
14  
15  /**
16   *
17   * @author  Tobias Riemer
18   */
19  public class BuddyEntry implements dexter.core.Entry {
20      
21      Buddy buddy;
22      protected JPopupMenu popup = new JPopupMenu();
23      private Action showServerInfoDlg;
24      javax.swing.ImageIcon onlineIcon  = new javax.swing.ImageIcon(getClass().getResource("/dexter/images/online.gif"));
25      javax.swing.ImageIcon offlineIcon = new javax.swing.ImageIcon(getClass().getResource("/dexter/images/offline.gif"));
26      
27      /** Creates a new instance of BuddyEntry */
28      public BuddyEntry(Buddy buddy) {
29          this.buddy = buddy;
30          JMenuItem menuItem = new JMenuItem("Show Server");
31          menuItem.addActionListener(new java.awt.event.ActionListener() {
32              public void actionPerformed(java.awt.event.ActionEvent evt) {
33                  showServerInfoDlg();
34              }
35          });
36          popup.add(menuItem);
37      }
38      
39      public void fireSelected() {
40      }
41      
42      public java.awt.Font getFont() {
43          return null;
44      }
45      
46      public javax.swing.ImageIcon getIcon() {
47          if (buddy.getPlayers().size() > 0) {
48              return onlineIcon;
49          }
50          return offlineIcon;
51      }
52      
53      public JPopupMenu getPopupMenu() {
54          return popup;
55      }
56      
57      public String getToolTipText() {
58          Vector players = buddy.getPlayers();
59          if (players.size() > 0) {
60              Server server = ((Player) players.get(0)).getServer();
61              if (server != null)
62                  return "Server: " + server + " / Frags: " + ((Player) players.get(0)).getFrags();
63          }
64          return "offline";
65      }
66      
67      
68      public void setShowServerInfoDlgAction(Action showServerInfoDlg) {
69          this.showServerInfoDlg = showServerInfoDlg;
70      }
71      
72      public void showServerInfoDlg() {
73          Vector players = buddy.getPlayers();
74          if (players.size() > 0) {
75              Server server = ((Player) players.get(0)).getServer();
76              if (server != null) {                
77                  if (showServerInfoDlg != null) showServerInfoDlg.actionPerformed( new java.awt.event.ActionEvent(server,0,""));                
78              }
79          }
80      }
81      
82      public String toString() { return buddy.toString(); }
83      
84  }