Builder/Window.js
authorAlan Knowles <alan@akbkhome.com>
Thu, 29 Apr 2010 04:38:03 +0000 (12:38 +0800)
committerAlan Knowles <alan@akbkhome.com>
Thu, 29 Apr 2010 04:38:03 +0000 (12:38 +0800)
Builder/Window.js [new file with mode: 0755]

diff --git a/Builder/Window.js b/Builder/Window.js
new file mode 100755 (executable)
index 0000000..f9f1a3b
--- /dev/null
@@ -0,0 +1,271 @@
+//<Script type="text/javascript">
+
+XN = imports.xnew;
+Gtk = imports.gi.Gtk;
+console = imports.console;
+Builder = imports['Builder.js']
+var _this = Builder.Window; 
+// concept:
+/**
+ * 
+ * left - tree + props
+ * right - top = preview - webkit?
+ * right - bottom = soruceview
+ * 
+ * Palete... as toolbar??? - changes depending on what you pick?
+ * 
+ * Not sure how to do Gtk version.. - our preview might be fun... = probably have to do a gtkhbox.. or something..
+ * 
+ */
+var _win;
+var _left;
+ Seed.print('window loaded');
+function create() // parent?
+{
+    
+    
+    return {
+        xnsid: 'Builder.Window',
+        xid : 'window',
+        xns : 'Gtk',
+        xtype : 'Window',
+        type: Gtk.WindowType.TOPLEVEL,
+        listeners : {
+            'delete-event' : function (widget, event) {
+                return false;
+            },
+            destroy  : function (widget) {
+                Gtk.main_quit();
+            },
+            _new  : function(self) {
+                _win = self;
+            },
+            _rendered : function()
+            {
+                Builder.MidPropTree._win.hideWin();
+                Builder.RightPalete._palete.hide();
+                
+                
+                /*
+                var pr = new Builder.Provider.Project.Roo({
+                    file : "/home/alan/test.json"
+                });
+                pr.load({
+                    scope : this,
+                    success : function()
+                    {
+                        //console.log("loaded");
+                        
+                        //Seed.quit();
+                        Builder.projects.push(pr);
+                        Builder.LeftProjectTree._model.loadProject(pr);
+                        Builder.LeftProjectTree._expander.el.set_expanded(true);
+
+                    }
+                });
+                */
+                
+                
+            }
+        },
+       
+        set : {
+            set_border_width : [ 0 ],
+            set_title : [ 'Application Builder' ],
+            set_default_size: [900, 600],
+            
+            show_all : []
+        },
+        
+        items : [
+            {
+                xtype : 'VBox',
+                xns: 'Gtk',
+                items : [
+                    
+                    {
+                        xtype : 'Include',
+                        xns : 'xnew',
+                        cls : Builder.TopMenu
+                    },
+                    
+                    
+                    {
+                        xtype : 'HPaned',
+                        xns: 'Gtk',
+                        set : {
+                                set_position : [ 400 ]
+                        },
+                        listeners : {
+                            _new : function(self) {
+                                _left = this;
+                            }
+                        },
+                        items : [
+                            // in my original design - the child elements get loaded by a 'module loader...',
+                              
+                            {
+                                xtype : 'HBox',
+                                xns: 'Gtk',
+                                
+                        
+                                items : [
+                                    
+                                   
+                                    {
+                                        xtype : 'VPaned',
+                                        xns: 'Gtk',
+                                        listeners : {
+                                            _new  : function()
+                                            {
+                                                _leftvpaned = this;
+                                            }
+                                        },
+                                        set : {
+                                            set_position : [ 300 ]
+                                        },
+                                        items : [
+                                           
+                                                     
+                                            {
+                                                xtype : 'Include',
+                                                xns : 'xnew',
+                                                cls : Builder.LeftTopPanel
+                                            },
+                                            
+                                                    
+                                            {
+                        
+                                                xns : 'Gtk',
+                                                xtype: 'VBox',
+                                                
+                                                items : [
+                                              
+                                                    {
+                                
+                                                        xns : 'Gtk',
+                                                        xtype: 'HBox',
+                                                        packing : [ 'pack_start', false, true, 0 ],
+                                                        items : [   
+                                                            {
+                                                                xtype : 'Include',
+                                                                xns : 'xnew',
+                                                                cls : Builder.LeftProps
+                                                            }
+                                                         
+                                                        ]
+                                                    },
+                                                    {
+                                                        xtype : 'Include',
+                                                        xns : 'xnew',
+                                                        cls : Builder.LeftPanel
+                                                    }
+                                                    
+                                                ]
+                                            }
+                                            //LeftProps.add()
+                                        ]
+                                    },
+                                    {
+                                        xtype : 'Include',
+                                        xns : 'xnew',
+                                        cls : Builder.MidPropTree
+                                    }
+                                    
+                                ]
+                            },
+                                    
+                                    
+                            {
+                                xtype : 'HBox',
+                                xns: 'Gtk',
+                                
+                        
+                                items : [
+                           
+                                
+                                    {
+                                        xtype : 'VPaned',
+                                        xns: 'Gtk',
+                                        set : {
+                                            set_position : [ 300 ]
+                                        },
+                                        items : [
+                                            {
+                                                xtype : 'VBox',
+                                                xns: 'Gtk',
+                                                items : [
+                                                    {
+                                                        xtype : 'Include',
+                                                        xns : 'xnew',
+                                                        cls : Builder.RightBrowser
+                                                    },
+                                                    {
+                                                        xtype : 'Expander',
+                                                        xns: 'Gtk',
+                                                        label : 'Console',
+                                                        packing : ['pack_start', false , false ],
+                                                        set : {
+                                                            //set_position : [ 300 ]
+                                                        },
+                                                        items : [
+                                                        //    Builder.ProjectTree.create()
+                                                            {
+                                                                xtype : 'Button',
+                                                                xns: 'Gtk',
+                                                                label : 'Console Goes here'
+                                                            }
+                                                        ]
+                                                    }
+                                                   
+                                                  
+                                                            
+                                                      
+                                                   
+                                                ]
+                                            },
+                                        
+                                        
+                                           
+                                            {
+                                                xtype : 'Include',
+                                                xns : 'xnew',
+                                                cls : Builder.RightEditor
+                                            }
+                                           
+                                           
+                                           
+                                          
+                                            //LeftProps.add()
+                                        ]
+                                    },
+                                    
+                                    {
+                                        xtype : 'Include',
+                                        xns : 'xnew',
+                                        cls : Builder.RightPalete
+                                    }
+                                   
+                                    
+                                    
+                                   
+                                ]
+                            }
+                        ]
+                    }
+                    
+                ]
+           }
+                    
+        ]
+    };
+    
+}
+
+  
\ No newline at end of file