FixBug.bjs
[gitlive] / FixBug.bjs
1 {
2     "id": "file-gtk-4",
3     "name": "FixBug",
4     "parent": "",
5     "title": false,
6     "path": "/home/alan/gitlive/gitlive/FixBug.bjs",
7     "items": [
8         {
9             "listeners": {
10                 "destroy_event": "function (self, event) {\n     this.el.hide();\n                return false;\n}",
11                 "show": "function (self) {\nprint(\"ON SHOW!\");\n\n    this.el.fullscreen();\n    this.el.grab_focus();\n    this.el.set_keep_above(true);\n}"
12             },
13             "border_width": 3,
14             "default_height": 400,
15             "default_width": 900,
16             "title": "Select Active Bug",
17             "xtype": "Window",
18             "|deletable": "true",
19             "|modal": "true",
20             "|show": "function(c) {\n    \n    if (!this.el) {\n        this.init();\n    }\n    var _this = this;\n    /*[ 'xtype'  ].forEach(function(k) {\n        _this.get(k).setValue(typeof(c[k]) == 'undefined' ? '' : c[k]);\n    });\n\t// shouild set path..\n    */\n\n    \n    this.el.show_all();\n   // this.get('/ok_button').el.set_sensitive(false);\n    \n    // block until we return.\n    //    var run_ret = this.el.run();\n    //    if (run_ret < 1 ) {\n    //        return false;\n    //    }\n    //    print(\"RUN RETURN : \" + run_ret);\n    \n    //print(JSON.stringify(this.get('bug').getValue()));\n    //return this.get('bug').getValue();\n    //this.success = c.success;\n}\n",
21             "|xns": "Gtk",
22             "items": [
23                 {
24                     "pack": "add",
25                     "xtype": "VBox",
26                     "|xns": "Gtk",
27                     "items": [
28                         {
29                             "pack": "pack_start,false,true,3",
30                             "xtype": "HBox",
31                             "|xns": "Gtk",
32                             "items": [
33                                 {
34                                     "label": "On this project:",
35                                     "xtype": "Label",
36                                     "|xns": "Gtk"
37                                 },
38                                 {
39                                     "listeners": {
40                                         "changed": "function (self) {\n    print(\"store: active id = \" + this.el.get_active_id());\n    this.get('/ticket-store').reload();\n    \n    \n}"
41                                     },
42                                     "id": "project-select",
43                                     "xtype": "ComboBox",
44                                     "|init": "function() {\n     this.el = new Gtk.ComboBox.with_entry();\n                                \n                                \n    this.model  = new XObject(this.model);\n    this.model.init();\n    this.el.set_model(this.model.el);\n    this.el.set_entry_text_column (0);\n    XObject.prototype.init.call(this);\n    \n     var t = this;\n    imports.Projects.Projects.fetch(  function(res) { \n         t.load(res);\n    });\n}\n",
45                                     "|load": "function(tr) {\n      this.model.el.clear();\n      this.raw_data = tr;                     \n         for(var i =0 ; i < tr.length; i++) {\n            var ret = {  };\n            this.model.el.append(ret);\n            //print(JSON.stringify(ret,null,4));\n           \n            this.model.el.set_value(ret.iter, 0, '' + tr[i].code + \" - \" + tr[i].name );\n            this.model.el.set_value(ret.iter, 1, '' + tr[i].id  );\n     \n            \n        }     \n        \n}\n",
46                                     "|xns": "Gtk",
47                                     "items": [
48                                         {
49                                             "*prop": "model",
50                                             "id": "project-store",
51                                             "xtype": "ListStore",
52                                             "|init": "function() {\n    XObject.prototype.init.call(this);\n    this.el.set_column_types ( 3, [\n           GObject.TYPE_STRING, // file  \n          GObject.TYPE_STRING, // added\n          GObject.TYPE_STRING, // removed\n      ] );\n}\n",
53                                             "|xns": "Gtk"
54                                         }
55                                     ]
56                                 },
57                                 {
58                                     "listeners": {
59                                         "button_press_event": "function (self, event) {\n \n    FixBug.el.hide();\n}"
60                                     },
61                                     "height_request": 90,
62                                     "label": "Not working on Project",
63                                     "pack": "add",
64                                     "xtype": "Button",
65                                     "|xns": "Gtk"
66                                 },
67                                 {
68                                     "listeners": {
69                                         "button_press_event": "function (self, event) {\n\n   FixBug.el.hide();\n}"
70                                     },
71                                     "id": "ok_button",
72                                     "label": "Working on Selected Ticket",
73                                     "pack": "add",
74                                     "xtype": "Button",
75                                     "|xns": "Gtk"
76                                 }
77                             ]
78                         },
79                         {
80                             "pack": "pack_end,true,true,3",
81                             "xtype": "HPaned",
82                             "|xns": "Gtk",
83                             "items": [
84                                 {
85                                     "pack": "add",
86                                     "width_request": 400,
87                                     "xtype": "VBox",
88                                     "|xns": "Gtk",
89                                     "items": [
90                                         {
91                                             "pack": "pack_start,false,true,3",
92                                             "xtype": "HBox",
93                                             "|xns": "Gtk",
94                                             "items": [
95                                                 {
96                                                     "listeners": {
97                                                         "key_release_event": "function (self, event) {\n    print(JSON.stringify(event,null,4)); //.keyval);\n    return true;\n}"
98                                                     },
99                                                     "id": "search-entry",
100                                                     "pack": "pack_start,true,true,3",
101                                                     "xtype": "Entry",
102                                                     "|xns": "Gtk"
103                                                 },
104                                                 {
105                                                     "listeners": {
106                                                         "clicked": "function (self) {\n    var active_id = this.get('/project-select').el.get_active();\n     \n    var project_id = this.get('/project-select').raw_data[active_id].id;\n    \n    var str = this.get('/search-entry').el.get_text();\n    \n    print(str);\n    \n    var _t = this;\n    \n    imports.Tasks.Tasks.query({\n        project_id : project_id,\n        'query[filter]' : 'me',\n        'query[search]' : str\n    }, function(res) { \n       // print(JSON.stringify(res,null,4));\n        _t.get('/ticket-store').loadData(res);\n    });\n}"
107                                                     },
108                                                     "label": "Search",
109                                                     "pack": "pack_end,false,true,3",
110                                                     "xtype": "Button",
111                                                     "|use_stock": "true",
112                                                     "|xns": "Gtk"
113                                                 }
114                                             ]
115                                         },
116                                         {
117                                             "pack": "pack_end,true,true,3",
118                                             "xtype": "ScrolledWindow",
119                                             "|shadow_type": "Gtk.ShadowType.IN",
120                                             "|xns": "Gtk",
121                                             "items": [
122                                                 {
123                                                     "|fixed_height_mode": "true",
124                                                     "id": "ticket-view",
125                                                     "pack": "add",
126                                                     "xtype": "TreeView",
127                                                     "|can_focus": "true",
128                                                     "|headers_visible": "false",
129                                                     "|init": "function() {\n    XObject.prototype.init.call(this);\n    var description = new Pango.FontDescription.c_new();\n    description.set_size(10000);\n    this.el.modify_font(description);\n\n    this.selection = this.el.get_selection();\n    this.selection.set_mode( Gtk.SelectionMode.SINGLE);\n    var _t = this;\n\n    // is this really needed??\n    this.selection.signal['changed'].connect(function() {\n        print('selection changed');\n    \n\n    });\n\n}\n",
130                                                     "|xns": "Gtk",
131                                                     "items": [
132                                                         {
133                                                             "id": "ticket-store",
134                                                             "pack": "set_model",
135                                                             "xtype": "ListStore",
136                                                             "|columns": "  [\n        GObject.TYPE_STRING, // title \n        GObject.TYPE_STRING, // tip\n        GObject.TYPE_STRING // source..\n] ",
137                                                             "|init": "function() {\n    XObject.prototype.init.call(this);\n\n    this.el.set_column_types ( 2, [\n        GObject.TYPE_STRING,  // real key\n        GObject.TYPE_STRING // real type\n        \n        \n    ] );\n\n\n    \n    // var t = this;\n    //imports.Projects.Projects.fetch(  function(res) { \n    //    t.loadData(res);\n   // });\n        \n                                \n}\n",
138                                                             "|loadData": "function (data) {\n        print(\"loading data\");\n                                    \n    var el = this.el;\n    this.el.clear();\n    data.forEach(function(p) {\n        var ret = {};\n        el.append(ret);\n       //print(\"ADD \" + p.name);\n         \n        el.set_value(ret.iter, 0, p.id);\n        el.set_value(ret.iter, 1,   '<b>#' + p.id + '</b>' + \n            '[' + p.status_name + '] <b>'   + p.summary  + \"</b>\\n\"  +\n             '<span color=\"#666\">' + p.description.split(\"\\n\").slice(0,3).join(\"\\n\") +\n             '</span>'\n             \n              );\n        \n    });\n              \n                                     \n}\n",
139                                                             "|reload": "function() {\n \n    var active_id = this.get('/project-select').el.get_active();\n     \n    var project_id = this.get('/project-select').raw_data[active_id].id;\n    \n    var _t = this;\n    \n    imports.Tasks.Tasks.query({\n        project_id : project_id,\n        'query[filter]' : 'me'\n    }, function(res) { \n        print(JSON.stringify(res,null,4));\n        _t.loadData(res);\n    });\n     \n    \n}\n",
140                                                             "|xns": "Gtk"
141                                                         },
142                                                         {
143                                                             "pack": "append_column",
144                                                             "xtype": "TreeViewColumn",
145                                                             "|sizing": "Gtk.TreeViewColumnSizing.FIXED",
146                                                             "|init": "function() {\n    XObject.prototype.init.call(this);\n    this.el.add_attribute(this.items[0].el , 'markup', 1 );\n}\n",
147                                                             "|xns": "Gtk",
148                                                             "items": [
149                                                                 {
150                                                                     "pack": "pack_start",
151                                                                     "xtype": "CellRendererText",
152                                                                     "|xns": "Gtk"
153                                                                 }
154                                                             ]
155                                                         }
156                                                     ]
157                                                 }
158                                             ]
159                                         }
160                                     ]
161                                 },
162                                 {
163                                     "pack": "add",
164                                     "xtype": "VBox",
165                                     "|xns": "Gtk",
166                                     "items": [
167                                         {
168                                             "pack": "pack_start,false,true,3",
169                                             "xtype": "HBox",
170                                             "|xns": "Gtk",
171                                             "items": [
172                                                 {
173                                                     "label": "I am doing this:",
174                                                     "pack": "pack_start,false,true,3",
175                                                     "xtype": "Label",
176                                                     "|xns": "Gtk"
177                                                 },
178                                                 {
179                                                     "pack": "pack_start,true,true,3",
180                                                     "xtype": "Entry",
181                                                     "|xns": "Gtk"
182                                                 }
183                                             ]
184                                         },
185                                         {
186                                             "pack": "pack_start,false,true,3",
187                                             "xtype": "HBox",
188                                             "|xns": "Gtk",
189                                             "items": [
190                                                 {
191                                                     "label": "Since:",
192                                                     "pack": "pack_start,false,true,3",
193                                                     "xtype": "Label",
194                                                     "|xns": "Gtk"
195                                                 },
196                                                 {
197                                                     "pack": "pack_start,false,false,3",
198                                                     "xtype": "Entry",
199                                                     "|width_request": 80,
200                                                     "|xns": "Gtk"
201                                                 },
202                                                 {
203                                                     "label": "Until",
204                                                     "pack": "pack_start,false,true,3",
205                                                     "xtype": "Label",
206                                                     "|xns": "Gtk"
207                                                 },
208                                                 {
209                                                     "pack": "pack_start,true,true,3",
210                                                     "xtype": "Entry",
211                                                     "|xns": "Gtk"
212                                                 }
213                                             ]
214                                         },
215                                         {
216                                             "|xns": "Gtk",
217                                             "xtype": "ScrolledWindow",
218                                             "pack": "add",
219                                             "id": "RightEditor",
220                                             "items": [
221                                                 {
222                                                     "|editable": "false",
223                                                     "id": "view",
224                                                     "indent_width": 4,
225                                                     "pack": "add",
226                                                     "xtype": "TextView",
227                                                     "|auto_indent": true,
228                                                     "|init": "function() {\n    XObject.prototype.init.call(this);\n    var description = Pango.font_description_from_string(\"monospace\");\n\n    description.set_size(8000);\n    this.el.modify_font(description);\n\n}\n",
229                                                     "|load": "function(str) {\n\n// show the help page for the active node..\n \n\n\n \n    this.el.get_buffer().set_text(str, str.length);\n \n    \n     var buf = this.el.get_buffer();\n     \n     \n    \n}",
230                                                     "|show_line_numbers": true,
231                                                     "|xns": "Gtk",
232                                                     "items": [
233                                                         {
234                                                             "listeners": {
235                                                                 "changed": "function (self) {\n    /*\n    var s = new Gtk.TextIter();\n    var e = new Gtk.TextIter();\n    this.el.get_start_iter(s);\n    this.el.get_end_iter(e);\n    var str = this.el.get_text(s,e,true);\n    try {\n        Seed.check_syntax('var e = ' + str);\n    } catch (e) {\n        this.get('/RightEditor.view').el.modify_base(Gtk.StateType.NORMAL, new Gdk.Color({\n            red: 0xFFFF, green: 0xCCCC , blue : 0xCCCC\n           }));\n        //print(\"SYNTAX ERROR IN EDITOR\");   \n        //print(e);\n        //console.dump(e);\n        return;\n    }\n    this.get('/RightEditor.view').el.modify_base(Gtk.StateType.NORMAL, new Gdk.Color({\n            red: 0xFFFF, green: 0xFFFF , blue : 0xFFFF\n           }));\n    \n     this.get('/LeftPanel.model').changed(  str , false);\n     */\n}"
236                                                             },
237                                                             "pack": "set_buffer",
238                                                             "xtype": "Buffer",
239                                                             "|xns": "GtkSource"
240                                                         }
241                                                     ]
242                                                 }
243                                             ]
244                                         }
245                                     ]
246                                 },
247                                 {
248                                     "pack": "add",
249                                     "width_request": 400,
250                                     "xtype": "VBox",
251                                     "|xns": "Gtk",
252                                     "items": [
253                                         {
254                                             "pack": "pack_start,false,true,3",
255                                             "xtype": "HBox",
256                                             "|xns": "Gtk",
257                                             "items": [
258                                                 {
259                                                     "listeners": {
260                                                         "key_release_event": "function (self, event) {\n    print(JSON.stringify(event,null,4)); //.keyval);\n    return true;\n}"
261                                                     },
262                                                     "id": "search-entry",
263                                                     "pack": "pack_start,true,true,3",
264                                                     "xtype": "Entry",
265                                                     "|xns": "Gtk"
266                                                 },
267                                                 {
268                                                     "listeners": {
269                                                         "clicked": "function (self) {\n    var active_id = this.get('/project-select').el.get_active();\n     \n    var project_id = this.get('/project-select').raw_data[active_id].id;\n    \n    var str = this.get('/search-entry').el.get_text();\n    \n    print(str);\n    \n    var _t = this;\n    \n    imports.Tasks.Tasks.query({\n        project_id : project_id,\n        'query[filter]' : 'me',\n        'query[search]' : str\n    }, function(res) { \n       // print(JSON.stringify(res,null,4));\n        _t.get('/ticket-store').loadData(res);\n    });\n}"
270                                                     },
271                                                     "label": "Search",
272                                                     "pack": "pack_end,false,true,3",
273                                                     "xtype": "Button",
274                                                     "|use_stock": "true",
275                                                     "|xns": "Gtk"
276                                                 }
277                                             ]
278                                         },
279                                         {
280                                             "pack": "pack_end,true,true,3",
281                                             "xtype": "ScrolledWindow",
282                                             "|shadow_type": "Gtk.ShadowType.IN",
283                                             "|xns": "Gtk",
284                                             "items": [
285                                                 {
286                                                     "|fixed_height_mode": "true",
287                                                     "id": "ticket-view",
288                                                     "pack": "add",
289                                                     "xtype": "TreeView",
290                                                     "|can_focus": "true",
291                                                     "|headers_visible": "false",
292                                                     "|init": "function() {\n    XObject.prototype.init.call(this);\n    var description = new Pango.FontDescription.c_new();\n    description.set_size(10000);\n    this.el.modify_font(description);\n\n    this.selection = this.el.get_selection();\n    this.selection.set_mode( Gtk.SelectionMode.SINGLE);\n    var _t = this;\n\n    // is this really needed??\n    this.selection.signal['changed'].connect(function() {\n        print('selection changed');\n    \n\n    });\n\n}\n",
293                                                     "|xns": "Gtk",
294                                                     "items": [
295                                                         {
296                                                             "id": "ticket-store",
297                                                             "pack": "set_model",
298                                                             "xtype": "ListStore",
299                                                             "|columns": "  [\n        GObject.TYPE_STRING, // title \n        GObject.TYPE_STRING, // tip\n        GObject.TYPE_STRING // source..\n] ",
300                                                             "|init": "function() {\n    XObject.prototype.init.call(this);\n\n    this.el.set_column_types ( 2, [\n        GObject.TYPE_STRING,  // real key\n        GObject.TYPE_STRING // real type\n        \n        \n    ] );\n\n\n    \n    // var t = this;\n    //imports.Projects.Projects.fetch(  function(res) { \n    //    t.loadData(res);\n   // });\n        \n                                \n}\n",
301                                                             "|loadData": "function (data) {\n        print(\"loading data\");\n                                    \n    var el = this.el;\n    this.el.clear();\n    data.forEach(function(p) {\n        var ret = {};\n        el.append(ret);\n       //print(\"ADD \" + p.name);\n         \n        el.set_value(ret.iter, 0, p.id);\n        el.set_value(ret.iter, 1,   '<b>#' + p.id + '</b>' + \n            '[' + p.status_name + '] <b>'   + p.summary  + \"</b>\\n\"  +\n             '<span color=\"#666\">' + p.description.split(\"\\n\").slice(0,3).join(\"\\n\") +\n             '</span>'\n             \n              );\n        \n    });\n              \n                                     \n}\n",
302                                                             "|reload": "function() {\n \n    var active_id = this.get('/project-select').el.get_active();\n     \n    var project_id = this.get('/project-select').raw_data[active_id].id;\n    \n    var _t = this;\n    \n    imports.Tasks.Tasks.query({\n        project_id : project_id,\n        'query[filter]' : 'me'\n    }, function(res) { \n        print(JSON.stringify(res,null,4));\n        _t.loadData(res);\n    });\n     \n    \n}\n",
303                                                             "|xns": "Gtk"
304                                                         },
305                                                         {
306                                                             "pack": "append_column",
307                                                             "xtype": "TreeViewColumn",
308                                                             "|sizing": "Gtk.TreeViewColumnSizing.FIXED",
309                                                             "|init": "function() {\n    XObject.prototype.init.call(this);\n    this.el.add_attribute(this.items[0].el , 'markup', 1 );\n}\n",
310                                                             "|xns": "Gtk",
311                                                             "items": [
312                                                                 {
313                                                                     "pack": "pack_start",
314                                                                     "xtype": "CellRendererText",
315                                                                     "|xns": "Gtk"
316                                                                 }
317                                                             ]
318                                                         }
319                                                     ]
320                                                 }
321                                             ]
322                                         }
323                                     ]
324                                 }
325                             ]
326                         }
327                     ]
328                 }
329             ]
330         }
331     ],
332     "permname": "",
333     "modOrder": ""
334 }