Author: jerome
Date: 2008-08-18 09:20:09 +0200 (Mon, 18 Aug 2008)
New Revision: 1546

Added:
   
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/images/tray-offline.png
   
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/images/tray-online.png
Modified:
   
software_suite_v2/software/control_center/trunk/control_center/sources/cc_main.java
   
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/CcInterface.java
   
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/languages/Languages.java
   
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/languages/LanguagesSet/languages_en_US.properties
   
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/languages/LanguagesSet/languages_fr_FR.properties
Log:
* Added tray icon.

Modified: 
software_suite_v2/software/control_center/trunk/control_center/sources/cc_main.java
===================================================================
--- 
software_suite_v2/software/control_center/trunk/control_center/sources/cc_main.java
 2008-08-18 06:03:10 UTC (rev 1545)
+++ 
software_suite_v2/software/control_center/trunk/control_center/sources/cc_main.java
 2008-08-18 07:20:09 UTC (rev 1546)
@@ -20,10 +20,7 @@
  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  */
 
-
 import com.tuxdroid.cc.CcInterface;
-import com.tuxisalive.api.TuxAPI;
-import com.tuxisalive.api.TuxAPIConst;
 
 public class cc_main{
        

Modified: 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/CcInterface.java
===================================================================
--- 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/CcInterface.java
     2008-08-18 06:03:10 UTC (rev 1545)
+++ 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/CcInterface.java
     2008-08-18 07:20:09 UTC (rev 1546)
@@ -42,20 +42,18 @@
 import java.awt.dnd.DropTargetDropEvent;
 import java.awt.dnd.DropTargetEvent;
 import java.awt.dnd.DropTargetListener;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
 import java.awt.event.MouseEvent;
 import java.beans.PropertyChangeEvent;
 import java.beans.PropertyChangeListener;
-import java.beans.PropertyEditor;
 import java.io.File;
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.net.URL;
 import java.net.URLConnection;
-import java.util.ArrayList;
 import java.util.Locale;
-import java.util.Map;
-import java.util.Properties;
 import java.util.UUID;
 import java.util.Vector;
 
@@ -77,25 +75,16 @@
 import javax.swing.border.BevelBorder;
 import javax.swing.plaf.InsetsUIResource;
 
-import net.karmaLab.beans.BeanProxyFactory;
-import net.karmaLab.beans.BeanReflectiveProxy;
-import net.karmaLab.beans.converters.AbstractStringConverter;
-import net.karmaLab.beans.converters.ConvertionException;
-import net.karmaLab.beans.converters.StringConverters;
-import net.karmaLab.beans.property.BeanProperty;
-import net.karmaLab.tools.SystemInformation;
+import org.jdesktop.jdic.tray.SystemTray;
+import org.jdesktop.jdic.tray.TrayIcon;
 
 import com.kysoh.tuxdroid.gadget.framework.container.GadgetInstance;
 import com.kysoh.tuxdroid.gadget.framework.container.GadgetInstanceParameters;
-import com.kysoh.tuxdroid.gadget.framework.container.GadgetParameter;
 import com.kysoh.tuxdroid.gadget.framework.container.GadgetToken;
-import com.kysoh.tuxdroid.gadget.framework.gadget.SimpleGadgetException;
 import com.kysoh.tuxdroid.gadget.framework.tester.GadgetPropertyEditor;
-
 import com.tuxdroid.cc.Listener.HandCursorChanger;
 import com.tuxdroid.cc.Listener.MenuListener;
 import com.tuxdroid.cc.Object.Playlist.AlertPlaylist;
-import com.tuxdroid.cc.Object.Playlist.GenericPlaylist;
 import com.tuxdroid.cc.Object.Playlist.RemotePlaylist;
 import com.tuxdroid.cc.Object.PseudoFileBrowser.FileBrowser;
 import com.tuxdroid.cc.Object.WebBrowser.webBrowser;
@@ -107,7 +96,6 @@
 import com.tuxdroid.cc.Utils.ResizeThread;
 import com.tuxdroid.cc.Utils.Settings;
 import com.tuxdroid.cc.Utils.SimpleAlertSettings;
-import com.tuxdroid.cc.Utils.Task;
 import com.tuxdroid.cc.Utils.TaskDefiner;
 import com.tuxdroid.cc.Utils.TuxDropTarget;
 import com.tuxdroid.cc.Utils.TuxToolsMenu;
@@ -248,7 +236,12 @@
        public boolean fromSheduler = true;
        public String currentRemoteSelectedGadget = null;
        
-       public Vector<JMenuItem> toolsMenus;
+       public Vector<JMenuItem> toolsMenus;
+       
+       public TrayIcon tray;
+       ImageIcon tray_online = new 
ImageIcon(getClass().getResource("images/tray-online.png"));
+       ImageIcon tray_offline = new 
ImageIcon(getClass().getResource("images/tray-offline.png"));
+       public JPopupMenu menuTray;
        
        /**
         * CcInterface constructor.
@@ -291,7 +284,8 @@
                
                //Create FileBrowser engine.
                file_browser = new FileBrowser(this.language);
-               file_browser.addPropertyChangeListener(this);
+               file_browser.addPropertyChangeListener(this);
+               this.setTrayIcon();
        }
        
        
@@ -299,6 +293,48 @@
                //Getting CcInterface.
                getJFrame();
                jFrame.pack(); //Packing components.
+       }
+       
+       
+       private void setTrayIcon(){
+               
+               menuTray = new JPopupMenu("A Menu");
+               
+               final JMenuItem item1 = new 
JMenuItem(language.getTrayHideCaption());
+               final JMenuItem item2 = new 
JMenuItem(language.getTrayExitCaption());
+               
+               item1.addMouseListener(new java.awt.event.MouseAdapter(){
+                       public void mousePressed(java.awt.event.MouseEvent 
event){
+                               
if(item1.getText().equals(language.getTrayHideCaption())){
+                                       
item1.setText(language.getTrayShowCaption());
+                                       jFrame.setVisible(false);
+                               }
+                               else 
if(item1.getText().equals(language.getTrayShowCaption())){
+                                       
item1.setText(language.getTrayHideCaption());
+                                       jFrame.setVisible(true);
+                               }
+                       }
+               });
+               
+               item2.addMouseListener(new java.awt.event.MouseAdapter(){
+                       public void mousePressed(java.awt.event.MouseEvent 
event){
+                               new ExitControlListener().mouseReleased(event);
+                       }
+               });
+               
+               menuTray.add(item1);
+               menuTray.add(item2);
+               
+               tray = new TrayIcon(tray_offline, "TuxDroid Cc", menuTray);
+               tray.addActionListener(new ActionListener(){
+                       public void actionPerformed(ActionEvent event){
+                               menuTray.show(null 
,tray.getLocationOnScreen().x + 4, tray.getLocationOnScreen().y);
+                       }
+               });
+               
+               //Adding tray icon.
+               SystemTray sysTray = SystemTray.getDefaultSystemTray();
+               sysTray.addTrayIcon(tray);
        }
        
        
@@ -319,7 +355,8 @@
         * @param objects
         */
        public void onRadioConnected(String value, Double delay){
-               setOnlineStatus(true);
+               setOnlineStatus(true);
+               tray.setIcon(this.tray_online);
        }
        
        /**
@@ -327,7 +364,8 @@
         * @param objects
         */
        public void onRadioDisconnected(String value, Double delay){
-               this.setOnlineStatus(false);
+               this.setOnlineStatus(false);
+               this.tray.setIcon(this.tray_offline);
        }
        
        /**
@@ -2668,7 +2706,7 @@
                file_browser.deleteTemp();
                tux.tts.stop();
                file_browser.stopPlaying(TYPE_ATTITUNES, 
FileBrowser.REMOTELIST_TYPE);
-               file_browser.getFramework().shutDownFramework();
+               //file_browser.getFramework().shutDownFramework();
                tux.server.disconnect();
                tux.destroy();
                System.gc();
@@ -2734,7 +2772,7 @@
                file_browser.deleteTemp();
                tux.tts.stop();
                file_browser.stopPlaying(TYPE_ATTITUNES, 
FileBrowser.REMOTELIST_TYPE);
-               file_browser.getFramework().shutDownFramework();
+               //file_browser.getFramework().shutDownFramework();
                tux.server.disconnect();
                tux.destroy();
                System.gc();
@@ -2973,7 +3011,6 @@
                }
                
                int playlistSelectedIndex = jListPlaylists.getSelectedIndex();
-               System.out.println("index: " + playlistSelectedIndex);
                showPlaylist(playlistSelectedIndex);
        }
 }

Modified: 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/languages/Languages.java
===================================================================
--- 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/languages/Languages.java
       2008-08-18 06:03:10 UTC (rev 1545)
+++ 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/languages/Languages.java
       2008-08-18 07:20:09 UTC (rev 1546)
@@ -257,5 +257,17 @@
                        this.get("remoteListHeaderType", "Type"),
                        this.get("remoteListHeaderAuthor", "Author")
                };
+       }
+       
+       public String getTrayHideCaption(){
+               return this.get("trayHide", "Hide");
+       }
+       
+       public String getTrayShowCaption(){
+               return this.get("trayShow", "Show");
+       }
+       
+       public String getTrayExitCaption(){
+               return this.get("trayExit", "Exit");
        }
 }
\ No newline at end of file

Modified: 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/languages/LanguagesSet/languages_en_US.properties
===================================================================
--- 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/languages/LanguagesSet/languages_en_US.properties
      2008-08-18 06:03:10 UTC (rev 1545)
+++ 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/languages/LanguagesSet/languages_en_US.properties
      2008-08-18 07:20:09 UTC (rev 1546)
@@ -46,4 +46,7 @@
 chooseAnAction=Choose an action
 remoteListHeaderName=Name
 remoteListHeaderAuthor=Author
-remoteListHeaderType=Type
\ No newline at end of file
+remoteListHeaderType=Type
+trayShow=Show
+trayHide=Hide
+trayExit=Exit
\ No newline at end of file

Modified: 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/languages/LanguagesSet/languages_fr_FR.properties
===================================================================
--- 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/languages/LanguagesSet/languages_fr_FR.properties
      2008-08-18 06:03:10 UTC (rev 1545)
+++ 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/languages/LanguagesSet/languages_fr_FR.properties
      2008-08-18 07:20:09 UTC (rev 1546)
@@ -46,4 +46,7 @@
 chooseAnAction=Choisissez une action.
 remoteListHeaderName=Nom
 remoteListHeaderAuthor=Auteur
-remoteListHeaderType=Type
\ No newline at end of file
+remoteListHeaderType=Type
+trayShow=Afficher
+trayHide=Masquer
+trayExit=Quitter
\ No newline at end of file

Added: 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/images/tray-offline.png
===================================================================
(Binary files differ)


Property changes on: 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/images/tray-offline.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/images/tray-online.png
===================================================================
(Binary files differ)


Property changes on: 
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/images/tray-online.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Tux-droid-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tux-droid-svn

Reply via email to