~tudor/flywire/0.2.1

« back to all changes in this revision

Viewing changes to src/org/bentokit/flywire/gui/systemtray/FlywireSystemTray.java

  • Committer: tudor
  • Date: 2011-03-12 00:47:02 UTC
  • Revision ID: svn-v4:48700339-fa25-0410-b67c-989cebe9404f:branches/0.2:78
Compiles and runs, but is much broken.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
package org.bentokit.flywire.gui.systemtray;
 
2
 
 
3
import java.awt.AWTException;
 
4
import java.awt.Image;
 
5
import java.awt.MenuItem;
 
6
import java.awt.PopupMenu;
 
7
import java.awt.SystemTray;
 
8
import java.awt.Toolkit;
 
9
import java.awt.TrayIcon;
 
10
import java.awt.event.ActionEvent;
 
11
import java.awt.event.ActionListener;
 
12
import java.awt.event.MouseEvent;
 
13
import java.awt.event.MouseListener;
 
14
 
 
15
public class FlywireSystemTray {
 
16
        public TrayIcon trayIcon;
 
17
        
 
18
        public FlywireSystemTray() {
 
19
                if (SystemTray.isSupported()) {
 
20
                
 
21
                    SystemTray tray = SystemTray.getSystemTray();
 
22
                    Image image = Toolkit.getDefaultToolkit().getImage("tray.gif");
 
23
                
 
24
                    MouseListener mouseListener = new MouseListener() {
 
25
                                
 
26
                        public void mouseClicked(MouseEvent e) {
 
27
                            System.out.println("Tray Icon - Mouse clicked!");                 
 
28
                        }
 
29
                
 
30
                        public void mouseEntered(MouseEvent e) {
 
31
                            System.out.println("Tray Icon - Mouse entered!");                 
 
32
                        }
 
33
                
 
34
                        public void mouseExited(MouseEvent e) {
 
35
                            System.out.println("Tray Icon - Mouse exited!");                 
 
36
                        }
 
37
                
 
38
                        public void mousePressed(MouseEvent e) {
 
39
                            System.out.println("Tray Icon - Mouse pressed!");                 
 
40
                        }
 
41
                
 
42
                        public void mouseReleased(MouseEvent e) {
 
43
                            System.out.println("Tray Icon - Mouse released!");                 
 
44
                        }
 
45
                    };
 
46
                
 
47
                    ActionListener exitListener = new ActionListener() {
 
48
                        public void actionPerformed(ActionEvent e) {
 
49
                            System.out.println("Exiting...");
 
50
                            System.exit(0);
 
51
                        }
 
52
                    };
 
53
                            
 
54
                    PopupMenu popup = new PopupMenu();
 
55
                    MenuItem defaultItem = new MenuItem("Exit");
 
56
                    defaultItem.addActionListener(exitListener);
 
57
                    popup.add(defaultItem);
 
58
                
 
59
                    trayIcon = new TrayIcon(image, "Tray Demo", popup);
 
60
                
 
61
                    ActionListener actionListener = new ActionListener() {
 
62
                        public void actionPerformed(ActionEvent e) {
 
63
                            trayIcon.displayMessage("Action Event", 
 
64
                                "An Action Event Has Been Performed!",
 
65
                                TrayIcon.MessageType.INFO);
 
66
                        }
 
67
                    };
 
68
                            
 
69
                    trayIcon.setImageAutoSize(true);
 
70
                    trayIcon.addActionListener(actionListener);
 
71
                    trayIcon.addMouseListener(mouseListener);
 
72
                
 
73
                    try {
 
74
                        tray.add(trayIcon);
 
75
                    } catch (AWTException e) {
 
76
                        System.err.println("TrayIcon could not be added.");
 
77
                    }
 
78
                
 
79
                } else {
 
80
                
 
81
                    //  System Tray is not supported
 
82
                
 
83
                }
 
84
        }
 
85
}
 
 
b'\\ No newline at end of file'