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