Clones.bjs
[gitlive] / Clones.vala
1 static Clones  _Clones;
2
3 public class Clones : Object
4 {
5     public Gtk.Dialog el;
6     private Clones  _this;
7
8     public static Clones singleton()
9     {
10         if (_Clones == null) {
11             _Clones= new Clones();
12         }
13         return _Clones;
14     }
15     public Xcls_Clones Clones;
16     public Xcls_reposView reposView;
17     public Xcls_reposStore reposStore;
18     public Xcls_tv_autocommit tv_autocommit;
19     public Xcls_tv_autopush tv_autopush;
20     public Xcls_tv_repo tv_repo;
21     public Xcls_tv_current_branch tv_current_branch;
22     public Xcls_tv_last_updated tv_last_updated;
23     public Xcls_tv_all_branches tv_all_branches;
24     public Xcls_ok_button ok_button;
25
26         // my vars (def)
27
28     // ctor
29     public Clones()
30     {
31         _this = this;
32         this.el = new Gtk.Dialog();
33
34         // my vars (dec)
35
36         // set gobject values
37         this.el.title = "Manage Clones";
38         this.el.border_width = 3;
39         this.el.default_height = 500;
40         this.el.default_width = 600;
41         this.el.deletable = true;
42         this.el.modal = true;
43         var child_0 = new Xcls_Clones( _this );
44         child_0.ref();
45         this.el.get_content_area().add (  child_0.el  );
46         var child_1 = new Xcls_ok_button( _this );
47         child_1.ref();
48         this.el.add_action_widget (  child_1.el , 1  );
49
50         //listeners
51         this.el.delete_event.connect( (self, event) => {
52             this.el.hide();
53             return true; 
54             //test  
55         });
56         this.el.response.connect( (self, response_id) =>  { 
57          
58                 this.el.hide();
59           
60         });
61     }
62
63     // user defined functions
64     public void show ()    {
65     
66         
67         this.el.set_deletable(false);
68         this.el.show_all();
69         // load clones..
70     //     this.get('/reposStore').load();
71         
72         //this.get('/ok_button').el.set_sensitive(false);
73         
74         // block until we return.
75     //    var run_ret = this.el.run();
76     //    if (run_ret < 1 ) {
77     //        return  "DONE";
78     //    }
79     //    print("RUN RETURN : " + run_ret);
80     //    return "DONE";
81         //print(JSON.stringify(this.get('bug').getValue()));
82        // return this.get('bug').getValue();
83         //this.success = c.success;
84     }
85     public class Xcls_Clones : Object
86     {
87         public Gtk.Box el;
88         private Clones  _this;
89
90
91             // my vars (def)
92
93         // ctor
94         public Xcls_Clones(Clones _owner )
95         {
96             _this = _owner;
97             _this.Clones = this;
98             this.el = new Gtk.Box( Gtk.Orientation.HORIZONTAL, 0 );
99
100             // my vars (dec)
101
102             // set gobject values
103             var child_0 = new Xcls_Box3( _this );
104             child_0.ref();
105             this.el.pack_start (  child_0.el , false,false,0 );
106             var child_1 = new Xcls_ScrolledWindow9( _this );
107             child_1.ref();
108             this.el.pack_end (  child_1.el , true,true,0 );
109         }
110
111         // user defined functions
112     }
113     public class Xcls_Box3 : Object
114     {
115         public Gtk.Box el;
116         private Clones  _this;
117
118
119             // my vars (def)
120
121         // ctor
122         public Xcls_Box3(Clones _owner )
123         {
124             _this = _owner;
125             this.el = new Gtk.Box( Gtk.Orientation.HORIZONTAL, 0 );
126
127             // my vars (dec)
128
129             // set gobject values
130             var child_0 = new Xcls_Button4( _this );
131             child_0.ref();
132             this.el.add (  child_0.el  );
133             var child_1 = new Xcls_Button5( _this );
134             child_1.ref();
135             this.el.add (  child_1.el  );
136             var child_2 = new Xcls_Button6( _this );
137             child_2.ref();
138             this.el.add (  child_2.el  );
139             var child_3 = new Xcls_Button7( _this );
140             child_3.ref();
141             this.el.add (  child_3.el  );
142             var child_4 = new Xcls_Button8( _this );
143             child_4.ref();
144             this.el.add (  child_4.el  );
145         }
146
147         // user defined functions
148     }
149     public class Xcls_Button4 : Object
150     {
151         public Gtk.Button el;
152         private Clones  _this;
153
154
155             // my vars (def)
156
157         // ctor
158         public Xcls_Button4(Clones _owner )
159         {
160             _this = _owner;
161             this.el = new Gtk.Button();
162
163             // my vars (dec)
164
165             // set gobject values
166             this.el.label = "Remotes / Clones";
167
168             //listeners
169             this.el.clicked.connect( () => {
170             
171             /*    var rv = this.get('/reposView');
172                 var rs = this.get('/reposStore');
173                 if (rv.el.get_selection().count_selected_rows() != 1) {
174                     //nothing?
175                     // error condition.
176                     return;
177                 }
178                 var Remotes =     imports.Remotes.Remotes;
179                 
180              
181                 var ret = {};       
182                 var s = rv.el.get_selection();
183                 var path = '';
184                 s.selected_foreach(function(model,p,iter) {
185                                                                 
186                    path = model.get_value(iter, 6).value.get_string();
187                  
188                 }); 
189             
190                 var repo = false;
191                 rs.repos.forEach(function(r) {
192                     if (r.repopath == path) {
193                         repo = r;
194                     
195                     }
196                 
197                 });
198                 Remotes.repo = repo;
199                 Remotes.el.set_transient_for(Clones.el);
200                 Clones.el.set_title("Manage Clones - " + repo.repopath);
201                 Remotes.show();
202                 Clones.el.set_title("Manage Clones");
203             
204               */   
205                 
206                  
207             
208                    
209                 
210                 
211             });
212         }
213
214         // user defined functions
215     }
216
217     public class Xcls_Button5 : Object
218     {
219         public Gtk.Button el;
220         private Clones  _this;
221
222
223             // my vars (def)
224
225         // ctor
226         public Xcls_Button5(Clones _owner )
227         {
228             _this = _owner;
229             this.el = new Gtk.Button();
230
231             // my vars (dec)
232
233             // set gobject values
234             this.el.label = "Branches";
235
236             //listeners
237             this.el.clicked.connect( () => {
238             /*
239                 var rv = this.get('/reposView');
240                 var rs = this.get('/reposStore');
241                 if (rv.el.get_selection().count_selected_rows() != 1) {
242                     //nothing?
243                     // error condition.
244                     return;
245                 }
246                 var Branches =     imports.Branches.Branches;
247                 
248              
249                 var ret = {};       
250                 var s = rv.el.get_selection();
251                 var path = '';
252                 s.selected_foreach(function(model,p,iter) {
253                                                                 
254                    path = model.get_value(iter, 6).value.get_string();
255                  
256                 }); 
257             
258                 var repo = false;
259                 rs.repos.forEach(function(r) {
260                     if (r.repopath == path) {
261                         repo = r;
262                     
263                     }
264                 
265                 });
266                 Branches.repo = repo;
267                 Branches.el.set_transient_for(Clones.el);
268                 Clones.el.set_title("Manage Clones - " + repo.repopath);
269                 Branches.show();
270                 Clones.el.set_title("Manage Clones");
271             
272                  
273                 
274                 
275                 
276             
277                    
278              */   
279                 
280             });
281         }
282
283         // user defined functions
284     }
285
286     public class Xcls_Button6 : Object
287     {
288         public Gtk.Button el;
289         private Clones  _this;
290
291
292             // my vars (def)
293
294         // ctor
295         public Xcls_Button6(Clones _owner )
296         {
297             _this = _owner;
298             this.el = new Gtk.Button();
299
300             // my vars (dec)
301
302             // set gobject values
303             this.el.label = "Merge";
304
305             //listeners
306             this.el.clicked.connect( () =>  {
307             /*
308                 var rv = this.get('/reposView');
309                 var rs = this.get('/reposStore');
310                 if (rv.el.get_selection().count_selected_rows() != 1) {
311                     //nothing?
312                     // error condition.
313                     return;
314                 }
315                 var Merger =     imports.Merger.Merger;
316                 
317              
318                 var ret = {};       
319                 var s = rv.el.get_selection();
320                 var path = '';
321                 s.selected_foreach(function(model,p,iter) {
322                                                                 
323                    path = model.get_value(iter, 6).value.get_string();
324                  
325                 }); 
326             
327                 var repo = false;
328                 rs.repos.forEach(function(r) {
329                     if (r.repopath == path) {
330                         repo = r;
331                     
332                     }
333                 
334                 });
335                 Merger.repo = repo;
336                 Merger.el.set_transient_for(Clones.el);
337                 Clones.el.set_title("Manage Clones - " + repo.repopath);
338                 Merger.show();
339                 Clones.el.set_title("Manage Clones");
340             
341                 
342                 
343             
344                  
345                 
346             
347              */      
348                 
349                 
350             });
351         }
352
353         // user defined functions
354     }
355
356     public class Xcls_Button7 : Object
357     {
358         public Gtk.Button el;
359         private Clones  _this;
360
361
362             // my vars (def)
363
364         // ctor
365         public Xcls_Button7(Clones _owner )
366         {
367             _this = _owner;
368             this.el = new Gtk.Button();
369
370             // my vars (dec)
371
372             // set gobject values
373             this.el.label = "Switch Branch";
374
375             //listeners
376             this.el.clicked.connect( () => {
377                 
378                 
379              
380                    
381                 
382                 
383             });
384         }
385
386         // user defined functions
387     }
388
389     public class Xcls_Button8 : Object
390     {
391         public Gtk.Button el;
392         private Clones  _this;
393
394
395             // my vars (def)
396
397         // ctor
398         public Xcls_Button8(Clones _owner )
399         {
400             _this = _owner;
401             this.el = new Gtk.Button();
402
403             // my vars (dec)
404
405             // set gobject values
406             this.el.label = "Pull";
407
408             //listeners
409             this.el.clicked.connect( () => {
410                 
411                 
412              
413                    
414                 
415                 
416             });
417         }
418
419         // user defined functions
420     }
421
422
423     public class Xcls_ScrolledWindow9 : Object
424     {
425         public Gtk.ScrolledWindow el;
426         private Clones  _this;
427
428
429             // my vars (def)
430
431         // ctor
432         public Xcls_ScrolledWindow9(Clones _owner )
433         {
434             _this = _owner;
435             this.el = new Gtk.ScrolledWindow( null, null );
436
437             // my vars (dec)
438
439             // set gobject values
440             this.el.shadow_type = Gtk.ShadowType.IN;
441             var child_0 = new Xcls_reposView( _this );
442             child_0.ref();
443             this.el.add (  child_0.el  );
444             var child_1 = new Xcls_TreeView24( _this );
445             child_1.ref();
446
447             // init method
448
449             {
450               
451                this.el.set_policy (Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC);
452             }
453         }
454
455         // user defined functions
456     }
457     public class Xcls_reposView : Object
458     {
459         public Gtk.TreeView el;
460         private Clones  _this;
461
462
463             // my vars (def)
464
465         // ctor
466         public Xcls_reposView(Clones _owner )
467         {
468             _this = _owner;
469             _this.reposView = this;
470             this.el = new Gtk.TreeView();
471
472             // my vars (dec)
473
474             // set gobject values
475             var child_0 = new Xcls_reposStore( _this );
476             child_0.ref();
477             this.el.set_model (  child_0.el  );
478             var child_1 = new Xcls_tv_autocommit( _this );
479             child_1.ref();
480             this.el.append_column (  child_1.el  );
481             var child_2 = new Xcls_tv_autopush( _this );
482             child_2.ref();
483             this.el.append_column (  child_2.el  );
484             var child_3 = new Xcls_tv_repo( _this );
485             child_3.ref();
486             this.el.append_column (  child_3.el  );
487             var child_4 = new Xcls_tv_current_branch( _this );
488             child_4.ref();
489             this.el.append_column (  child_4.el  );
490             var child_5 = new Xcls_tv_last_updated( _this );
491             child_5.ref();
492             this.el.append_column (  child_5.el  );
493             var child_6 = new Xcls_tv_all_branches( _this );
494             child_6.ref();
495             this.el.append_column (  child_6.el  );
496
497             // init method
498
499             {
500                 var selection = this.el.get_selection();
501                 selection.set_mode( Gtk.SelectionMode.SINGLE);
502             
503             
504                 var description = new Pango.FontDescription();
505                 description.set_size(10000);
506                 this.el.override_font(description);
507             }
508
509             //listeners
510             this.el.cursor_changed.connect( ()  => {
511               // SEE SELECTION.CHANGED
512               /*
513               
514               return;
515               
516                 if (this.el.get_selection().count_selected_rows() < 1) {
517                     //nothing? - clea it?
518                     return;
519                 }
520                     var ret = {};         
521                 var model = this.get('/changedFilesStore');
522             
523                  var s = this.el.get_selection();
524                  var files = [];
525                 s.selected_foreach(function(model,p,iter) {
526                 
527                    files.push( model.get_value(iter, 0).value.get_string());
528                  
529                 });
530                 this.get('/patchview').showDiff(files); 
531                 //var value = ''+ ret.model.get_value(ret.iter, 1).value.get_string();
532                  //print("OUT?" + value);// id..
533                 // load the list in the right grid..
534                  
535                 return true;
536             */
537             });
538         }
539
540         // user defined functions
541     }
542     public class Xcls_reposStore : Object
543     {
544         public Gtk.ListStore el;
545         private Clones  _this;
546
547
548             // my vars (def)
549
550         // ctor
551         public Xcls_reposStore(Clones _owner )
552         {
553             _this = _owner;
554             _this.reposStore = this;
555             this.el = new Gtk.ListStore( 0,      typeof(string),  // 0 repo
556      typeof(string),  // 1 current branch
557      typeof(string),  // 2 all branch
558      typeof(string),  // 3 updated
559      typeof(bool),   // 4 auto commit
560      typeof(bool),   // 5 auto push
561      typeof(string)   // 7 repopath
562       typeof(string)   // 8 color highlighting? );
563
564             // my vars (dec)
565
566             // set gobject values
567         }
568
569         // user defined functions
570     }
571
572     public class Xcls_tv_autocommit : Object
573     {
574         public Gtk.TreeViewColumn el;
575         private Clones  _this;
576
577
578             // my vars (def)
579
580         // ctor
581         public Xcls_tv_autocommit(Clones _owner )
582         {
583             _this = _owner;
584             _this.tv_autocommit = this;
585             this.el = new Gtk.TreeViewColumn();
586
587             // my vars (dec)
588
589             // set gobject values
590             this.el.title = "Auto Commit";
591             this.el.min_width = 50;
592             var child_0 = new Xcls_CellRendererToggle13( _this );
593             child_0.ref();
594             this.el.pack_start (  child_0.el , false );
595
596             // init method
597
598             //    this.items[0].el.set_activatable(true);
599              this.el.add_attribute(_this.keyrender.el , "active", 4 );
600         }
601
602         // user defined functions
603     }
604     public class Xcls_CellRendererToggle13 : Object
605     {
606         public Gtk.CellRendererToggle el;
607         private Clones  _this;
608
609
610             // my vars (def)
611
612         // ctor
613         public Xcls_CellRendererToggle13(Clones _owner )
614         {
615             _this = _owner;
616             this.el = new Gtk.CellRendererToggle();
617
618             // my vars (dec)
619
620             // set gobject values
621             this.el.mode = Gtk.CellRendererMode.ACTIVATABLE;
622
623             //listeners
624             this.el.toggled.connect( (self, path)  => {
625             /*    var ret ={} ;
626                 var store = this.get('/reposStore');
627                 store.el.get_iter_from_string(ret, path);
628                                                                              
629                 var value =   store.el.get_value(ret.iter,4).value.get_boolean();
630                                                                              
631                 //print(JSON.stringify(value));
632                 store.el.set_value(ret.iter,4, !value);
633                 
634                  var path =  store.el.get_value(ret.iter, 6).value.get_string();
635                  var repo = imports.Scm.Repo.Repo.get(path);
636                  repo.autocommit(!value);
637               */   
638                 
639                 
640             });
641         }
642
643         // user defined functions
644     }
645
646
647     public class Xcls_tv_autopush : Object
648     {
649         public Gtk.TreeViewColumn el;
650         private Clones  _this;
651
652
653             // my vars (def)
654
655         // ctor
656         public Xcls_tv_autopush(Clones _owner )
657         {
658             _this = _owner;
659             _this.tv_autopush = this;
660             this.el = new Gtk.TreeViewColumn();
661
662             // my vars (dec)
663
664             // set gobject values
665             this.el.title = "Auto Push";
666             this.el.min_width = 50;
667             var child_0 = new Xcls_CellRendererToggle15( _this );
668             child_0.ref();
669             this.el.pack_start (  child_0.el  );
670
671             // init method
672
673             this.el.add_attribute(this.items[0].el , 'active', 5 );
674             //      this.items[0].el.set_activatable(true);
675         }
676
677         // user defined functions
678     }
679     public class Xcls_CellRendererToggle15 : Object
680     {
681         public Gtk.CellRendererToggle el;
682         private Clones  _this;
683
684
685             // my vars (def)
686
687         // ctor
688         public Xcls_CellRendererToggle15(Clones _owner )
689         {
690             _this = _owner;
691             this.el = new Gtk.CellRendererToggle();
692
693             // my vars (dec)
694
695             // set gobject values
696             this.el.mode = Gtk.CellRendererMode.ACTIVATABLE;
697
698             //listeners
699             this.el.toggled.connect( function (self, path) {
700                 var ret ={} ;
701                 var store = this.get('/reposStore');
702                 store.el.get_iter_from_string(ret, path);
703                                                                              
704                 var value =   store.el.get_value(ret.iter,5).value.get_boolean();
705                                                                              
706                 //print(JSON.stringify(value));
707                 store.el.set_value(ret.iter,5, !value);
708                   var path =  store.el.get_value(ret.iter, 6).value.get_string();
709                  var repo = imports.Scm.Repo.Repo.get(path);
710                  repo.autopush(!value);
711                  
712             });
713         }
714
715         // user defined functions
716     }
717
718
719     public class Xcls_tv_repo : Object
720     {
721         public Gtk.TreeViewColumn el;
722         private Clones  _this;
723
724
725             // my vars (def)
726
727         // ctor
728         public Xcls_tv_repo(Clones _owner )
729         {
730             _this = _owner;
731             _this.tv_repo = this;
732             this.el = new Gtk.TreeViewColumn();
733
734             // my vars (dec)
735
736             // set gobject values
737             this.el.title = "Repo";
738             this.el.min_width = 200;
739             this.el.resizable = true;
740             var child_0 = new Xcls_CellRendererText17( _this );
741             child_0.ref();
742             this.el.pack_start (  child_0.el  );
743
744             // init method
745
746             function() {
747                 XObject.prototype.init.call(this);
748                 this.el.add_attribute(this.items[0].el , 'markup', 0 );
749             
750             }
751         }
752
753         // user defined functions
754     }
755     public class Xcls_CellRendererText17 : Object
756     {
757         public Gtk.CellRendererText el;
758         private Clones  _this;
759
760
761             // my vars (def)
762
763         // ctor
764         public Xcls_CellRendererText17(Clones _owner )
765         {
766             _this = _owner;
767             this.el = new Gtk.CellRendererText();
768
769             // my vars (dec)
770
771             // set gobject values
772         }
773
774         // user defined functions
775     }
776
777
778     public class Xcls_tv_current_branch : Object
779     {
780         public Gtk.TreeViewColumn el;
781         private Clones  _this;
782
783
784             // my vars (def)
785
786         // ctor
787         public Xcls_tv_current_branch(Clones _owner )
788         {
789             _this = _owner;
790             _this.tv_current_branch = this;
791             this.el = new Gtk.TreeViewColumn();
792
793             // my vars (dec)
794
795             // set gobject values
796             this.el.title = "Current Branch";
797             this.el.min_width = 50;
798             var child_0 = new Xcls_CellRendererText19( _this );
799             child_0.ref();
800             this.el.pack_start (  child_0.el  );
801
802             // init method
803
804             function() {
805                 XObject.prototype.init.call(this);
806                 this.el.add_attribute(this.items[0].el , 'markup', 1 );
807                  this.el.add_attribute(this.items[0].el , 'cell-background', 7 );
808             
809             }
810         }
811
812         // user defined functions
813     }
814     public class Xcls_CellRendererText19 : Object
815     {
816         public Gtk.CellRendererText el;
817         private Clones  _this;
818
819
820             // my vars (def)
821
822         // ctor
823         public Xcls_CellRendererText19(Clones _owner )
824         {
825             _this = _owner;
826             this.el = new Gtk.CellRendererText();
827
828             // my vars (dec)
829
830             // set gobject values
831         }
832
833         // user defined functions
834     }
835
836
837     public class Xcls_tv_last_updated : Object
838     {
839         public Gtk.TreeViewColumn el;
840         private Clones  _this;
841
842
843             // my vars (def)
844
845         // ctor
846         public Xcls_tv_last_updated(Clones _owner )
847         {
848             _this = _owner;
849             _this.tv_last_updated = this;
850             this.el = new Gtk.TreeViewColumn();
851
852             // my vars (dec)
853
854             // set gobject values
855             this.el.title = "Last updated";
856             this.el.min_width = 50;
857             var child_0 = new Xcls_CellRendererText21( _this );
858             child_0.ref();
859             this.el.pack_start (  child_0.el  );
860
861             // init method
862
863             function() {
864                 XObject.prototype.init.call(this);
865                 this.el.add_attribute(this.items[0].el , 'markup', 3 );
866             
867             }
868         }
869
870         // user defined functions
871     }
872     public class Xcls_CellRendererText21 : Object
873     {
874         public Gtk.CellRendererText el;
875         private Clones  _this;
876
877
878             // my vars (def)
879
880         // ctor
881         public Xcls_CellRendererText21(Clones _owner )
882         {
883             _this = _owner;
884             this.el = new Gtk.CellRendererText();
885
886             // my vars (dec)
887
888             // set gobject values
889         }
890
891         // user defined functions
892     }
893
894
895     public class Xcls_tv_all_branches : Object
896     {
897         public Gtk.TreeViewColumn el;
898         private Clones  _this;
899
900
901             // my vars (def)
902
903         // ctor
904         public Xcls_tv_all_branches(Clones _owner )
905         {
906             _this = _owner;
907             _this.tv_all_branches = this;
908             this.el = new Gtk.TreeViewColumn();
909
910             // my vars (dec)
911
912             // set gobject values
913             this.el.title = "All Branches";
914             this.el.min_width = 50;
915             this.el.resizable = false;
916             var child_0 = new Xcls_CellRendererText23( _this );
917             child_0.ref();
918             this.el.pack_start (  child_0.el  );
919
920             // init method
921
922             function() {
923                 XObject.prototype.init.call(this);
924                 this.el.add_attribute(this.items[0].el , 'markup', 2 );
925             
926             }
927         }
928
929         // user defined functions
930     }
931     public class Xcls_CellRendererText23 : Object
932     {
933         public Gtk.CellRendererText el;
934         private Clones  _this;
935
936
937             // my vars (def)
938
939         // ctor
940         public Xcls_CellRendererText23(Clones _owner )
941         {
942             _this = _owner;
943             this.el = new Gtk.CellRendererText();
944
945             // my vars (dec)
946
947             // set gobject values
948         }
949
950         // user defined functions
951     }
952
953
954
955     public class Xcls_TreeView24 : Object
956     {
957         public Gtk.TreeView el;
958         private Clones  _this;
959
960
961             // my vars (def)
962
963         // ctor
964         public Xcls_TreeView24(Clones _owner )
965         {
966             _this = _owner;
967             this.el = new Gtk.TreeView();
968
969             // my vars (dec)
970
971             // set gobject values
972             var child_0 = new Xcls_ListStore25( _this );
973             child_0.ref();
974         }
975
976         // user defined functions
977     }
978     public class Xcls_ListStore25 : Object
979     {
980         public Gtk.ListStore el;
981         private Clones  _this;
982
983
984             // my vars (def)
985
986         // ctor
987         public Xcls_ListStore25(Clones _owner )
988         {
989             _this = _owner;
990             this.el = new Gtk.ListStore( 0, null );
991
992             // my vars (dec)
993
994             // set gobject values
995         }
996
997         // user defined functions
998     }
999
1000
1001
1002
1003     public class Xcls_ok_button : Object
1004     {
1005         public Gtk.Button el;
1006         private Clones  _this;
1007
1008
1009             // my vars (def)
1010
1011         // ctor
1012         public Xcls_ok_button(Clones _owner )
1013         {
1014             _this = _owner;
1015             _this.ok_button = this;
1016             this.el = new Gtk.Button();
1017
1018             // my vars (dec)
1019
1020             // set gobject values
1021             this.el.label = "Close";
1022         }
1023
1024         // user defined functions
1025     }
1026
1027 }