From cb851594740eade72a9a901305c570f2bb95f9ae Mon Sep 17 00:00:00 2001 From: Evgeny Gryaznov Date: Sun, 17 Jan 2010 19:03:40 +0000 Subject: [PATCH] add notifier project git-svn-id: https://webim.svn.sourceforge.net/svnroot/webim/trunk@731 c66351dc-e62f-0410-b875-e3a5c0b9693f --- src/mibewjava/org.mibew.notifier/.classpath | 7 +++ src/mibewjava/org.mibew.notifier/.project | 17 ++++++ .../src/org/mibew/notifier/NotifyApp.java | 11 ++++ .../src/org/mibew/notifier/TrayNotifier.java | 56 ++++++++++++++++++ .../src/org/mibew/notifier/tray.png | Bin 0 -> 2054 bytes 5 files changed, 91 insertions(+) create mode 100644 src/mibewjava/org.mibew.notifier/.classpath create mode 100644 src/mibewjava/org.mibew.notifier/.project create mode 100644 src/mibewjava/org.mibew.notifier/src/org/mibew/notifier/NotifyApp.java create mode 100644 src/mibewjava/org.mibew.notifier/src/org/mibew/notifier/TrayNotifier.java create mode 100644 src/mibewjava/org.mibew.notifier/src/org/mibew/notifier/tray.png diff --git a/src/mibewjava/org.mibew.notifier/.classpath b/src/mibewjava/org.mibew.notifier/.classpath new file mode 100644 index 00000000..23c0a51c --- /dev/null +++ b/src/mibewjava/org.mibew.notifier/.classpath @@ -0,0 +1,7 @@ + + + + + + + diff --git a/src/mibewjava/org.mibew.notifier/.project b/src/mibewjava/org.mibew.notifier/.project new file mode 100644 index 00000000..4a130331 --- /dev/null +++ b/src/mibewjava/org.mibew.notifier/.project @@ -0,0 +1,17 @@ + + + org.mibew.notifier + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/src/mibewjava/org.mibew.notifier/src/org/mibew/notifier/NotifyApp.java b/src/mibewjava/org.mibew.notifier/src/org/mibew/notifier/NotifyApp.java new file mode 100644 index 00000000..142e0526 --- /dev/null +++ b/src/mibewjava/org.mibew.notifier/src/org/mibew/notifier/NotifyApp.java @@ -0,0 +1,11 @@ +package org.mibew.notifier; + +public class NotifyApp { + + public static void main(String[] args) { + TrayNotifier tn = new TrayNotifier(); + tn.init(); + + + } +} diff --git a/src/mibewjava/org.mibew.notifier/src/org/mibew/notifier/TrayNotifier.java b/src/mibewjava/org.mibew.notifier/src/org/mibew/notifier/TrayNotifier.java new file mode 100644 index 00000000..1548744b --- /dev/null +++ b/src/mibewjava/org.mibew.notifier/src/org/mibew/notifier/TrayNotifier.java @@ -0,0 +1,56 @@ +package org.mibew.notifier; + +import java.awt.AWTException; +import java.awt.Image; +import java.awt.MenuItem; +import java.awt.MenuShortcut; +import java.awt.PopupMenu; +import java.awt.SystemTray; +import java.awt.Toolkit; +import java.awt.TrayIcon; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.KeyEvent; +import java.net.URL; + +public class TrayNotifier { + + private TrayIcon trayIcon; + + public TrayNotifier() { + } + + public void init() { + if (SystemTray.isSupported()) { + + SystemTray tray = SystemTray.getSystemTray(); + URL url = this.getClass().getResource("tray.png"); + Image image = Toolkit.getDefaultToolkit().getImage(url); + + PopupMenu popup = new PopupMenu(); + MenuItem exitItem = new MenuItem("Exit", new MenuShortcut(KeyEvent.VK_X)); + exitItem.addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + System.exit(0); + } + }); + + popup.add(exitItem); + trayIcon = new TrayIcon(image, "Mibew Notifier", popup); + trayIcon.setImageAutoSize(true); + + try { + tray.add(trayIcon); + } catch (AWTException e) { + System.err.println("TrayIcon could not be added."); + System.exit(1); + } + } else { + System.err.println("TrayIcon could not be added."); + System.exit(1); + } + } + + public void setStatus(boolean online) { + } +} diff --git a/src/mibewjava/org.mibew.notifier/src/org/mibew/notifier/tray.png b/src/mibewjava/org.mibew.notifier/src/org/mibew/notifier/tray.png new file mode 100644 index 0000000000000000000000000000000000000000..1e8f871aa3d79e71d8459681b1cec54f93fa3b84 GIT binary patch literal 2054 zcmV+h2>JJkP)4Tx0C)j~RL^S@K@|QrZmG~B2wH0nvUrdpNm;9CMbtL^5n^i$+aIn^?(HA4aZWV5ov6ELTdbo0FI&wK{O>*+w4vx20?>!`FrQsdJlnHR>OPy zcd~b_n$otK2Za4V;76L-DzNVtaSB-y0*E}{p()372;bw_^6ZZ}PI-92wGS&j#91PI zKs7DSe@(bk%_Y-7gGe}(^>I=@oY#w#*Bu9GZf3^F5WP>3rn}7Ut74&?PWBFvy`A)a zPP5)V!Xd&78LdA?xQ(9mjMYElVd13a#D+Z_7&Y|xU=_C-srWU*6kiZcC!$nw*)9$7 zn6CX+@=AhmkT}X@VSsa5NKe;HZuq)~1$`#h6R+ZTR#D-3j}vF!)ZOnz+5)dI4jl{{ z44Mr{P!L4~VVJN`K!!XTF*LGrKO?IK8z<8w`3e3jI8lUGNUta*C8 zn(P`s>{pjD=7Kek#B;Fw@hxAK%$F&Q6vg9J^Xf~4by_hu-=A!MJ3Znq&n~srbFGPs zH&&aMXZ>nO`|hf|ljc?VPhR!${AbO?W8x_>CU%PFA&Hm8F7cAsOREdwU~R_;ot1_u z(ruCYB-LPGn!NQdT|ZlRy+(fw^-+`=%+gee_kY4FWHg<*4sZI8+sFJD270UUORdLHO0nA4V) z%{fwsET5CQ>B?eK%uw4yQc~9?*JVo2}ze(;aRcp*ceL#HUJSllrgm5wQKR zQu+C;QrUh^8rFfA`ftFz{YAidi-`aL010qNS#tmY3ljhU3ljkVnw%H_00h2CL_t(Y z4Xst(Pg`Xef8Nv6_LLU-H986oC@_M6&dnLU^2WrAjfuN}8#RuRB|85Hfg5i$UYZz9 z+=3bdeq~`s3ETCIZeZ5(rIneL?~ein+H=~T`a1ao0n${J=I+f!*Vk4*nvTW30(cJk zjAzw}i5@C)K}p9~e&)o9%ax(Z59;b8PP^T%FD))oE}y66r6sBghpDl#sa>|o9}`JV z=zqq51$&Fc%pGs?VPO>KFT&$@Yigci9FZ}#4CG#ox#=5{x!s;ZBUj>_TcYVpQf7wEZDrwF8E=sNv+ z>z1v(y^S0WM+5{fLE^*1!)$M*$|5M;gyIpO-+$8MDW{3?38SsOUAl0wmyXrd(@rWy zfnbo{e7lF-9*-Cs{Y4Ll!=d^}@RB6tQy=(Y*Mf?M2e!& z?(RM~H;Oz8y(jIFjx;&!cCop!K~BYa1g0U#JjBAZBG|{Zem%RX9mVN%QuL2;Vcwox zj&uNPnr0F($>PES-JKXG+%VcqCM#fFSwJv~ju#0m#)5*nvb?0>VewKQzjNEz+T4Wi z!X#nkjrBFUbNhEwog-XZUFCWz=0?d6zrNDk7mw~^lH}x7`26D9_uq=i$(WfE9qKIc zc-;8u+K=R^@FHs_L>4xw0)XYP89{%4e_`MH#4(FaMx(U7nap9HpNsz`xX9eC)l7yK z5(!q;ceb~TsaTBX|3L2Xgh$bFlc2S=l~ZQ2qQNORT!zkfkUt?Ck;db@k%mULqO6vs zyq>3{;VN?b0vVh$#tP&L?EZ$cjAQjA^Bs(hjj@us2?Z76=zZsMt(M7n(HdN`EZc21 z8|6@Fn=FGw!$UK~YaJaj(j{b@lt%-!v6CRt3nYLn^rB=kX)$tW9p}&Y;>Ns>rsifP zzWbB0DEAqvt*fI%;yz7JO;RuzbhunDu1yuv_u<*jPQDeNuuX9=BZp)ay64iRGq~Pg zU_X@2W;GZi0GU#FOm4TEnvOTq?98w1Q|8k6!7^&oC-wiK-x{u;Voq{Dy^(6lh^B|%1{WGR+u*k9!kLD6jtIoqgW4y zS>y*xqHhMTj?B-`55oC0jB+4RAsmS&*(41eR0BDRU}(G#uT|E=NY5t{Uw%D!^*ZAr z1E$lQo`?R4V9?V1blWTF^$Lh`k|c>N@@AJL;@6E1OT1?90ASz(aIrJ9Q?Z-ConiuD km?>fcbHbbd=O_~V3s+WP(6hYzn*aa+07*qoM6N<$f`|_P7XSbN literal 0 HcmV?d00001