diff --git a/bin/config.xml b/bin/config.xml
index c751d01db994d9d8da027868bd4b8fc54db111db..a6e5f8065526e7de126a1bed4fa629720018a964 100755
--- a/bin/config.xml
+++ b/bin/config.xml
@@ -64,7 +64,7 @@
 
 
 
-<LastWindowAttributes x="518" y="51" width="790" height="594" max="false" />
+<LastWindowAttributes x="-1" y="0" width="1368" height="769" max="true" />
 
 
 </TURTLECONFIGURATION>
diff --git a/src/ui/IconManager.java b/src/ui/IconManager.java
index a9f1440e51ba9053cb603a51d9e614a43e50d2a5..e84aae3b71c076a6660097c365627c2e48b112c7 100755
--- a/src/ui/IconManager.java
+++ b/src/ui/IconManager.java
@@ -149,7 +149,7 @@ public class IconManager {
     public static ImageIcon imgic5060, imgic5062, imgic5064, imgic5066;
 
     public static ImageIcon imgic5100, imgic5102, imgic5104, imgic5106, imgic5108;
-    public static ImageIcon imgic5110, imgic5112;
+    public static ImageIcon imgic5110, imgic5112, imgic5113;;
 
     // Delegate ports image removed, by Solange
     //public static ImageIcon imgic2102;
@@ -565,6 +565,7 @@ public class IconManager {
     private static String icon5108 = "images/method.gif";
     private static String icon5110 = "images/invariant.gif";
     private static String icon5112 = "images/invariantbig.gif";
+    private static String icon5113 = "images/toolbarButtonGraphics/general/Zoom16.gif";
 
     public IconManager() {
 
@@ -955,6 +956,7 @@ public class IconManager {
 
         imgic5110 = getIcon(icon5110);
         imgic5112 = getIcon(icon5112);
+        imgic5113 = getIcon(icon5113);
     }
 
 } // Class
diff --git a/src/ui/JToolBarMainTurtle.java b/src/ui/JToolBarMainTurtle.java
index f414dfe788c9545f296ca58e21c197f20af484af..77260b3a7b101ca3873cc27ddbbba3025bac5aec 100755
--- a/src/ui/JToolBarMainTurtle.java
+++ b/src/ui/JToolBarMainTurtle.java
@@ -64,7 +64,7 @@ public  class JToolBarMainTurtle extends JToolBar implements ActionListener
     // Other
     JButton genrtlotos, genlotos, genuppaal, gendesign;
     JButton checkcode, simulation, validation;
-    JButton oneClickrtlotos, onclicklotos, gensystemc, simusystemc, gentml, genC, genjava, nc;
+    JButton oneClickrtlotos, onclicklotos, gensystemc, simusystemc, gentml, genC, genjava, nc,externalSearch;
 
     JTextField search;
 
@@ -246,7 +246,12 @@ public  class JToolBarMainTurtle extends JToolBar implements ActionListener
         }
 
         addSeparator();
-
+	
+	//@author : Huy TRUONG
+	//add external search button into menu bar
+	externalSearch = add(mgui.actions[TGUIAction.ACT_EXTERNAL_SEARCH]);
+	externalSearch.addMouseListener(mgui.mouseHandler);
+	//--
 
         if ((ConfigurationTTool.ExternalCommand1.length() > 0) && (ConfigurationTTool.ExternalCommand1Host.length() > 0)) {
             button = add(mgui.actions[TGUIAction.EXTERNAL_ACTION_1]);
diff --git a/src/ui/MainGUI.java b/src/ui/MainGUI.java
index 5c25d0db6e5eaaeb1afaef2b5ba29d08f59207f0..d9840a66a5372089fa47a17e54142d212048cb05 100755
--- a/src/ui/MainGUI.java
+++ b/src/ui/MainGUI.java
@@ -610,7 +610,9 @@ public  class MainGUI implements ActionListener, WindowListener, KeyListener, Pe
             if (mainBar != null) {
                 mainBar.activateSearch(true);
             }
-
+	    //@author: Huy TRUONG
+	    actions[TGUIAction.ACT_EXTERNAL_SEARCH].setEnabled(true);
+	    //--
             break;
         case MODEL_OK:
             actions[TGUIAction.ACT_SAVE_TIF].setEnabled(true);
@@ -2923,6 +2925,13 @@ public  class MainGUI implements ActionListener, WindowListener, KeyListener, Pe
           }*/
     }
 
