resources/RooUsage.txt
[app.Builder.js] / src / Builder4 / MainWindow.vala
index 5372350..d62b8db 100644 (file)
@@ -14,6 +14,8 @@ public class Xcls_MainWindow : Object
     }
     public Xcls_headerbar headerbar;
     public Xcls_topbarmenu topbarmenu;
+    public Xcls_openbtn openbtn;
+    public Xcls_openbackbtn openbackbtn;
     public Xcls_vbox vbox;
     public Xcls_mainpane mainpane;
     public Xcls_leftpane leftpane;
@@ -28,7 +30,6 @@ public class Xcls_MainWindow : Object
     public Xcls_projecteditview projecteditview;
     public Xcls_buttonlayout buttonlayout;
     public Xcls_backbutton backbutton;
-    public Xcls_projectbutton projectbutton;
     public Xcls_editfilebutton editfilebutton;
     public Xcls_projecteditbutton projecteditbutton;
     public Xcls_objectshowbutton objectshowbutton;
@@ -40,6 +41,7 @@ public class Xcls_MainWindow : Object
     public Xcls_statusbar statusbar;
     public Xcls_search_entry search_entry;
     public Xcls_search_results search_results;
+    public Xcls_statusbar_compilestatus_label statusbar_compilestatus_label;
     public Xcls_statusbar_errors statusbar_errors;
     public Xcls_statusbar_warnings statusbar_warnings;
     public Xcls_statusbar_depricated statusbar_depricated;
@@ -77,12 +79,16 @@ public class Xcls_MainWindow : Object
         // init method
 
         //this.el.show_all();
+            //try {
+                 this.el.set_icon_name("roobuilder");
+               //} catch (Exception e) {
+               //      print("no icon found");
+        //     }
 
         //listeners
         this.el.delete_event.connect( (   event) => {
             return false;
         });
-        this.el.button_release_event.connect( );
         this.el.destroy.connect( () =>  {
          Xcls_MainWindow.singleton().no_windows--;
          
@@ -109,18 +115,27 @@ public class Xcls_MainWindow : Object
         });
         this.el.key_release_event.connect( (event) => {
             
-            if (event.keyval == Gdk.Key.f && (event.state & Gdk.ModifierType.CONTROL_MASK ) > 0 ) {
-                print("SAVE: ctrl-f  pressed");
-                       this.search_entry.el.grab_focus();
-                return false;
-            }
-            
-              if (event.keyval == Gdk.Key.g && (event.state & Gdk.ModifierType.CONTROL_MASK ) > 0 ) {
-                print("SAVE: ctrl-g  pressed");
-                       //this.search_entry.el.grab_focus();
-                return false;
-            }
-            
+            if (this.search_entry.el.is_visible()) {
+                       if (event.keyval == Gdk.Key.f && (event.state & Gdk.ModifierType.CONTROL_MASK ) > 0 ) {
+                           print("SAVE: ctrl-f  pressed");
+                               this.search_entry.el.grab_focus();
+                           return false;
+                       }
+                       
+                       if (event.keyval == Gdk.Key.g && (event.state & Gdk.ModifierType.CONTROL_MASK ) > 0 ) {
+                           print("SAVE: ctrl-g  pressed");
+                               this.search_entry.forwardSearch(true);
+                           return false;
+                       }
+                       
+               }    
+               
+               if (event.keyval == Gdk.Key.n && (event.state & Gdk.ModifierType.CONTROL_MASK ) > 0 ) {
+                       print("SAVE: ctrl-n  pressed");
+                       this.openNewWindow();
+                       return false;
+               }
+               
            // print(event.key.keyval)
             
             return false;
@@ -129,6 +144,15 @@ public class Xcls_MainWindow : Object
     }
 
     // user defined functions
+    public void openNewWindow () {
+       Xcls_MainWindow.singleton().no_windows++;
+            var w = new Xcls_MainWindow();
+            w.ref();
+    
+            w.el.show_all();
+            w.initChildren();
+            w.windowstate.switchState(WindowState.State.FILES);
+    }
     public        void initChildren () {
         // this needs putting in a better place..
         this.windowstate = new WindowState(this);
@@ -200,6 +224,12 @@ public class Xcls_MainWindow : Object
             var child_0 = new Xcls_MenuButton4( _this );
             child_0.ref();
             this.el.add (  child_0.el  );
+            var child_1 = new Xcls_openbtn( _this );
+            child_1.ref();
+            this.el.add (  child_1.el  );
+            var child_2 = new Xcls_openbackbtn( _this );
+            child_2.ref();
+            this.el.add (  child_2.el  );
         }
 
         // user defined functions
@@ -293,13 +323,7 @@ public class Xcls_MainWindow : Object
 
             //listeners
             this.el.activate.connect( ( ) => {
-                    Xcls_MainWindow.singleton().no_windows++;
-                    var w = new Xcls_MainWindow();
-                    w.ref();
-            
-                    w.el.show_all();
-                    w.initChildren();
-                    w.windowstate.switchState(WindowState.State.FILES);
+                   _this.openNewWindow();
             });
         }
 
