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
517             //listeners
518             this.el.cursor_changed.connect( ()  => {
519               // SEE SELECTION.CHANGED
520               /*
521               
522               return;
523               
524                 if (this.el.get_selection().count_selected_rows() < 1) {
525                     //nothing? - clea it?
526                     return;
527                 }
528                     var ret = {};         
529                 var model = this.get('/changedFilesStore');
530             
531                  var s = this.el.get_selection();
532                  var files = [];
533                 s.selected_foreach(function(model,p,iter) {
534                 
535                    files.push( model.get_value(iter, 0).value.get_string());
536                  
537                 });
538                 this.get('/patchview').showDiff(files); 
539                 //var value = ''+ ret.model.get_value(ret.iter, 1).value.get_string();
540                  //print("OUT?" + value);// id..
541                 // load the list in the right grid..
542                  
543                 return true;
544             */
545             });
546         }
547
548         // user defined functions
549     }
550     public class Xcls_reposStore : Object
551     {
552         public Gtk.ListStore el;
553         private Clones  _this;
554
555
556             // my vars (def)
557
558         // ctor
559         public Xcls_reposStore(Clones _owner )
560         {
561             _this = _owner;
562             _this.reposStore = this;
563             this.el = new Gtk.ListStore( 8,      typeof(string),  // 0 repo
564      typeof(string),  // 1 current branch
565      typeof(string),  // 2 all branch
566      typeof(string),  // 3 updated
567      typeof(bool),   // 4 auto commit
568      typeof(bool),   // 5 auto push
569      typeof(string),   // 7 repopath
570       typeof(string)   // 8 color highlighting?
571        );
572
573             // my vars (dec)
574
575             // set gobject values
576         }
577
578         // user defined functions
579         public void load ()
580         {
581             //this.insert(citer,iter,0);
582             print("getting list");
583             var tr = GitRepo.list();
584             
585             this.el.clear();
586             
587             // fixme .. sort by last updated ...
588             
589             
590             for(var i =0 ; i < tr.length; i++) {
591                     var repo = tr.index(i);
592                     repo.loadBranches();
593                     
594                     Gtk.TreeIter iter;
595                     this.el.append(out iter);
596              
597                 
598                 //print(JSON.stringify(ret,null,4));
599                  //tr[i].getBranches();
600                  //tr[i].getStatus();
601                  //var hi;
602                  //try {
603                      //tr[i].debug=1;
604                  //     hi = tr[i].history('/', 1, 'branch', tr[i].currentBranch.name );
605         //             print(JSON.stringify(hi,null,4));
606                 // } catch(e) { print(e);}
607                   
608                 this.el.set_value(iter, 0,   repo.name );
609               this.el.set_value( ter, 1, '' + repo.currentBranch.name   );
610         //        this.el.set_value(ret.iter, 2, '' + repo.branches.map(
611         //                        function(e) { return e.name; 
612         //                    }).join(', ') 
613          //        );
614         //        this.el.set_value(iter, 3, '' +  (!hi  ? '??' : hi[0].changed_raw));        
615                 this.el.set_value(iter, 4, repo.is_autocommit() );                
616                 this.el.set_value(iter, 5, repo.is_autopush() );                        
617                 this.el.set_value(iter, 6,  repo.gitdir );  
618                 // highlight color.
619                 var cb = repo.currentBranch;
620                 //print(JSON.stringify(cb,null,4));
621                 var col = "#ffffff";
622                 /*
623                 if (cb.lastrev != cb.remoterev) {
624                     col =  '#ff0000';
625                 }
626                 if (tr[i].hasLocalChanges) {
627                     col =  '#0000ff';
628                 }
629                 if  ((cb.lastrev != cb.remoterev) && (tr[i].hasLocalChanges)) {
630                     col =  '#ff00ff';
631                 }
632                 */
633                 this.el.set_value(iter, 7, col  );      
634                 
635             }     
636             this.el.set_sort_column_id (0, Gtk.SortType.ASCENDING);
637         }
638     }
639
640     public class Xcls_tv_autocommit : Object
641     {
642         public Gtk.TreeViewColumn el;
643         private Clones  _this;
644
645
646             // my vars (def)
647
648         // ctor
649         public Xcls_tv_autocommit(Clones _owner )
650         {
651             _this = _owner;
652             _this.tv_autocommit = this;
653             this.el = new Gtk.TreeViewColumn();
654
655             // my vars (dec)
656
657             // set gobject values
658             this.el.title = "Auto Commit";
659             this.el.min_width = 50;
660             var child_0 = new Xcls_cr_autocommit( _this );
661             child_0.ref();
662             this.el.pack_start (  child_0.el , false );
663
664             // init method
665
666             //    this.items[0].el.set_activatable(true);
667              this.el.add_attribute(_this.cr_autocommit.el , "active", 4 );
668         }
669
670         // user defined functions
671     }
672     public class Xcls_cr_autocommit : Object
673     {
674         public Gtk.CellRendererToggle el;
675         private Clones  _this;
676
677
678             // my vars (def)
679
680         // ctor
681         public Xcls_cr_autocommit(Clones _owner )
682         {
683             _this = _owner;
684             _this.cr_autocommit = this;
685             this.el = new Gtk.CellRendererToggle();
686
687             // my vars (dec)
688
689             // set gobject values
690             this.el.mode = Gtk.CellRendererMode.ACTIVATABLE;
691
692             //listeners
693             this.el.toggled.connect( (self, path)  => {
694             /*    var ret ={} ;
695                 var store = this.get('/reposStore');
696                 store.el.get_iter_from_string(ret, path);
697                                                                              
698                 var value =   store.el.get_value(ret.iter,4).value.get_boolean();
699                                                                              
700                 //print(JSON.stringify(value));
701                 store.el.set_value(ret.iter,4, !value);
702                 
703                  var path =  store.el.get_value(ret.iter, 6).value.get_string();
704                  var repo = imports.Scm.Repo.Repo.get(path);
705                  repo.autocommit(!value);
706               */   
707                 
708                 
709             });
710         }
711
712         // user defined functions
713     }
714
715
716     public class Xcls_tv_autopush : Object
717     {
718         public Gtk.TreeViewColumn el;
719         private Clones  _this;
720
721
722             // my vars (def)
723
724         // ctor
725         public Xcls_tv_autopush(Clones _owner )
726         {
727             _this = _owner;
728             _this.tv_autopush = this;
729             this.el = new Gtk.TreeViewColumn();
730
731             // my vars (dec)
732
733             // set gobject values
734             this.el.title = "Auto Push";
735             this.el.min_width = 50;
736             var child_0 = new Xcls_cr_autopush( _this );
737             child_0.ref();
738             this.el.pack_start (  child_0.el , false );
739
740             // init method
741
742             this.el.add_attribute(_this.cr_autopush.el , "active", 5 );
743             //      this.items[0].el.set_activatable(true);
744         }
745
746         // user defined functions
747     }
748     public class Xcls_cr_autopush : Object
749     {
750         public Gtk.CellRendererToggle el;
751         private Clones  _this;
752
753
754             // my vars (def)
755
756         // ctor
757         public Xcls_cr_autopush(Clones _owner )
758         {
759             _this = _owner;
760             _this.cr_autopush = this;
761             this.el = new Gtk.CellRendererToggle();
762
763             // my vars (dec)
764
765             // set gobject values
766             this.el.mode = Gtk.CellRendererMode.ACTIVATABLE;
767
768             //listeners
769             this.el.toggled.connect( (self, path)  => {
770             /*    var ret ={} ;
771                 var store = this.get('/reposStore');
772                 store.el.get_iter_from_string(ret, path);
773                                                                              
774                 var value =   store.el.get_value(ret.iter,5).value.get_boolean();
775                                                                              
776                 //print(JSON.stringify(value));
777                 store.el.set_value(ret.iter,5, !value);
778                   var path =  store.el.get_value(ret.iter, 6).value.get_string();
779                  var repo = imports.Scm.Repo.Repo.get(path);
780                  repo.autopush(!value);
781                 */
782             });
783         }
784
785         // user defined functions
786     }
787
788
789     public class Xcls_tv_repo : Object
790     {
791         public Gtk.TreeViewColumn el;
792         private Clones  _this;
793
794
795             // my vars (def)
796
797         // ctor
798         public Xcls_tv_repo(Clones _owner )
799         {
800             _this = _owner;
801             _this.tv_repo = this;
802             this.el = new Gtk.TreeViewColumn();
803
804             // my vars (dec)
805
806             // set gobject values
807             this.el.sort_column_id = 0;
808             this.el.title = "Repo";
809             this.el.min_width = 200;
810             this.el.sort_order = Gtk.SortType.ASCENDING;
811             this.el.resizable = true;
812             var child_0 = new Xcls_cr_repo( _this );
813             child_0.ref();
814             this.el.pack_start (  child_0.el , false );
815
816             // init method
817
818             this.el.add_attribute(_this.cr_repo.el , "markup", 0 );
819         }
820
821         // user defined functions
822     }
823     public class Xcls_cr_repo : Object
824     {
825         public Gtk.CellRendererText el;
826         private Clones  _this;
827
828
829             // my vars (def)
830
831         // ctor
832         public Xcls_cr_repo(Clones _owner )
833         {
834             _this = _owner;
835             _this.cr_repo = this;
836             this.el = new Gtk.CellRendererText();
837
838             // my vars (dec)
839
840             // set gobject values
841         }
842
843         // user defined functions
844     }
845
846
847     public class Xcls_tv_current_branch : Object
848     {
849         public Gtk.TreeViewColumn el;
850         private Clones  _this;
851
852
853             // my vars (def)
854
855         // ctor
856         public Xcls_tv_current_branch(Clones _owner )
857         {
858             _this = _owner;
859             _this.tv_current_branch = this;
860             this.el = new Gtk.TreeViewColumn();
861
862             // my vars (dec)
863
864             // set gobject values
865             this.el.title = "Current Branch";
866             this.el.min_width = 50;
867             var child_0 = new Xcls_cr_current_branch( _this );
868             child_0.ref();
869             this.el.pack_start (  child_0.el , false );
870
871             // init method
872
873             this.el.add_attribute(_this.cr_current_branch.el , "markup", 1 );
874                  this.el.add_attribute(_this.cr_current_branch.el, "cell-background", 7 );
875         }
876
877         // user defined functions
878     }
879     public class Xcls_cr_current_branch : Object
880     {
881         public Gtk.CellRendererText el;
882         private Clones  _this;
883
884
885             // my vars (def)
886
887         // ctor
888         public Xcls_cr_current_branch(Clones _owner )
889         {
890             _this = _owner;
891             _this.cr_current_branch = this;
892             this.el = new Gtk.CellRendererText();
893
894             // my vars (dec)
895
896             // set gobject values
897         }
898
899         // user defined functions
900     }
901
902
903     public class Xcls_tv_last_updated : Object
904     {
905         public Gtk.TreeViewColumn el;
906         private Clones  _this;
907
908
909             // my vars (def)
910
911         // ctor
912         public Xcls_tv_last_updated(Clones _owner )
913         {
914             _this = _owner;
915             _this.tv_last_updated = this;
916             this.el = new Gtk.TreeViewColumn();
917
918             // my vars (dec)
919
920             // set gobject values
921             this.el.title = "Last updated";
922             this.el.min_width = 50;
923             var child_0 = new Xcls_cr_last_updated( _this );
924             child_0.ref();
925             this.el.pack_start (  child_0.el , false );
926
927             // init method
928
929             this.el.add_attribute(_this.cr_last_updated.el , "markup", 3 );
930         }
931
932         // user defined functions
933     }
934     public class Xcls_cr_last_updated : Object
935     {
936         public Gtk.CellRendererText el;
937         private Clones  _this;
938
939
940             // my vars (def)
941
942         // ctor
943         public Xcls_cr_last_updated(Clones _owner )
944         {
945             _this = _owner;
946             _this.cr_last_updated = this;
947             this.el = new Gtk.CellRendererText();
948
949             // my vars (dec)
950
951             // set gobject values
952         }
953
954         // user defined functions
955     }
956
957
958     public class Xcls_tv_all_branches : Object
959     {
960         public Gtk.TreeViewColumn el;
961         private Clones  _this;
962
963
964             // my vars (def)
965
966         // ctor
967         public Xcls_tv_all_branches(Clones _owner )
968         {
969             _this = _owner;
970             _this.tv_all_branches = this;
971             this.el = new Gtk.TreeViewColumn();
972
973             // my vars (dec)
974
975             // set gobject values
976             this.el.title = "All Branches";
977             this.el.min_width = 50;
978             this.el.resizable = false;
979             var child_0 = new Xcls_cr_all_branches( _this );
980             child_0.ref();
981             this.el.pack_start (  child_0.el , false );
982
983             // init method
984
985             this.el.add_attribute(_this.cr_all_branches.el , "markup", 2 );
986         }
987
988         // user defined functions
989     }
990     public class Xcls_cr_all_branches : Object
991     {
992         public Gtk.CellRendererText el;
993         private Clones  _this;
994
995
996             // my vars (def)
997
998         // ctor
999         public Xcls_cr_all_branches(Clones _owner )
1000         {
1001             _this = _owner;
1002             _this.cr_all_branches = this;
1003             this.el = new Gtk.CellRendererText();
1004
1005             // my vars (dec)
1006
1007             // set gobject values
1008         }
1009
1010         // user defined functions
1011     }
1012
1013
1014
1015
1016
1017     public class Xcls_ok_button : Object
1018     {
1019         public Gtk.Button el;
1020         private Clones  _this;
1021
1022
1023             // my vars (def)
1024
1025         // ctor
1026         public Xcls_ok_button(Clones _owner )
1027         {
1028             _this = _owner;
1029             _this.ok_button = this;
1030             this.el = new Gtk.Button();
1031
1032             // my vars (dec)
1033
1034             // set gobject values
1035             this.el.expand = false;
1036             this.el.label = "Close";
1037         }
1038
1039         // user defined functions
1040     }
1041
1042 }