+    //@author: Huy TRUONG
+    //open a new External Search Dialog
+    public void showExternalSearch(){
+	JDialogSearchBox jsb = new JDialogSearchBox(frame,"External Search", new ArrayList());
+    }
+    //--
+
     public void aboutVersion() {
         /*JOptionPane.showMessageDialog(frame,
           "TTool version 0.2 - Ludovic Apvrille",
@@ -7479,6 +7488,13 @@ public  class MainGUI implements ActionListener, WindowListener, KeyListener, Pe
             lastDiag();
         } else if (command.equals(actions[TGUIAction.ACT_ABOUT].getActionCommand())) {
             aboutVersion();
+	} 
+	//@author: Huy TRUONG.
+	//open a external search box for ACT_EXTERNAL_SEARCH
+	else if (command.equals(actions[TGUIAction.ACT_EXTERNAL_SEARCH].getActionCommand())) {
+	    showExternalSearch();
+	//--
+
         } else if (command.equals(actions[TGUIAction.ACT_TTOOL_CONFIGURATION].getActionCommand())) {
             showTToolConfiguration();
         } else if (command.equals(actions[TGUIAction.ACT_TURTLE_WEBSITE].getActionCommand())) {
diff --git a/src/ui/TGUIAction.java b/src/ui/TGUIAction.java
index a51eb4885049b665d38bbdafa175ebf0a158cad9..a4eabde44ddf429e964832e0288b6b5b354db4ce 100755
--- a/src/ui/TGUIAction.java
+++ b/src/ui/TGUIAction.java
@@ -548,7 +548,12 @@ public class TGUIAction extends AbstractAction {
     //Action for the help button created by Solange
     public static final int PRUEBA_1 = 205;
 
-    public static final int NB_ACTION = 414;
+    //Action for the external Search 
+    //@author Huy TRUONG.
+    public static final int ACT_EXTERNAL_SEARCH = 414;
+    //--
+
+    public static final int NB_ACTION = 415;
 
     private  static final TAction [] actions = new TAction[NB_ACTION];
 
@@ -654,6 +659,9 @@ public class TGUIAction extends AbstractAction {
         actions[ACT_GEN_PROVERIF] = new TAction("gen_proverif-command", "Generate ProVerif Code", IconManager.imgic34, IconManager.imgic35, "Generate ProVerif specification",  "Generates a ProVerif specification from AVATAR diagrams", '0');
         actions[ACT_GEN_JAVA] = new TAction("gen_java-command", "Generate JAVA", IconManager.imgic38, IconManager.imgic39, "Generate JAVA",  "Generates Java code from TURTLE diagrams", 0);
         actions[ACT_SIMU_JAVA] = new TAction("gen_simujava-command", "Java-based simulation", IconManager.imgic38, IconManager.imgic39, "JAVA-based simualtion",  "Simulate diagrams using Java language", 0);
+//@author: Huy TRUONG
+//action for button External Search
+        actions[ACT_EXTERNAL_SEARCH] = new TAction("external_search-command", "External Search", IconManager.imgic5113, IconManager.imgic5113, "External Search",  "External Search Interface", 0);
         actions[ACT_GEN_SYSTEMC] = new TAction("gen_systemc-command", "Generate simulation code", IconManager.imgic61, IconManager.imgic61, "Generate code for simulation",  "Generates code for simulation", 0);
         actions[ACT_SIMU_SYSTEMC] = new TAction("simu_systemc", "Interactive Simulation", IconManager.imgic61, IconManager.imgic61, "Interactive simulation",  "Interactive simulation ", 0);
         actions[ACT_GEN_TMLTXT] = new TAction("gen_tmltxt-command", "Generate TML / TMAP in text format", IconManager.imgic66, IconManager.imgic66, "Generate TML / TMAP in text format",  "Generates TML / TMAP code in text format from TML Design diagrams", 0);