Author: jerome
Date: 2008-12-05 11:41:22 +0100 (Fri, 05 Dec 2008)
New Revision: 3017

Modified:
   
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/cc_main.java
   
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/CcInterface.java
   
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/gadget/GadgetsFramework.java
   
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/Languages.java
   
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/LanguagesSet/languages_en_US.properties
   
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/LanguagesSet/languages_fr_FR.properties
   
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/LanguagesSet/languages_nl_NL.properties
Log:
* Added posibility to start cc on a server that is located on the network. 
Usage : tux_control_center --ip=xx.xx.xx.xx and tux_control_center --help for 
usage.

Modified: 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/cc_main.java
===================================================================
--- 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/cc_main.java
    2008-12-05 10:39:44 UTC (rev 3016)
+++ 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/cc_main.java
    2008-12-05 10:41:22 UTC (rev 3017)
@@ -23,9 +23,13 @@
 import java.awt.Font;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
+import java.io.IOException;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
 
 import javax.swing.ImageIcon;
 import javax.swing.JMenuItem;
+import javax.swing.JOptionPane;
 import javax.swing.JPopupMenu;
 import javax.swing.UIManager;
 import javax.swing.event.PopupMenuEvent;
@@ -126,14 +130,75 @@
        }
        
        
-       public static void main(String[] args){
+       public static void main(String[] args){ 
                
+               boolean useArgIP = false;
+               
+               try
+               {
+                       String arg = args[0];
+                       if(arg.equals("--help"))
+                       {
+                               System.out.println("Usage : tux_control_center 
--ip=127.0.0.1");
+                       }
+                       
+                       if(arg.contains("--ip="))
+                       {
+                               arg = arg.substring(arg.indexOf("=") + 1);
+                               //Test ip.
+                               try 
+                               {
+                                       InetAddress net = 
InetAddress.getByName(arg);
+                                       
+                                       boolean reachable = 
net.isReachable(10000);
+                                       
+                                       if(!reachable)
+                                       {
+                                               
System.out.println(String.format(" Unreachable host: %s", arg));
+                                               System.out.println("Starting 
with last registered ip");
+                                       }
+                                       else
+                                       {
+                                               CcCommons.IP = arg;
+                                               System.out.println("Starting 
with " + arg);
+                                               useArgIP = true;
+                                       }
+                               } 
+                               catch (UnknownHostException e) 
+                               {
+                                       System.out.println(String.format(" 
Unkown host : %s", arg));
+                                       System.out.println("Starting with last 
registered ip");
+                                       
+                               } 
+                               catch (IOException e) 
+                               {
+                                       System.out.println(String.format(" 
Unkown host : %s", arg));
+                                       System.out.println("Starting with last 
registered ip");
+                               } 
+                       }
+               }
+               catch(ArrayIndexOutOfBoundsException e)
+               {
+                       System.out.println("Starting with last registered ip");
+               }
+               
                CcCommons.initialize();
                CcCommons.settings = new Settings();
                
-               String ip = CcCommons.settings.getCurrentIPAdress();
-               TuxAPI tux = new TuxAPI(ip, 270);
-               tux.server.connect(TuxAPIConst.CLIENT_LEVEL_ROOT, 
"Control_Center", "tuxdroid");
+               if(!useArgIP)
+               {
+                       String ip = CcCommons.settings.getCurrentIPAdress();
+                       CcCommons.IP = ip;
+               }
+               
+               TuxAPI tux = new TuxAPI(CcCommons.IP, 270);
+               
+               if(!tux.server.connect(TuxAPIConst.CLIENT_LEVEL_ROOT, 
"Control_Center", "tuxdroid"))
+               {
+                       JOptionPane.showMessageDialog(null, "Cannot get 
connected to the tuxdroid server\n.Please," +
+                                       "make sure the control center isn't 
started yet,\nand the tuxdroid server is running", "Control center error", 
JOptionPane.CANCEL_OPTION);
+               }
+               
                boolean tuxb = tux.server.getConnected();
                
            if(tuxb){

Modified: 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/CcInterface.java
===================================================================
--- 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/CcInterface.java
        2008-12-05 10:39:44 UTC (rev 3016)
+++ 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/CcInterface.java
        2008-12-05 10:41:22 UTC (rev 3017)
@@ -36,7 +36,9 @@
 import java.beans.PropertyChangeEvent;
 import java.beans.PropertyChangeListener;
 import java.io.File;
+import java.io.IOException;
 import java.net.URL;
+import java.net.UnknownHostException;
 import java.util.Hashtable;
 import java.util.UUID;
 import java.util.Vector;
@@ -104,9 +106,12 @@
 import com.tuxdroid.cc.tools.TgfGenerator;
 import com.tuxdroid.cc.tools.ToolTipSubMenu;
 import com.tuxdroid.cc.tools.TuxToolsMenu;
+import com.tuxdroid.path.InstallerPaths;
 import com.tuxisalive.api.SThread;
 import com.tuxisalive.api.TuxAPIConst;
 
+import java.net.InetAddress;
+
 
 public class CcInterface implements PropertyChangeListener, DropTargetListener{
        
@@ -291,12 +296,13 @@
        
                if (jFrame == null) {
                        //Create JFrame and sets preferencies.
-                       jFrame = new JFrame();
+                       jFrame = new JFrame();
+                       jFrame.setSize(764, 497);
+                       jFrame.setPreferredSize(jFrame.getSize());
+                       
                        jFrame.setTitle(CcCommons.language.getTitle());
                        jFrame.setIconImage((new 
ImageIcon(CcCommons.targetClass.getResource("images/cc.png"))).getImage());
                        jFrame.setLayout(null);
-                       jFrame.setSize(764, 497);
-                       jFrame.setPreferredSize(jFrame.getSize());
                        
                        //Initialize fileBrowser Objects.
                        fBrowserGadgets = fileBrowser.setListView();
@@ -325,11 +331,12 @@
                        jFrame.setResizable(false);
                        jFrame.setLocation(100, 100);
                        jFrame.setVisible(true);
-                       jFrame.setBackground(new Color(142, 142, 142));
+                       jFrame.setBackground(new Color(142, 142, 142));
                        
+                       jFrame.setLocationRelativeTo(null);
+                       
                        alertPlaylist.addPropertyChangeListener(this);
-                       CcCommons.dispatcher.addPropertyChangeListener(this);
-                       
+                       CcCommons.dispatcher.addPropertyChangeListener(this);
                }
                return jFrame;
        }
@@ -670,6 +677,64 @@
                                
                        });
                        
+                       if(InstallerPaths.isLinux())
+                       {
+                               JMenuItem ip = new 
JMenuItem(CcCommons.language.getIpSelectionCaption());
+                               
+                               ip.addMouseListener(new 
java.awt.event.MouseAdapter(){
+                                       
+                                       public void 
mousePressed(java.awt.event.MouseEvent event)
+                                       {
+                                               popupmenu1.setVisible(false);
+                                               String SelectedIP = 
JOptionPane.showInputDialog(jFrame, CcCommons.language.getIpSelectionMessage());
+                                               
+                                               if((SelectedIP != null) && 
(SelectedIP.length() > 6) && (SelectedIP.contains(".")))
+                                               {
+                                                   
+                                                       try 
+                                                       {
+                                                               InetAddress net 
= InetAddress.getByName(SelectedIP);
+                                                               
+                                                               boolean 
reachable = net.isReachable(10000);
+                                                               
+                                                               if(!reachable)
+                                                               {
+                                                                       
JOptionPane.showConfirmDialog(jFrame, 
String.format(CcCommons.language.getUnreachableHostMsg(), SelectedIP), 
+                                                                               
                          CcCommons.language.getTitle(), 
JOptionPane.CLOSED_OPTION);
+                                                                       return;
+                                                               }
+                                                       } 
+                                                       catch 
(UnknownHostException e) 
+                                                       {
+                                                               
JOptionPane.showConfirmDialog(jFrame, 
String.format(CcCommons.language.getUnknownHostMsg(), SelectedIP), 
+                                                                               
                      CcCommons.language.getTitle(), JOptionPane.CLOSED_OPTION);
+                                                               return;
+                                                               
+                                                       } 
+                                                       catch (IOException e) 
+                                                       {
+                                                               
JOptionPane.showConfirmDialog(jFrame, 
String.format(CcCommons.language.getUnknownHostMsg(), SelectedIP), 
+                                                             
CcCommons.language.getTitle(), JOptionPane.CLOSED_OPTION);
+                                                               return;
+                                                       } 
+                                                       
+                                                       //Else, ip can be 
registered, it was found.
+                                                       
CcCommons.settings.saveIP(SelectedIP);
+                                                       
JOptionPane.showMessageDialog(jFrame, 
CcCommons.language.messages.getChangedLangageMessage());
+                                               }
+                                               
+                                               else
+                                               {
+                                                       
JOptionPane.showConfirmDialog(jFrame, CcCommons.language.getIPBadFormat(), 
CcCommons.language.getTitle(), 
+                                                                               
              JOptionPane.CLOSED_OPTION);
+                                               }
+                                       }
+                                       
+                               });
+                               
+                               advancedMenu.add(ip);
+                       }
+                       
                        advancedMenu.add(stack);
                        advancedMenu.add(debugger);
                        popupmenu1.add(advancedMenu);

Modified: 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/gadget/GadgetsFramework.java
===================================================================
--- 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/gadget/GadgetsFramework.java
    2008-12-05 10:39:44 UTC (rev 3016)
+++ 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/gadget/GadgetsFramework.java
    2008-12-05 10:41:22 UTC (rev 3017)
@@ -57,7 +57,6 @@
                public void notification(GadgetInstance source, String name,
                                Object... parameters) {
                        if(GadgetsFramework.gadget == null){
-                               System.out.println("but value is 'null'");
                                return;
                        }
                        // Example of global notification handling
@@ -189,7 +188,7 @@
                super();
                Settings settings = new Settings();
                GadgetsContainer.setLocale(settings.getLanguage(), 
settings.getSpeaker(), 
-                                               settings.getCountry(), 
settings.getPitch());
+                                               settings.getCountry(), 
settings.getPitch(), CcCommons.IP);
                container = new GadgetsContainer();
                
                // Create CC message box and listen to Gadgets and Container 
events

Modified: 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/Languages.java
===================================================================
--- 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/Languages.java
 2008-12-05 10:39:44 UTC (rev 3016)
+++ 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/Languages.java
 2008-12-05 10:41:22 UTC (rev 3017)
@@ -372,5 +372,23 @@
        
        public String getOnlineMenuCaption(){
                return this.get("onlineMenuCaption", "Online");
+       }
+       
+       
+       public String getUnknownHostMsg()
+       {
+               return this.get("unknownHost", "Unknown host %s");
+       }
+       
+       
+       public String getUnreachableHostMsg()
+       {
+               return this.get("unReachable", "Unreachable host %s");
+       }
+       
+       
+       public String getIPBadFormat()
+       {
+               return this.get("badIpFormat", "IP adress must match the 
following format x.x.x.x");
        }
 }
\ No newline at end of file

Modified: 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/LanguagesSet/languages_en_US.properties
===================================================================
--- 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/LanguagesSet/languages_en_US.properties
        2008-12-05 10:39:44 UTC (rev 3016)
+++ 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/LanguagesSet/languages_en_US.properties
        2008-12-05 10:41:22 UTC (rev 3017)
@@ -75,3 +75,7 @@
 view=View
 tools=Tools
 help=Help
+unknownHost="Unknown host %s"
+unReachable="Unreachable host %s"
+badIpFormat="IP adress must match the following format x.x.x.x"
+

Modified: 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/LanguagesSet/languages_fr_FR.properties
===================================================================
--- 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/LanguagesSet/languages_fr_FR.properties
        2008-12-05 10:39:44 UTC (rev 3016)
+++ 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/LanguagesSet/languages_fr_FR.properties
        2008-12-05 10:41:22 UTC (rev 3017)
@@ -36,7 +36,7 @@
 menuToolPosX=122
 menuViewPosX=60
 ipSelection=Se connecter � un ami
-ipSelectionEnter=Entrer l'ip � utiliser.
+ipSelectionEnter=Entrez l'ip � utiliser.
 showDebugger=Debugger
 executionModelCommand=t�l�commande
 executionModelUI=visuel
@@ -74,4 +74,7 @@
 file=Fichier
 view=Affichage
 tools=Outils
-help=Aide
\ No newline at end of file
+help=Aide
+unknownHost="H�te inconnu"
+unReachable="H�te inaccessible"
+badIpFormat="L'IP doit �tre dans le format suivant: x.x.x.x"

Modified: 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/LanguagesSet/languages_nl_NL.properties
===================================================================
--- 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/LanguagesSet/languages_nl_NL.properties
        2008-12-05 10:39:44 UTC (rev 3016)
+++ 
software_suite_v2/software/control_center/branches/new_paths/control_center/sources/com/tuxdroid/cc/settings/LanguagesSet/languages_nl_NL.properties
        2008-12-05 10:41:22 UTC (rev 3017)
@@ -74,4 +74,7 @@
 file=File
 view=View
 tools=Tools
-help=Help
\ No newline at end of file
+help=Help
+unknownHost="Onbekende host"
+unReachable="Onbereikbare host"
+badIpFormat="IP adres moet in het volgende formaat zijn x.x.x.x"


------------------------------------------------------------------------------
SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada.
The future of the web can't happen without you.  Join us at MIX09 to help
pave the way to the Next Web now. Learn more and register at
http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/
_______________________________________________
Tux-droid-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tux-droid-svn

Reply via email to