@@ -409,6 +433,121 @@ public class Xcls_MainWindow : Object
     }
 
 
+    public class Xcls_openbtn : Object
+    {
+        public Gtk.Button el;
+        private Xcls_MainWindow  _this;
+
+
+            // my vars (def)
+
+        // ctor
+        public Xcls_openbtn(Xcls_MainWindow _owner )
+        {
+            _this = _owner;
+            _this.openbtn = this;
+            this.el = new Gtk.Button();
+
+            // my vars (dec)
+
+            // set gobject values
+            var child_0 = new Xcls_Image12( _this );
+            child_0.ref();
+            this.el.set_image (  child_0.el  );
+
+            //listeners
+            this.el.clicked.connect( ( ) => {
+               _this.windowstate.switchState(WindowState.State.FILES);
+                  
+            
+            });
+        }
+
+        // user defined functions
+    }
+    public class Xcls_Image12 : Object
+    {
+        public Gtk.Image el;
+        private Xcls_MainWindow  _this;
+
+
+            // my vars (def)
+
+        // ctor
+        public Xcls_Image12(Xcls_MainWindow _owner )
+        {
+            _this = _owner;
+            this.el = new Gtk.Image();
+
+            // my vars (dec)
+
+            // set gobject values
+            this.el.icon_name = "document-open";
+        }
+
+        // user defined functions
+    }
+
+
+    public class Xcls_openbackbtn : Object
+    {
+        public Gtk.Button el;
+        private Xcls_MainWindow  _this;
+
+
+            // my vars (def)
+
+        // ctor
+        public Xcls_openbackbtn(Xcls_MainWindow _owner )
+        {
+            _this = _owner;
+            _this.openbackbtn = this;
+            this.el = new Gtk.Button();
+
+            // my vars (dec)
+
+            // set gobject values
+            this.el.tooltip_text = "Back";
+            this.el.visible = false;
+            var child_0 = new Xcls_Image14( _this );
+            child_0.ref();
+            this.el.set_image (  child_0.el  );
+
+            //listeners
+            this.el.clicked.connect( ( ) => {
+              
+                _this.windowstate.switchState(WindowState.State.PREVIEW);
+                
+            
+            });
+        }
+
+        // user defined functions
+    }
+    public class Xcls_Image14 : Object
+    {
+        public Gtk.Image el;
+        private Xcls_MainWindow  _this;
+
+
+            // my vars (def)
+
+        // ctor
+        public Xcls_Image14(Xcls_MainWindow _owner )
+        {
+            _this = _owner;
+            this.el = new Gtk.Image();
+
+            // my vars (dec)
+
+            // set gobject values
+            this.el.icon_name = "go-previous";
+        }
+
+        // user defined functions
+    }
+
+
 
 
     public class Xcls_vbox : Object
@@ -464,7 +603,7 @@ public class Xcls_MainWindow : Object
             var child_0 = new Xcls_leftpane( _this );
             child_0.ref();
             this.el.add1 (  child_0.el  );
