1
package org.bentokit.flywire.gui.systemtray;
3
import java.awt.AWTException;
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;
15
public class FlywireSystemTray {
16
public TrayIcon trayIcon;
18
public FlywireSystemTray() {
19
if (SystemTray.isSupported()) {
21
SystemTray tray = SystemTray.getSystemTray();
22
Image image = Toolkit.getDefaultToolkit().getImage("tray.gif");
24
MouseListener mouseListener = new MouseListener() {
26
public void mouseClicked(MouseEvent e) {
27
System.out.println("Tray Icon - Mouse clicked!");
30
public void mouseEntered(MouseEvent e) {
31
System.out.println("Tray Icon - Mouse entered!");
34
public void mouseExited(MouseEvent e) {
35
System.out.println("Tray Icon - Mouse exited!");
38
public void mousePressed(MouseEvent e) {
39
System.out.println("Tray Icon - Mouse pressed!");
42
public void mouseReleased(MouseEvent e) {
43
System.out.println("Tray Icon - Mouse released!");
47
ActionListener exitListener = new ActionListener() {
48
public void actionPerformed(ActionEvent e) {
49
System.out.println("Exiting...");
54
PopupMenu popup = new PopupMenu();
55
MenuItem defaultItem = new MenuItem("Exit");
56
defaultItem.addActionListener(exitListener);
57
popup.add(defaultItem);
59
trayIcon = new TrayIcon(image, "Tray Demo", popup);
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);
69
trayIcon.setImageAutoSize(true);
70
trayIcon.addActionListener(actionListener);
71
trayIcon.addMouseListener(mouseListener);
75
} catch (AWTException e) {
76
System.err.println("TrayIcon could not be added.");
81
// System Tray is not supported
b'\\ No newline at end of file'