DependTree/Window.js
[app.Builder.js] / DependTree / Window.js
1 Gtk = imports.gi.Gtk;
2 Gdk = imports.gi.Gdk;
3 Pango = imports.gi.Pango;
4 GLib = imports.gi.GLib;
5 Gio = imports.gi.Gio;
6 GObject = imports.gi.GObject;
7 GtkSource = imports.gi.GtkSource;
8 WebKit = imports.gi.WebKit;
9 Vte = imports.gi.Vte;
10 GtkClutter = imports.gi.GtkClutter;
11 Gdl = imports.gi.Gdl;
12 console = imports.console;
13 XObject = imports.XObject.XObject;
14 Window=new XObject({
15     xtype: Gtk.Window,
16     listeners : {
17         show : function (self) {
18             print("SHOW");
19             var BuildLists = imports['BuildLists.js'].BuildLists;
20             this.data = new BuildLists();
21             print(JSON.stringify(this.data.allmethods, null,4));
22             
23             var ls = this.get('method-list-store');
24             this.data.allmethods.forEach(function(v) {
25                 ls.append( [ v ]);
26             });
27             var ls = this.get('children-list-store');
28             this.data.allchildren.forEach(function(v) {
29                 ls.append( [ v ]);
30             });
31             var ls = this.get('class-list-store');
32             for (var c in this.data.methods) {
33                 ls.append( [ c , true ]);
34             };
35             
36             
37             
38         }
39     },
40     default_height : 500,
41     default_width : 600,
42     init : function() {
43         XObject.prototype.init.call(this);
44         this.el.show_all();
45     },
46     items : [
47         {
48             xtype: Gtk.VBox,
49             items : [
50                 {
51                     xtype: Gtk.HBox,
52                     pack : "pack_start,false,false",
53                     items : [
54                         {
55                             xtype: Gtk.Button,
56                             label : "Reset"
57                         }
58                     ]
59                 },
60                 {
61                     xtype: Gtk.HBox,
62                     items : [
63                         {
64                             xtype: Gtk.ScrolledWindow,
65                             items : [
66                                 {
67                                     xtype: Gtk.TreeView,
68                                     items : [
69                                         {
70                                             xtype: Gtk.ListStore,
71                                             id : "class-list-store",
72                                             init : function() 
73                                                     {
74                                                         XObject.prototype.init.call(this);
75                                                         this.el.set_column_types ( 6, [
76                                                             GObject.TYPE_STRING, 
77                                                             GObject.TYPE_BOOLEAN, 
78                                                             GObject.TYPE_STRING, 
79                                                             GObject.TYPE_STRING, 
80                                                             GObject.TYPE_STRING, 
81                                                             GObject.TYPE_STRING 
82                                                         ] );
83                                                         
84                                                     }
85                                         },
86                                         {
87                                             xtype: Gtk.TreeViewColumn,
88                                             title : "Class",
89                                             items : [
90                                                 {
91                                                     xtype: Gtk.CellRendererText
92                                                 }
93                                             ]
94                                         },
95                                         {
96                                             xtype: Gtk.TreeViewColumn,
97                                             title : "Active",
98                                             items : [
99                                                 {
100                                                     xtype: Gtk.CellRendererToggle,
101                                                     listeners : {
102                                                         toggled : function (self, path) {
103                                                             print("TOGGLE");
104                                                             // this.list
105                                                         
106                                                         
107                                                              
108                                                             var old = this.list.getValue(path, 1);
109                                                            // print(JSON.stringify(old));
110                                                             this.list.setValue(path, 1, old ? false : true)
111                                                             
112                                                             
113                                                             
114                                                             
115                                                         }
116                                                     },
117                                                     activatable : true
118                                                 }
119                                             ]
120                                         }
121                                     ]
122                                 }
123                             ]
124                         },
125                         {
126                             xtype: Gtk.ScrolledWindow,
127                             items : [
128                                 {
129                                     xtype: Gtk.TreeView,
130                                     items : [
131                                         {
132                                             xtype: Gtk.ListStore,
133                                             id : "method-list-store",
134                                             init : function() 
135                                                     {
136                                                         XObject.prototype.init.call(this);
137                                                         this.el.set_column_types ( 6, [
138                                                             GObject.TYPE_STRING, 
139                                                             GObject.TYPE_BOOLEAN, 
140                                                             GObject.TYPE_STRING, 
141                                                             GObject.TYPE_STRING, 
142                                                             GObject.TYPE_STRING, 
143                                                             GObject.TYPE_STRING 
144                                                         ] );
145                                                         
146                                                     }
147                                         },
148                                         {
149                                             xtype: Gtk.TreeViewColumn,
150                                             title : "Methods",
151                                             items : [
152                                                 {
153                                                     xtype: Gtk.CellRendererText
154                                                 }
155                                             ]
156                                         },
157                                         {
158                                             xtype: Gtk.TreeViewColumn,
159                                             title : "Active",
160                                             items : [
161                                                 {
162                                                     xtype: Gtk.CellRendererToggle,
163                                                     listeners : {
164                                                         toggled : function (self, path) {
165                                                             print("TOGGLE");
166                                                             // this.list
167                                                         
168                                                         
169                                                              
170                                                             var old = this.list.getValue(path, 1);
171                                                            // print(JSON.stringify(old));
172                                                             this.list.setValue(path, 1, old ? false : true)
173                                                             
174                                                             
175                                                             
176                                                             
177                                                         }
178                                                     },
179                                                     activatable : true
180                                                 }
181                                             ]
182                                         }
183                                     ]
184                                 }
185                             ]
186                         },
187                         {
188                             xtype: Gtk.ScrolledWindow,
189                             items : [
190                                 {
191                                     xtype: Gtk.TreeView,
192                                     items : [
193                                         {
194                                             xtype: Gtk.ListStore,
195                                             id : "children-list-store",
196                                             init : function() 
197                                                     {
198                                                         XObject.prototype.init.call(this);
199                                                         this.el.set_column_types ( 6, [
200                                                             GObject.TYPE_STRING, 
201                                                             GObject.TYPE_BOOLEAN, 
202                                                             GObject.TYPE_STRING, 
203                                                             GObject.TYPE_STRING, 
204                                                             GObject.TYPE_STRING, 
205                                                             GObject.TYPE_STRING 
206                                                         ] );
207                                                         
208                                                     }
209                                         },
210                                         {
211                                             xtype: Gtk.TreeViewColumn,
212                                             title : "Child classes",
213                                             items : [
214                                                 {
215                                                     xtype: Gtk.CellRendererText
216                                                 }
217                                             ]
218                                         },
219                                         {
220                                             xtype: Gtk.TreeViewColumn,
221                                             title : "Active",
222                                             items : [
223                                                 {
224                                                     xtype: Gtk.CellRendererToggle,
225                                                     listeners : {
226                                                         toggled : function (self, path) {
227                                                             print("TOGGLE");
228                                                             // this.list
229                                                         
230                                                         
231                                                              
232                                                             var old = this.list.getValue(path, 1);
233                                                            // print(JSON.stringify(old));
234                                                             this.list.setValue(path, 1, old ? false : true)
235                                                             
236                                                             
237                                                             
238                                                             
239                                                         }
240                                                     },
241                                                     activatable : true
242                                                 }
243                                             ]
244                                         }
245                                     ]
246                                 }
247                             ]
248                         }
249                     ]
250                 }
251             ]
252         }
253     ]
254 });
255 Window.init();
256 XObject.cache['/Window'] = Window;