DependTree/Window.js
[app.Builder.js] / DependTree / Window.js
index e40ba15..5d82e2a 100644 (file)
@@ -22,15 +22,17 @@ Window=new XObject({
             
             var ls = this.get('method-list-store');
             this.data.allmethods.forEach(function(v) {
-                ls.append( [ v ]);
+                ls.append( [ v , false, true ]);
             });
             var ls = this.get('children-list-store');
             this.data.allchildren.forEach(function(v) {
-                ls.append( [ v ]);
+                ls.append( [ v , false, true ]);
             });
             var ls = this.get('class-list-store');
+            var i =0;
             for (var c in this.data.methods) {
-                ls.append( [ c , true ]);
+                i++;
+                ls.append( [ c , true ,   true]);
             };
             
             
@@ -65,27 +67,61 @@ Window=new XObject({
                             items : [
                                 {
                                     xtype: Gtk.TreeView,
+                                    listeners : {
+                                        cursor_changed : function (self) {
+                                            if (!this.selection) {
+                                                this.selection  = this.el.get_selection();
+                                            }
+                                            
+                                            var iter = new Gtk.TreeIter();
+                                            this.selection.get_selected(this.model.el, iter);
+                                            
+                                            var tp = this.model.el.get_path(iter).to_string();
+                                            print(tp);
+                                            // 
+                                            var cls = this.model.getValue(tp, 0);
+                                            print(cls);
+                                            
+                                        }
+                                    },
                                     items : [
                                         {
-                                            xtype: Gtk.ListStore,
-                                            id : "class-list-store",
-                                            init : function() 
-                                                    {
-                                                        XObject.prototype.init.call(this);
-                                                        this.el.set_column_types ( 6, [
-                                                            GObject.TYPE_STRING, 
-                                                            GObject.TYPE_BOOLEAN, 
-                                                            GObject.TYPE_STRING, 
-                                                            GObject.TYPE_STRING, 
-                                                            GObject.TYPE_STRING, 
-                                                            GObject.TYPE_STRING 
-                                                        ] );
-                                                        
-                                                    }
+                                            xtype: Gtk.TreeModelFilter,
+                                            init : function() {
+                                                this.items[0].pack = false;
+                                                this.items[0].init();
+                                                this.list = this.items[0];
+                                                this.el = new Gtk.TreeModelFilter.c_new(this.items[0].el, null);
+                                                 this.el.set_visible_column(2);
+                                                XObject.prototype.init.call(this);
+                                                this.parent.model = this;
+                                               
+                                            },
+                                            items : [
+                                                {
+                                                    xtype: Gtk.ListStore,
+                                                    id : "class-list-store",
+                                                    pack : false,
+                                                    init : function() 
+                                                            {
+                                                                XObject.prototype.init.call(this);
+                                                                this.el.set_column_types ( 6, [
+                                                                    GObject.TYPE_STRING, 
+                                                                    GObject.TYPE_BOOLEAN, 
+                                                                    GObject.TYPE_BOOLEAN, 
+                                                                    GObject.TYPE_STRING, 
+                                                                    GObject.TYPE_STRING, 
+                                                                    GObject.TYPE_STRING 
+                                                                ] );
+                                                                
+                                                            }
+                                                }
+                                            ]
                                         },
                                         {
                                             xtype: Gtk.TreeViewColumn,
                                             title : "Class",
+                                            expand : true,
                                             items : [
                                                 {
                                                     xtype: Gtk.CellRendererText
@@ -129,12 +165,40 @@ Window=new XObject({
                                     xtype: Gtk.TreeView,
                                     items : [
                                         {
-                                            xtype: Gtk.ListStore,
-                                            id : "method-list-store"
+                                            xtype: Gtk.TreeModelFilter,
+                                            init : function() {
+                                                this.items[0].pack = false;
+                                                this.items[0].init();
+                                                this.list = this.items[0];
+                                                this.el = new Gtk.TreeModelFilter.c_new(this.items[0].el, null);
+                                                 this.el.set_visible_column(2);
+                                                XObject.prototype.init.call(this);
+                                               
+                                            },
+                                            items : [
+                                                {
+                                                    xtype: Gtk.ListStore,
+                                                    id : "method-list-store",
+                                                    init : function() 
+                                                            {
+                                                                XObject.prototype.init.call(this);
+                                                                this.el.set_column_types ( 6, [
+                                                                    GObject.TYPE_STRING, 
+                                                                    GObject.TYPE_BOOLEAN, 
+                                                                    GObject.TYPE_BOOLEAN, 
+                                                                    GObject.TYPE_STRING, 
+                                                                    GObject.TYPE_STRING, 
+                                                                    GObject.TYPE_STRING 
+                                                                ] );
+                                                                
+                                                            }
+                                                }
+                                            ]
                                         },
                                         {
                                             xtype: Gtk.TreeViewColumn,
                                             title : "Methods",
+                                            expand : true,
                                             items : [
                                                 {
                                                     xtype: Gtk.CellRendererText
@@ -144,7 +208,6 @@ Window=new XObject({
                                         {
                                             xtype: Gtk.TreeViewColumn,
                                             title : "Active",
-                                            pack : false,
                                             items : [
                                                 {
                                                     xtype: Gtk.CellRendererToggle,
@@ -179,12 +242,41 @@ Window=new XObject({
                                     xtype: Gtk.TreeView,
                                     items : [
                                         {
-                                            xtype: Gtk.ListStore,
-                                            id : "children-list-store"
+                                            xtype: Gtk.TreeModelFilter,
+                                            init : function() {
+                                                this.items[0].pack = false;
+                                                this.items[0].init();
+                                                this.list = this.items[0];
+                                                this.el = new Gtk.TreeModelFilter.c_new(this.items[0].el, null);
+                                                 this.el.set_visible_column(2);
+                                                XObject.prototype.init.call(this);
+                                               
+                                            },
+                                            items : [
+                                                {
+                                                    xtype: Gtk.ListStore,
+                                                    id : "children-list-store",
+                                                    pack : false,
+                                                    init : function() 
+                                                            {
+                                                                XObject.prototype.init.call(this);
+                                                                this.el.set_column_types ( 6, [
+                                                                    GObject.TYPE_STRING, 
+                                                                    GObject.TYPE_BOOLEAN, 
+                                                                    GObject.TYPE_BOOLEAN, 
+                                                                    GObject.TYPE_STRING, 
+                                                                    GObject.TYPE_STRING, 
+                                                                    GObject.TYPE_STRING 
+                                                                ] );
+                                                                
+                                                            }
+                                                }
+                                            ]
                                         },
                                         {
                                             xtype: Gtk.TreeViewColumn,
                                             title : "Child classes",
+                                            expand : true,
                                             items : [
                                                 {
                                                     xtype: Gtk.CellRendererText
@@ -194,7 +286,6 @@ Window=new XObject({
                                         {
                                             xtype: Gtk.TreeViewColumn,
                                             title : "Active",
-                                            pack : false,
                                             items : [
                                                 {
                                                     xtype: Gtk.CellRendererToggle,