-            var child_1 = new Xcls_Box17( _this );
+            var child_1 = new Xcls_Box21( _this );
             child_1.ref();
             this.el.add2 (  child_1.el  );
         }
@@ -572,7 +711,7 @@ public class Xcls_MainWindow : Object
 
 
 
-    public class Xcls_Box17 : Object
+    public class Xcls_Box21 : Object
     {
         public Gtk.Box el;
         private Xcls_MainWindow  _this;
@@ -581,7 +720,7 @@ public class Xcls_MainWindow : Object
             // my vars (def)
 
         // ctor
-        public Xcls_Box17(Xcls_MainWindow _owner )
+        public Xcls_Box21(Xcls_MainWindow _owner )
         {
             _this = _owner;
             this.el = new Gtk.Box( Gtk.Orientation.VERTICAL, 0 );
@@ -894,39 +1033,36 @@ public class Xcls_MainWindow : Object
             // my vars (dec)
 
             // set gobject values
-            var child_0 = new Xcls_BoxLayout25( _this );
+            var child_0 = new Xcls_BoxLayout29( _this );
             child_0.ref();
             this.el.layout_manager = child_0.el;
             var child_1 = new Xcls_backbutton( _this );
             child_1.ref();
             this.el.add_child (  child_1.el  );
-            var child_2 = new Xcls_projectbutton( _this );
+            var child_2 = new Xcls_editfilebutton( _this );
             child_2.ref();
             this.el.add_child (  child_2.el  );
-            var child_3 = new Xcls_editfilebutton( _this );
+            var child_3 = new Xcls_projecteditbutton( _this );
             child_3.ref();
             this.el.add_child (  child_3.el  );
-            var child_4 = new Xcls_projecteditbutton( _this );
+            var child_4 = new Xcls_objectshowbutton( _this );
             child_4.ref();
             this.el.add_child (  child_4.el  );
-            var child_5 = new Xcls_objectshowbutton( _this );
+            var child_5 = new Xcls_addpropbutton( _this );
             child_5.ref();
             this.el.add_child (  child_5.el  );
-            var child_6 = new Xcls_addpropbutton( _this );
+            var child_6 = new Xcls_addlistenerbutton( _this );
             child_6.ref();
             this.el.add_child (  child_6.el  );
-            var child_7 = new Xcls_addlistenerbutton( _this );
+            var child_7 = new Xcls_addprojectbutton( _this );
             child_7.ref();
             this.el.add_child (  child_7.el  );
-            var child_8 = new Xcls_addprojectbutton( _this );
+            var child_8 = new Xcls_addfilebutton( _this );
             child_8.ref();
             this.el.add_child (  child_8.el  );
-            var child_9 = new Xcls_addfilebutton( _this );
+            var child_9 = new Xcls_delprojectbutton( _this );
             child_9.ref();
             this.el.add_child (  child_9.el  );
-            var child_10 = new Xcls_delprojectbutton( _this );
-            child_10.ref();
-            this.el.add_child (  child_10.el  );
 
             // init method
 
@@ -951,7 +1087,7 @@ public class Xcls_MainWindow : Object
 
         // user defined functions
     }
-    public class Xcls_BoxLayout25 : Object
+    public class Xcls_BoxLayout29 : Object
     {
         public Clutter.BoxLayout el;
         private Xcls_MainWindow  _this;
@@ -960,7 +1096,7 @@ public class Xcls_MainWindow : Object
             // my vars (def)
 
         // ctor
-        public Xcls_BoxLayout25(Xcls_MainWindow _owner )
+        public Xcls_BoxLayout29(Xcls_MainWindow _owner )
         {
             _this = _owner;
             this.el = new Clutter.BoxLayout();
@@ -991,123 +1127,6 @@ public class Xcls_MainWindow : Object
 
             // my vars (dec)
 
-            // set gobject values
-            var child_0 = new Xcls_Actor27( _this );
-            child_0.ref();
-            this.el.add_child (  child_0.el  );
-
-            // init method
-
-            this.el.set_size(50,50);
-        }
-
-        // user defined functions
-    }
-    public class Xcls_Actor27 : Object
-    {
-        public GtkClutter.Actor el;
-        private Xcls_MainWindow  _this;
-
-
-            // my vars (def)
-
-        // ctor
-        public Xcls_Actor27(Xcls_MainWindow _owner )
-        {
-            _this = _owner;
-            this.el = new GtkClutter.Actor();
-
-            // my vars (dec)
-
-            // set gobject values
-            var child_0 = new Xcls_Button28( _this );
-            child_0.ref();
-
-            // init method
-
-            ((Gtk.Container)(this.el.get_widget())).add ( child_0.el);
-        }
-
-        // user defined functions
-    }
-    public class Xcls_Button28 : Object
-    {
-        public Gtk.Button el;
-        private Xcls_MainWindow  _this;
-
-
-            // my vars (def)
-
-        // ctor
-        public Xcls_Button28(Xcls_MainWindow _owner )
-        {
-            _this = _owner;
-            this.el = new Gtk.Button();
-
-            // my vars (dec)
-
-            // set gobject values
-            this.el.width_request = 50;
-            this.el.height_request = 50;
-            this.el.tooltip_text = "Back";
-            var child_0 = new Xcls_Image29( _this );
-            child_0.ref();
-            this.el.set_image (  child_0.el  );
-
-            //listeners
-            this.el.clicked.connect( ( ) => {
-              
-                _this.windowstate.switchState(WindowState.State.PREVIEW);
-                
-            
-            });
-        }
-
-        // user defined functions
-    }
-    public class Xcls_Image29 : Object
-    {
-        public Gtk.Image el;
-        private Xcls_MainWindow  _this;
-
-
-            // my vars (def)
-
-        // ctor
-        public Xcls_Image29(Xcls_MainWindow _owner )
-        {
-            _this = _owner;
-            this.el = new Gtk.Image();
-
-            // my vars (dec)
-
-            // set gobject values
-            this.el.icon_name = "go-previous";
-        }
-
-        // user defined functions
-    }
-
-
-
-
-    public class Xcls_projectbutton : Object
-    {
-        public Clutter.Actor el;
-        private Xcls_MainWindow  _this;
-
-
-            // my vars (def)
-
-        // ctor
-        public Xcls_projectbutton(Xcls_MainWindow _owner )
-        {
-            _this = _owner;
-            _this.projectbutton = this;
-            this.el = new Clutter.Actor();
-
-            // my vars (dec)
-
             // set gobject values
             var child_0 = new Xcls_Actor31( _this );
             child_0.ref();
@@ -1166,14 +1185,20 @@ public class Xcls_MainWindow : Object
             // set gobject values
             this.el.width_request = 50;
             this.el.height_request = 50;
+            this.el.tooltip_text = "Back";
             var child_0 = new Xcls_Image33( _this );
             child_0.ref();
             this.el.set_image (  child_0.el  );
 
             //listeners
             this.el.clicked.connect( ( ) => {
-               _this.windowstate.switchState(WindowState.State.FILES);
-                  
+               if (_this.windowstate.state == WindowState.State.FILEPROJECT) {
+                
+                    _this.windowstate.switchState(WindowState.State.FILES);
+                 } else { 
+                   _this.windowstate.switchState(WindowState.State.PREVIEW);
+                }
+                
             
             });
         }
@@ -1197,7 +1222,7 @@ public class Xcls_MainWindow : Object
             // my vars (dec)
 
             // set gobject values
-            this.el.icon_name = "document-open";
+            this.el.icon_name = "go-previous";
         }
 
         // user defined functions
@@ -1413,7 +1438,13 @@ public class Xcls_MainWindow : Object
 
             //listeners
             this.el.clicked.connect( ( ) => {
-                 _this.windowstate.switchState(WindowState.State.PROJECT);
+                 
+                 if (_this.windowstate.state == WindowState.State.FILES) {
+                 
+                    _this.windowstate.switchState(WindowState.State.FILEPROJECT);
+                 } else {
+                    _this.windowstate.switchState(WindowState.State.PROJECT);
+                }     
                
             
             
@@ -2322,7 +2353,7 @@ public class Xcls_MainWindow : Object
 
     public class Xcls_search_entry : Object
     {
-        public Gtk.Entry el;
+        public Gtk.SearchEntry el;
         private Xcls_MainWindow  _this;
 
 
@@ -2333,7 +2364,7 @@ public class Xcls_MainWindow : Object
         {
             _this = _owner;
             _this.search_entry = this;
-            this.el = new Gtk.Entry();
+            this.el = new Gtk.SearchEntry();
 
             // my vars (dec)
 
@@ -2346,11 +2377,24 @@ public class Xcls_MainWindow : Object
                 this.el.override_font(description);
 
             //listeners
+            this.el.key_press_event.connect( (event) => {
+                
+               if (event.keyval == Gdk.Key.Return) {
+                       this.forwardSearch(false);
+                   return true;
+            
+               }    
+               // print(event.key.keyval)
+                
+                return false;
+            
+            });
             this.el.changed.connect( () => {
                if (this.el.text == "") {
+                       _this.search_results.el.hide();
                        return;
                }
-               Gee.ArrayList<int> res = new Gee.ArrayList<int>();
+               var res = 0;
                switch(_this.windowstate.state) {
                        case WindowState.State.CODEONLY:
                        case WindowState.State.CODE:
@@ -2361,13 +2405,16 @@ public class Xcls_MainWindow : Object
                        case WindowState.State.PREVIEW:
                                if (_this.windowstate.file.xtype == "Gtk") {
                                         res = _this.windowstate.window_gladeview.search(this.el.text);
+                               } else { 
+                                        res = _this.windowstate.window_rooview.search(this.el.text);                   
                                }
                        
                        
                                break;
                }
-               if (res.size > 0) {
-                       _this.search_results.el.label = "%d Matches".printf(res.size);
+               _this.search_results.el.show();
+               if (res > 0) {
+                       _this.search_results.el.label = "%d Matches".printf(res);
                } else {
                        _this.search_results.el.label = "No Matches";
                }
@@ -2378,6 +2425,25 @@ public class Xcls_MainWindow : Object
         }
 
         // user defined functions
+        public void forwardSearch (bool change_focus) {
+               switch(_this.windowstate.state) {
+                       case WindowState.State.CODEONLY:
+                       case WindowState.State.CODE:
+                               // search the code being edited..
+                               _this.windowstate.code_editor.forwardSearch(change_focus);
+                               
+                               break;
+                       case WindowState.State.PREVIEW:
+                               if (_this.windowstate.file.xtype == "Gtk") {
+                                       _this.windowstate.window_gladeview.forwardSearch(change_focus);
+                               } else { 
+                                        _this.windowstate.window_rooview.forwardSearch(change_focus);
+                               }
+                       
+                               break;
+               }
+               
+        }
     }
 
     public class Xcls_MenuBar70 : Object
@@ -2400,7 +2466,7 @@ public class Xcls_MainWindow : Object
             var child_0 = new Xcls_search_results( _this );
             child_0.ref();
             this.el.add (  child_0.el  );
-            var child_1 = new Xcls_MenuItem73( _this );
+            var child_1 = new Xcls_statusbar_compilestatus_label( _this );
             child_1.ref();
             this.el.add (  child_1.el  );
             var child_2 = new Xcls_statusbar_errors( _this );
@@ -2486,7 +2552,7 @@ public class Xcls_MainWindow : Object
     }
 
 
-    public class Xcls_MenuItem73 : Object
+    public class Xcls_statusbar_compilestatus_label : Object
     {
         public Gtk.MenuItem el;
         private Xcls_MainWindow  _this;
@@ -2495,9 +2561,10 @@ public class Xcls_MainWindow : Object
             // my vars (def)
 
         // ctor
-        public Xcls_MenuItem73(Xcls_MainWindow _owner )
+        public Xcls_statusbar_compilestatus_label(Xcls_MainWindow _owner )
         {
             _this = _owner;
+            _this.statusbar_compilestatus_label = this;
             this.el = new Gtk.MenuItem();
 
             // my vars (dec)