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(ret.iter, 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         }
637     }
638
639     public class Xcls_tv_autocommit : Object
640     {
641         public Gtk.TreeViewColumn el;
642         private Clones  _this;
643
644
645             // my vars (def)
646
647         // ctor
648         public Xcls_tv_autocommit(Clones _owner )
649         {
650             _this = _owner;
651             _this.tv_autocommit = this;
652             this.el = new Gtk.TreeViewColumn();
653
654             // my vars (dec)
655
656             // set gobject values
657             this.el.title = "Auto Commit";
658             this.el.min_width = 50;
659             var child_0 = new Xcls_cr_autocommit( _this );
660             child_0.ref();
661             this.el.pack_start (  child_0.el , false );
662
663             // init method
664
665             //    this.items[0].el.set_activatable(true);
666              this.el.add_attribute(_this.cr_autocommit.el , "active", 4 );
667         }
668
669         // user defined functions
670     }
671     public class Xcls_cr_autocommit : Object
672     {
673         public Gtk.CellRendererToggle el;
674         private Clones  _this;
675
676
677             // my vars (def)
678
679         // ctor
680         public Xcls_cr_autocommit(Clones _owner )
681         {
682             _this = _owner;
683             _this.cr_autocommit = this;
684             this.el = new Gtk.CellRendererToggle();
685
686             // my vars (dec)
687
688             // set gobject values
689             this.el.mode = Gtk.CellRendererMode.ACTIVATABLE;
690
691             //listeners
692             this.el.toggled.connect( (self, path)  => {
693             /*    var ret ={} ;
694                 var store = this.get('/reposStore');
695                 store.el.get_iter_from_string(ret, path);
696                                                                              
697                 var value =   store.el.get_value(ret.iter,4).value.get_boolean();
698                                                                              
699                 //print(JSON.stringify(value));
700                 store.el.set_value(ret.iter,4, !value);
701                 
702                  var path =  store.el.get_value(ret.iter, 6).value.get_string();
703                  var repo = imports.Scm.Repo.Repo.get(path);
704                  repo.autocommit(!value);
705               */   
706                 
707                 
708             });
709         }
710
711         // user defined functions
712     }
713
714
715     public class Xcls_tv_autopush : Object
716     {
717         public Gtk.TreeViewColumn el;
718         private Clones  _this;
719
720
721             // my vars (def)
722
723         // ctor
724         public Xcls_tv_autopush(Clones _owner )
725         {
726             _this = _owner;
727             _this.tv_autopush = this;
728             this.el = new Gtk.TreeViewColumn();
729
730             // my vars (dec)
731
732             // set gobject values
733             this.el.title = "Auto Push";
734             this.el.min_width = 50;
735             var child_0 = new Xcls_cr_autopush( _this );
736             child_0.ref();
737             this.el.pack_start (  child_0.el , false );
738
739             // init method
740
741             this.el.add_attribute(_this.cr_autopush.el , "active", 5 );
742             //      this.items[0].el.set_activatable(true);
743         }
744
745         // user defined functions
746     }
747     public class Xcls_cr_autopush : Object
748     {
749         public Gtk.CellRendererToggle el;
750         private Clones  _this;
751
752
753             // my vars (def)
754
755         // ctor
756         public Xcls_cr_autopush(Clones _owner )
757         {
758             _this = _owner;
759             _this.cr_autopush = this;
760             this.el = new Gtk.CellRendererToggle();
761
762             // my vars (dec)
763
764             // set gobject values
765             this.el.mode = Gtk.CellRendererMode.ACTIVATABLE;
766
767             //listeners
768             this.el.toggled.connect( (self, path)  => {
769             /*    var ret ={} ;
770                 var store = this.get('/reposStore');
771                 store.el.get_iter_from_string(ret, path);
772                                                                              
773                 var value =   store.el.get_value(ret.iter,5).value.get_boolean();
774                                                                              
775                 //print(JSON.stringify(value));
776                 store.el.set_value(ret.iter,5, !value);
777                   var path =  store.el.get_value(ret.iter, 6).value.get_string();
778                  var repo = imports.Scm.Repo.Repo.get(path);
779                  repo.autopush(!value);
780                 */
781             });
782         }
783
784         // user defined functions
785     }
786
787
788     public class Xcls_tv_repo : Object
789     {
790         public Gtk.TreeViewColumn el;
791         private Clones  _this;
792
793
794             // my vars (def)
795
796         // ctor
797         public Xcls_tv_repo(Clones _owner )
798         {
799             _this = _owner;
800             _this.tv_repo = this;
801             this.el = new Gtk.TreeViewColumn();
802
803             // my vars (dec)
804
805             // set gobject values
806             this.el.sort_column_id = 3;
807             this.el.title = "Repo";
808             this.el.min_width = 200;
809             this.el.sort_order = Gtk.SortType.ASCENDING;
810             this.el.resizable = true;
811             var child_0 = new Xcls_cr_repo( _this );
812             child_0.ref();
813             this.el.pack_start (  child_0.el , false );
814
815             // init method
816
817             this.el.add_attribute(_this.cr_repo.el , "markup", 0 );
818         }
819
820         // user defined functions
821     }
822     public class Xcls_cr_repo : Object
823     {
824         public Gtk.CellRendererText el;
825         private Clones  _this;
826
827
828             // my vars (def)
829
830         // ctor
831         public Xcls_cr_repo(Clones _owner )
832         {
833             _this = _owner;
834             _this.cr_repo = this;
835             this.el = new Gtk.CellRendererText();
836
837             // my vars (dec)
838
839             // set gobject values
840         }
841
842         // user defined functions
843     }
844
845
846     public class Xcls_tv_current_branch : Object
847     {
848         public Gtk.TreeViewColumn el;
849         private Clones  _this;
850
851
852             // my vars (def)
853
854         // ctor
855         public Xcls_tv_current_branch(Clones _owner )
856         {
857             _this = _owner;
858             _this.tv_current_branch = this;
859             this.el = new Gtk.TreeViewColumn();
860
861             // my vars (dec)
862
863             // set gobject values
864             this.el.title = "Current Branch";
865             this.el.min_width = 50;
866             var child_0 = new Xcls_cr_current_branch( _this );
867             child_0.ref();
868             this.el.pack_start (  child_0.el , false );
869
870             // init method
871
872             this.el.add_attribute(_this.cr_current_branch.el , "markup", 1 );
873                  this.el.add_attribute(_this.cr_current_branch.el, "cell-background", 7 );
874         }
875
876         // user defined functions
877     }
878     public class Xcls_cr_current_branch : Object
879     {
880         public Gtk.CellRendererText el;
881         private Clones  _this;
882
883
884             // my vars (def)
885
886         // ctor
887         public Xcls_cr_current_branch(Clones _owner )
888         {
889             _this = _owner;
890             _this.cr_current_branch = this;
891             this.el = new Gtk.CellRendererText();
892
893             // my vars (dec)
894
895             // set gobject values
896         }
897
898         // user defined functions
899     }
900
901
902     public class Xcls_tv_last_updated : Object
903     {
904         public Gtk.TreeViewColumn el;
905         private Clones  _this;
906
907
908             // my vars (def)
909
910         // ctor
911         public Xcls_tv_last_updated(Clones _owner )
912         {
913             _this = _owner;
914             _this.tv_last_updated = this;
915             this.el = new Gtk.TreeViewColumn();
916
917             // my vars (dec)
918
919             // set gobject values
920             this.el.title = "Last updated";
921             this.el.min_width = 50;
922             var child_0 = new Xcls_cr_last_updated( _this );
923             child_0.ref();
924             this.el.pack_start (  child_0.el , false );
925
926             // init method
927
928             this.el.add_attribute(_this.cr_last_updated.el , "markup", 3 );
929         }
930
931         // user defined functions
932     }
933     public class Xcls_cr_last_updated : Object
934     {
935         public Gtk.CellRendererText el;
936         private Clones  _this;
937
938
939             // my vars (def)
940
941         // ctor
942         public Xcls_cr_last_updated(Clones _owner )
943         {
944             _this = _owner;
945             _this.cr_last_updated = this;
946             this.el = new Gtk.CellRendererText();
947
948             // my vars (dec)
949
950             // set gobject values
951         }
952
953         // user defined functions
954     }
955
956
957     public class Xcls_tv_all_branches : Object
958     {
959         public Gtk.TreeViewColumn el;
960         private Clones  _this;
961
962
963             // my vars (def)
964
965         // ctor
966         public Xcls_tv_all_branches(Clones _owner )
967         {
968             _this = _owner;
969             _this.tv_all_branches = this;
970             this.el = new Gtk.TreeViewColumn();
971
972             // my vars (dec)
973
974             // set gobject values
975             this.el.title = "All Branches";
976             this.el.min_width = 50;
977             this.el.resizable = false;
978             var child_0 = new Xcls_cr_all_branches( _this );
979             child_0.ref();
980             this.el.pack_start (  child_0.el , false );
981
982             // init method
983
984             this.el.add_attribute(_this.cr_all_branches.el , "markup", 2 );
985         }
986
987         // user defined functions
988     }
989     public class Xcls_cr_all_branches : Object
990     {
991         public Gtk.CellRendererText el;
992         private Clones  _this;
993
994
995             // my vars (def)
996
997         // ctor
998         public Xcls_cr_all_branches(Clones _owner )
999         {
1000             _this = _owner;
1001             _this.cr_all_branches = this;
1002             this.el = new Gtk.CellRendererText();
1003
1004             // my vars (dec)
1005
1006             // set gobject values
1007         }
1008
1009         // user defined functions
1010     }
1011
1012
1013
1014
1015
1016     public class Xcls_ok_button : Object
1017     {
1018         public Gtk.Button el;
1019         private Clones  _this;
1020
1021
1022             // my vars (def)
1023
1024         // ctor
1025         public Xcls_ok_button(Clones _owner )
1026         {
1027             _this = _owner;
1028             _this.ok_button = this;
1029             this.el = new Gtk.Button();
1030
1031             // my vars (dec)
1032
1033             // set gobject values
1034             this.el.expand = false;
1035             this.el.label = "Close";
1036         }
1037
1038         // user defined functions
1039     }
1040
1041 }