src/Builder4/MainWindow.bjs
[app.Builder.js] / src / Builder4 / MainWindow.vala
1 static Xcls_MainWindow  _MainWindow;
2
3 public class Xcls_MainWindow : Object
4 {
5     public Gtk.Window el;
6     private Xcls_MainWindow  _this;
7
8     public static Xcls_MainWindow singleton()
9     {
10         if (_MainWindow == null) {
11             _MainWindow= new Xcls_MainWindow();
12         }
13         return _MainWindow;
14     }
15     public Xcls_headerbar headerbar;
16     public Xcls_topbarmenu topbarmenu;
17     public Xcls_vbox vbox;
18     public Xcls_mainpane mainpane;
19     public Xcls_leftpane leftpane;
20     public Xcls_editpane editpane;
21     public Xcls_tree tree;
22     public Xcls_props props;
23     public Xcls_clutterembed clutterembed;
24     public Xcls_rooview rooview;
25     public Xcls_objectview objectview;
26     public Xcls_codeeditview codeeditview;
27     public Xcls_addpropsview addpropsview;
28     public Xcls_projecteditview projecteditview;
29     public Xcls_buttonlayout buttonlayout;
30     public Xcls_backbutton backbutton;
31     public Xcls_projectbutton projectbutton;
32     public Xcls_editfilebutton editfilebutton;
33     public Xcls_projecteditbutton projecteditbutton;
34     public Xcls_objectshowbutton objectshowbutton;
35     public Xcls_addpropbutton addpropbutton;
36     public Xcls_addlistenerbutton addlistenerbutton;
37     public Xcls_addprojectbutton addprojectbutton;
38     public Xcls_addfilebutton addfilebutton;
39     public Xcls_delprojectbutton delprojectbutton;
40     public Xcls_statusbar statusbar;
41     public Xcls_search_entry search_entry;
42     public Xcls_search_results search_results;
43     public Xcls_statusbar_compilestatus_label statusbar_compilestatus_label;
44     public Xcls_statusbar_errors statusbar_errors;
45     public Xcls_statusbar_warnings statusbar_warnings;
46     public Xcls_statusbar_depricated statusbar_depricated;
47     public Xcls_statusbar_run statusbar_run;
48
49         // my vars (def)
50     public Project.Project project;
51     public string title;
52     public int no_windows;
53     public WindowState windowstate;
54
55     // ctor
56     public Xcls_MainWindow()
57     {
58         _this = this;
59         this.el = new Gtk.Window( Gtk.WindowType.TOPLEVEL );
60
61         // my vars (dec)
62         this.project = null;
63         this.title = "Application Builder";
64         this.no_windows = 1;
65         this.windowstate = null;
66
67         // set gobject values
68         this.el.border_width = 0;
69         this.el.default_height = 500;
70         this.el.default_width = 800;
71         var child_0 = new Xcls_headerbar( _this );
72         child_0.ref();
73         this.el.set_titlebar (  child_0.el  );
74         var child_1 = new Xcls_vbox( _this );
75         child_1.ref();
76         this.el.add (  child_1.el  );
77
78         // init method
79
80         //this.el.show_all();
81
82         //listeners
83         this.el.delete_event.connect( (   event) => {
84             return false;
85         });
86         this.el.destroy.connect( () =>  {
87          Xcls_MainWindow.singleton().no_windows--;
88          
89          Resources.singleton().disconnect(_this.statusbar.handler_id);
90          
91          
92          if (Xcls_MainWindow.singleton().no_windows < 1) {
93         
94              Gtk.main_quit();
95          }
96         });
97         this.el.show.connect( ( ) => {
98             // hide the file editing..
99            
100             //this.hideViewEditing();
101             _this.statusbar.el.hide();
102              _this.statusbar_errors.el.hide();
103             _this.statusbar_warnings.el.hide();
104             _this.statusbar_depricated.el.hide();
105             
106           
107             Resources.singleton().checkResources();
108         
109         });
110         this.el.key_release_event.connect( (event) => {
111             
112             if (this.search_entry.el.is_visible()) {
113                         if (event.keyval == Gdk.Key.f && (event.state & Gdk.ModifierType.CONTROL_MASK ) > 0 ) {
114                             print("SAVE: ctrl-f  pressed");
115                                 this.search_entry.el.grab_focus();
116                             return false;
117                         }
118                         
119                           if (event.keyval == Gdk.Key.g && (event.state & Gdk.ModifierType.CONTROL_MASK ) > 0 ) {
120                             print("SAVE: ctrl-g  pressed");
121                                 this.search_entry.forwardSearch(true);
122                             return false;
123                         }
124                 }    
125            // print(event.key.keyval)
126             
127             return false;
128         
129         });
130     }
131
132     // user defined functions
133     public        void initChildren () {
134         // this needs putting in a better place..
135         this.windowstate = new WindowState(this);
136          
137     
138         //w.el.show_all();
139         var tl = new Clutter.Timeline(6000);
140         tl.set_repeat_count(-1);
141         tl.start();
142         tl.ref();
143     
144         
145     
146     
147     
148     }
149     public             void show () {
150        
151         this.el.show_all();
152     
153     }
154     public             void setTitle (string str) {
155         this.headerbar.el.set_title(this.title + " - " + str);
156     }
157     public class Xcls_headerbar : Object
158     {
159         public Gtk.HeaderBar el;
160         private Xcls_MainWindow  _this;
161
162
163             // my vars (def)
164
165         // ctor
166         public Xcls_headerbar(Xcls_MainWindow _owner )
167         {
168             _this = _owner;
169             _this.headerbar = this;
170             this.el = new Gtk.HeaderBar();
171
172             // my vars (dec)
173
174             // set gobject values
175             this.el.title = "Application Builder";
176             this.el.show_close_button = true;
177             var child_0 = new Xcls_Box3( _this );
178             child_0.ref();
179             this.el.pack_start (  child_0.el  );
180         }
181
182         // user defined functions
183     }
184     public class Xcls_Box3 : Object
185     {
186         public Gtk.Box el;
187         private Xcls_MainWindow  _this;
188
189
190             // my vars (def)
191
192         // ctor
193         public Xcls_Box3(Xcls_MainWindow _owner )
194         {
195             _this = _owner;
196             this.el = new Gtk.Box( Gtk.Orientation.HORIZONTAL, 0 );
197
198             // my vars (dec)
199
200             // set gobject values
201             var child_0 = new Xcls_MenuButton4( _this );
202             child_0.ref();
203             this.el.add (  child_0.el  );
204         }
205
206         // user defined functions
207     }
208     public class Xcls_MenuButton4 : Object
209     {
210         public Gtk.MenuButton el;
211         private Xcls_MainWindow  _this;
212
213
214             // my vars (def)
215
216         // ctor
217         public Xcls_MenuButton4(Xcls_MainWindow _owner )
218         {
219             _this = _owner;
220             this.el = new Gtk.MenuButton();
221
222             // my vars (dec)
223
224             // set gobject values
225             this.el.use_popover = false;
226             var child_0 = new Xcls_topbarmenu( _this );
227             child_0.ref();
228             this.el.set_popup (  child_0.el  );
229             var child_1 = new Xcls_Image10( _this );
230             child_1.ref();
231             this.el.set_image (  child_1.el  );
232         }
233
234         // user defined functions
235     }
236     public class Xcls_topbarmenu : Object
237     {
238         public Gtk.Menu el;
239         private Xcls_MainWindow  _this;
240
241
242             // my vars (def)
243
244         // ctor
245         public Xcls_topbarmenu(Xcls_MainWindow _owner )
246         {
247             _this = _owner;
248             _this.topbarmenu = this;
249             this.el = new Gtk.Menu();
250
251             // my vars (dec)
252
253             // set gobject values
254             var child_0 = new Xcls_MenuItem6( _this );
255             child_0.ref();
256             this.el.append (  child_0.el  );
257             var child_1 = new Xcls_SeparatorMenuItem7( _this );
258             child_1.ref();
259             this.el.append (  child_1.el  );
260             var child_2 = new Xcls_MenuItem8( _this );
261             child_2.ref();
262             this.el.append (  child_2.el  );
263             var child_3 = new Xcls_MenuItem9( _this );
264             child_3.ref();
265             this.el.append (  child_3.el  );
266
267             // init method
268
269             {
270                 this.el.show_all();
271             }
272         }
273
274         // user defined functions
275     }
276     public class Xcls_MenuItem6 : Object
277     {
278         public Gtk.MenuItem el;
279         private Xcls_MainWindow  _this;
280
281
282             // my vars (def)
283
284         // ctor
285         public Xcls_MenuItem6(Xcls_MainWindow _owner )
286         {
287             _this = _owner;
288             this.el = new Gtk.MenuItem();
289
290             // my vars (dec)
291
292             // set gobject values
293             this.el.label = "Open a new Window";
294
295             //listeners
296             this.el.activate.connect( ( ) => {
297                     Xcls_MainWindow.singleton().no_windows++;
298                     var w = new Xcls_MainWindow();
299                     w.ref();
300             
301                     w.el.show_all();
302                     w.initChildren();
303                     w.windowstate.switchState(WindowState.State.FILES);
304             });
305         }
306
307         // user defined functions
308     }
309
310     public class Xcls_SeparatorMenuItem7 : Object
311     {
312         public Gtk.SeparatorMenuItem el;
313         private Xcls_MainWindow  _this;
314
315
316             // my vars (def)
317
318         // ctor
319         public Xcls_SeparatorMenuItem7(Xcls_MainWindow _owner )
320         {
321             _this = _owner;
322             this.el = new Gtk.SeparatorMenuItem();
323
324             // my vars (dec)
325
326             // set gobject values
327         }
328
329         // user defined functions
330     }
331
332     public class Xcls_MenuItem8 : Object
333     {
334         public Gtk.MenuItem el;
335         private Xcls_MainWindow  _this;
336
337
338             // my vars (def)
339
340         // ctor
341         public Xcls_MenuItem8(Xcls_MainWindow _owner )
342         {
343             _this = _owner;
344             this.el = new Gtk.MenuItem();
345
346             // my vars (dec)
347
348             // set gobject values
349             this.el.label = "Download updated Resources";
350
351             //listeners
352             this.el.activate.connect( ( ) => {
353                      Resources.singleton().fetchStart();
354             });
355         }
356
357         // user defined functions
358     }
359
360     public class Xcls_MenuItem9 : Object
361     {
362         public Gtk.MenuItem el;
363         private Xcls_MainWindow  _this;
364
365
366             // my vars (def)
367
368         // ctor
369         public Xcls_MenuItem9(Xcls_MainWindow _owner )
370         {
371             _this = _owner;
372             this.el = new Gtk.MenuItem();
373
374             // my vars (dec)
375
376             // set gobject values
377             this.el.label = "About the Builder";
378
379             //listeners
380             this.el.activate.connect( () => {
381                 About.singleton().el.show();
382                 });
383         }
384
385         // user defined functions
386     }
387
388
389     public class Xcls_Image10 : Object
390     {
391         public Gtk.Image el;
392         private Xcls_MainWindow  _this;
393
394
395             // my vars (def)
396
397         // ctor
398         public Xcls_Image10(Xcls_MainWindow _owner )
399         {
400             _this = _owner;
401             this.el = new Gtk.Image();
402
403             // my vars (dec)
404
405             // set gobject values
406             this.el.icon_name = "help-about";
407         }
408
409         // user defined functions
410     }
411
412
413
414
415     public class Xcls_vbox : Object
416     {
417         public Gtk.Box el;
418         private Xcls_MainWindow  _this;
419
420
421             // my vars (def)
422
423         // ctor
424         public Xcls_vbox(Xcls_MainWindow _owner )
425         {
426             _this = _owner;
427             _this.vbox = this;
428             this.el = new Gtk.Box( Gtk.Orientation.VERTICAL, 0 );
429
430             // my vars (dec)
431
432             // set gobject values
433             this.el.homogeneous = false;
434             var child_0 = new Xcls_mainpane( _this );
435             child_0.ref();
436             this.el.pack_start (  child_0.el , true,true,0 );
437             var child_1 = new Xcls_Box66( _this );
438             child_1.ref();
439             this.el.pack_end (  child_1.el , false,true,0 );
440         }
441
442         // user defined functions
443     }
444     public class Xcls_mainpane : Object
445     {
446         public Gtk.Paned el;
447         private Xcls_MainWindow  _this;
448
449
450             // my vars (def)
451         public int lastWidth;
452
453         // ctor
454         public Xcls_mainpane(Xcls_MainWindow _owner )
455         {
456             _this = _owner;
457             _this.mainpane = this;
458             this.el = new Gtk.Paned( Gtk.Orientation.HORIZONTAL );
459
460             // my vars (dec)
461             this.lastWidth = 0;
462
463             // set gobject values
464             this.el.position = 400;
465             var child_0 = new Xcls_leftpane( _this );
466             child_0.ref();
467             this.el.add1 (  child_0.el  );
468             var child_1 = new Xcls_Box17( _this );
469             child_1.ref();
470             this.el.add2 (  child_1.el  );
471         }
472
473         // user defined functions
474     }
475     public class Xcls_leftpane : Object
476     {
477         public Gtk.Box el;
478         private Xcls_MainWindow  _this;
479
480
481             // my vars (def)
482
483         // ctor
484         public Xcls_leftpane(Xcls_MainWindow _owner )
485         {
486             _this = _owner;
487             _this.leftpane = this;
488             this.el = new Gtk.Box( Gtk.Orientation.VERTICAL, 0 );
489
490             // my vars (dec)
491
492             // set gobject values
493             var child_0 = new Xcls_editpane( _this );
494             child_0.ref();
495             this.el.pack_start (  child_0.el , true,true,0 );
496         }
497
498         // user defined functions
499     }
500     public class Xcls_editpane : Object
501     {
502         public Gtk.Paned el;
503         private Xcls_MainWindow  _this;
504
505
506             // my vars (def)
507
508         // ctor
509         public Xcls_editpane(Xcls_MainWindow _owner )
510         {
511             _this = _owner;
512             _this.editpane = this;
513             this.el = new Gtk.Paned( Gtk.Orientation.VERTICAL );
514
515             // my vars (dec)
516
517             // set gobject values
518             var child_0 = new Xcls_tree( _this );
519             child_0.ref();
520             this.el.add1 (  child_0.el  );
521             var child_1 = new Xcls_props( _this );
522             child_1.ref();
523             this.el.add2 (  child_1.el  );
524         }
525
526         // user defined functions
527     }
528     public class Xcls_tree : Object
529     {
530         public Gtk.Box el;
531         private Xcls_MainWindow  _this;
532
533
534             // my vars (def)
535
536         // ctor
537         public Xcls_tree(Xcls_MainWindow _owner )
538         {
539             _this = _owner;
540             _this.tree = this;
541             this.el = new Gtk.Box( Gtk.Orientation.VERTICAL, 0 );
542
543             // my vars (dec)
544
545             // set gobject values
546         }
547
548         // user defined functions
549     }
550
551     public class Xcls_props : Object
552     {
553         public Gtk.Box el;
554         private Xcls_MainWindow  _this;
555
556
557             // my vars (def)
558
559         // ctor
560         public Xcls_props(Xcls_MainWindow _owner )
561         {
562             _this = _owner;
563             _this.props = this;
564             this.el = new Gtk.Box( Gtk.Orientation.VERTICAL, 0 );
565
566             // my vars (dec)
567
568             // set gobject values
569         }
570
571         // user defined functions
572     }
573
574
575
576     public class Xcls_Box17 : Object
577     {
578         public Gtk.Box el;
579         private Xcls_MainWindow  _this;
580
581
582             // my vars (def)
583
584         // ctor
585         public Xcls_Box17(Xcls_MainWindow _owner )
586         {
587             _this = _owner;
588             this.el = new Gtk.Box( Gtk.Orientation.VERTICAL, 0 );
589
590             // my vars (dec)
591
592             // set gobject values
593             var child_0 = new Xcls_clutterembed( _this );
594             child_0.ref();
595             this.el.pack_start (  child_0.el , true,true,0 );
596         }
597
598         // user defined functions
599     }
600     public class Xcls_clutterembed : Object
601     {
602         public GtkClutter.Embed el;
603         private Xcls_MainWindow  _this;
604
605
606             // my vars (def)
607
608         // ctor
609         public Xcls_clutterembed(Xcls_MainWindow _owner )
610         {
611             _this = _owner;
612             _this.clutterembed = this;
613             this.el = new GtkClutter.Embed();
614
615             // my vars (dec)
616
617             // set gobject values
618             var child_0 = new Xcls_rooview( _this );
619             child_0.ref();
620             this.el.get_stage().add_child (  child_0.el  );
621             var child_1 = new Xcls_objectview( _this );
622             child_1.ref();
623             this.el.get_stage().add_child (  child_1.el  );
624             var child_2 = new Xcls_codeeditview( _this );
625             child_2.ref();
626             this.el.get_stage().add_child (  child_2.el  );
627             var child_3 = new Xcls_addpropsview( _this );
628             child_3.ref();
629             this.el.get_stage().add_child (  child_3.el  );
630             var child_4 = new Xcls_projecteditview( _this );
631             child_4.ref();
632             this.el.get_stage().add_child (  child_4.el  );
633             var child_5 = new Xcls_buttonlayout( _this );
634             child_5.ref();
635             this.el.get_stage().add_child (  child_5.el  );
636
637             // init method
638
639             var stage = this.el.get_stage();
640                 stage.set_background_color(  Clutter.Color.from_string("#000"));
641
642             //listeners
643             this.el.size_allocate.connect( (  alloc) => {
644                 if (_this.windowstate == null) {
645                     return;
646                 }
647                 _this.windowstate.resizeCanvas(); 
648                     
649             });
650         }
651
652         // user defined functions
653     }
654     public class Xcls_rooview : Object
655     {
656         public GtkClutter.Actor el;
657         private Xcls_MainWindow  _this;
658
659
660             // my vars (def)
661
662         // ctor
663         public Xcls_rooview(Xcls_MainWindow _owner )
664         {
665             _this = _owner;
666             _this.rooview = this;
667             this.el = new GtkClutter.Actor();
668
669             // my vars (dec)
670
671             // set gobject values
672
673             // init method
674
675             {
676                
677                
678                 this.el.add_constraint(
679                     new Clutter.AlignConstraint(
680                         _this.clutterembed.el.get_stage(), 
681                         Clutter.AlignAxis.X_AXIS,
682                         1.0f
683                     )
684                 );
685                     
686                 //this.el.set_position(100,100);
687                 this.el.set_pivot_point(1.0f,1.0f);
688                 
689                 this.el.set_size(_this.clutterembed.el.get_stage().width-50,
690                         _this.clutterembed.el.get_stage().height);
691                         
692             }
693         }
694
695         // user defined functions
696     }
697
698     public class Xcls_objectview : Object
699     {
700         public GtkClutter.Actor el;
701         private Xcls_MainWindow  _this;
702
703
704             // my vars (def)
705
706         // ctor
707         public Xcls_objectview(Xcls_MainWindow _owner )
708         {
709             _this = _owner;
710             _this.objectview = this;
711             this.el = new GtkClutter.Actor();
712
713             // my vars (dec)
714
715             // set gobject values
716
717             // init method
718
719             {
720                
721                /*
722                 this.el.add_constraint(
723                     new Clutter.AlignConstraint(
724                         _this.clutterembed.el.get_stage(), 
725                         Clutter.AlignAxis.X_AXIS,
726                         0.0f
727                     )
728                 );
729                 */
730                 this.el.fixed_x = 50.0f;
731                 this.el.fixed_y = 0.0f;
732                 //this.el.set_position(100,100);
733                 this.el.set_pivot_point(0.0f,0.0f);
734                 this.el.set_scale(0.0f,1.0f);
735                 this.el.set_size((_this.clutterembed.el.get_stage().width-50)/2,
736                         _this.clutterembed.el.get_stage().height);
737                         
738             }
739         }
740
741         // user defined functions
742     }
743
744     public class Xcls_codeeditview : Object
745     {
746         public GtkClutter.Actor el;
747         private Xcls_MainWindow  _this;
748
749
750             // my vars (def)
751
752         // ctor
753         public Xcls_codeeditview(Xcls_MainWindow _owner )
754         {
755             _this = _owner;
756             _this.codeeditview = this;
757             this.el = new GtkClutter.Actor();
758
759             // my vars (dec)
760
761             // set gobject values
762
763             // init method
764
765             {
766                
767                /*
768                 this.el.add_constraint(
769                     new Clutter.AlignConstraint(
770                         _this.clutterembed.el.get_stage(), 
771                         Clutter.AlignAxis.X_AXIS,
772                         0.0f
773                     )
774                 );
775                 */
776                 this.el.fixed_x = 50.0f;
777                 this.el.fixed_y = 0.0f;
778                 //this.el.set_position(100,100);
779                 this.el.set_pivot_point(0.0f,0.0f);
780                 this.el.set_scale(0.0f,1.0f);
781                 this.el.set_size((_this.clutterembed.el.get_stage().width-50)/2,
782                         _this.clutterembed.el.get_stage().height);
783                         
784             }
785         }
786
787         // user defined functions
788     }
789
790     public class Xcls_addpropsview : Object
791     {
792         public GtkClutter.Actor el;
793         private Xcls_MainWindow  _this;
794
795
796             // my vars (def)
797
798         // ctor
799         public Xcls_addpropsview(Xcls_MainWindow _owner )
800         {
801             _this = _owner;
802             _this.addpropsview = this;
803             this.el = new GtkClutter.Actor();
804
805             // my vars (dec)
806
807             // set gobject values
808
809             // init method
810
811             {
812                
813                /*
814                 this.el.add_constraint(
815                     new Clutter.AlignConstraint(
816                         _this.clutterembed.el.get_stage(), 
817                         Clutter.AlignAxis.X_AXIS,
818                         0.0f
819                     )
820                 );
821                 */
822                 this.el.fixed_x = 50.0f;
823                 this.el.fixed_y = 0.0f;
824                 //this.el.set_position(100,100);
825                 this.el.set_pivot_point(0.0f,0.0f);
826                 this.el.set_scale(0.0f,1.0f);
827                 this.el.set_size((_this.clutterembed.el.get_stage().width-50)/2,
828                         _this.clutterembed.el.get_stage().height);
829                         
830             }
831         }
832
833         // user defined functions
834     }
835
836     public class Xcls_projecteditview : Object
837     {
838         public GtkClutter.Actor el;
839         private Xcls_MainWindow  _this;
840
841
842             // my vars (def)
843
844         // ctor
845         public Xcls_projecteditview(Xcls_MainWindow _owner )
846         {
847             _this = _owner;
848             _this.projecteditview = this;
849             this.el = new GtkClutter.Actor();
850
851             // my vars (dec)
852
853             // set gobject values
854
855             // init method
856
857             {
858                
859                
860                 this.el.add_constraint(
861                     new Clutter.AlignConstraint(
862                         _this.clutterembed.el.get_stage(), 
863                         Clutter.AlignAxis.X_AXIS,
864                         1.0f
865                     )
866                 );
867                     
868                 //this.el.set_position(100,100);
869                 this.el.set_pivot_point(0.0f,0.0f);
870                 this.el.set_scale(1.0f,0.0f);
871                 this.el.set_size(_this.clutterembed.el.get_stage().width-50,
872                         _this.clutterembed.el.get_stage().height /2);
873                         
874             }
875         }
876
877         // user defined functions
878     }
879
880     public class Xcls_buttonlayout : Object
881     {
882         public Clutter.Actor el;
883         private Xcls_MainWindow  _this;
884
885
886             // my vars (def)
887
888         // ctor
889         public Xcls_buttonlayout(Xcls_MainWindow _owner )
890         {
891             _this = _owner;
892             _this.buttonlayout = this;
893             this.el = new Clutter.Actor();
894
895             // my vars (dec)
896
897             // set gobject values
898             var child_0 = new Xcls_BoxLayout25( _this );
899             child_0.ref();
900             this.el.layout_manager = child_0.el;
901             var child_1 = new Xcls_backbutton( _this );
902             child_1.ref();
903             this.el.add_child (  child_1.el  );
904             var child_2 = new Xcls_projectbutton( _this );
905             child_2.ref();
906             this.el.add_child (  child_2.el  );
907             var child_3 = new Xcls_editfilebutton( _this );
908             child_3.ref();
909             this.el.add_child (  child_3.el  );
910             var child_4 = new Xcls_projecteditbutton( _this );
911             child_4.ref();
912             this.el.add_child (  child_4.el  );
913             var child_5 = new Xcls_objectshowbutton( _this );
914             child_5.ref();
915             this.el.add_child (  child_5.el  );
916             var child_6 = new Xcls_addpropbutton( _this );
917             child_6.ref();
918             this.el.add_child (  child_6.el  );
919             var child_7 = new Xcls_addlistenerbutton( _this );
920             child_7.ref();
921             this.el.add_child (  child_7.el  );
922             var child_8 = new Xcls_addprojectbutton( _this );
923             child_8.ref();
924             this.el.add_child (  child_8.el  );
925             var child_9 = new Xcls_addfilebutton( _this );
926             child_9.ref();
927             this.el.add_child (  child_9.el  );
928             var child_10 = new Xcls_delprojectbutton( _this );
929             child_10.ref();
930             this.el.add_child (  child_10.el  );
931
932             // init method
933
934             {
935                 
936                 this.el.add_constraint(
937                     new Clutter.AlignConstraint(
938                         _this.clutterembed.el.get_stage(), 
939                         Clutter.AlignAxis.X_AXIS,
940                         0.0f
941                     )
942                 );
943                  
944                 
945                 //this.el.set_position(100,100);
946                 this.el.set_pivot_point(0.5f,0.5f);
947                  this.el.set_size(50,
948                        _this.clutterembed.el.get_stage().height);
949                  
950             }
951         }
952
953         // user defined functions
954     }
955     public class Xcls_BoxLayout25 : Object
956     {
957         public Clutter.BoxLayout el;
958         private Xcls_MainWindow  _this;
959
960
961             // my vars (def)
962
963         // ctor
964         public Xcls_BoxLayout25(Xcls_MainWindow _owner )
965         {
966             _this = _owner;
967             this.el = new Clutter.BoxLayout();
968
969             // my vars (dec)
970
971             // set gobject values
972             this.el.orientation = Clutter.Orientation.VERTICAL;
973         }
974
975         // user defined functions
976     }
977
978     public class Xcls_backbutton : Object
979     {
980         public Clutter.Actor el;
981         private Xcls_MainWindow  _this;
982
983
984             // my vars (def)
985
986         // ctor
987         public Xcls_backbutton(Xcls_MainWindow _owner )
988         {
989             _this = _owner;
990             _this.backbutton = this;
991             this.el = new Clutter.Actor();
992
993             // my vars (dec)
994
995             // set gobject values
996             var child_0 = new Xcls_Actor27( _this );
997             child_0.ref();
998             this.el.add_child (  child_0.el  );
999
1000             // init method
1001
1002             this.el.set_size(50,50);
1003         }
1004
1005         // user defined functions
1006     }
1007     public class Xcls_Actor27 : Object
1008     {
1009         public GtkClutter.Actor el;
1010         private Xcls_MainWindow  _this;
1011
1012
1013             // my vars (def)
1014
1015         // ctor
1016         public Xcls_Actor27(Xcls_MainWindow _owner )
1017         {
1018             _this = _owner;
1019             this.el = new GtkClutter.Actor();
1020
1021             // my vars (dec)
1022
1023             // set gobject values
1024             var child_0 = new Xcls_Button28( _this );
1025             child_0.ref();
1026
1027             // init method
1028
1029             ((Gtk.Container)(this.el.get_widget())).add ( child_0.el);
1030         }
1031
1032         // user defined functions
1033     }
1034     public class Xcls_Button28 : Object
1035     {
1036         public Gtk.Button el;
1037         private Xcls_MainWindow  _this;
1038
1039
1040             // my vars (def)
1041
1042         // ctor
1043         public Xcls_Button28(Xcls_MainWindow _owner )
1044         {
1045             _this = _owner;
1046             this.el = new Gtk.Button();
1047
1048             // my vars (dec)
1049
1050             // set gobject values
1051             this.el.width_request = 50;
1052             this.el.height_request = 50;
1053             this.el.tooltip_text = "Back";
1054             var child_0 = new Xcls_Image29( _this );
1055             child_0.ref();
1056             this.el.set_image (  child_0.el  );
1057
1058             //listeners
1059             this.el.clicked.connect( ( ) => {
1060               
1061                 _this.windowstate.switchState(WindowState.State.PREVIEW);
1062                 
1063             
1064             });
1065         }
1066
1067         // user defined functions
1068     }
1069     public class Xcls_Image29 : Object
1070     {
1071         public Gtk.Image el;
1072         private Xcls_MainWindow  _this;
1073
1074
1075             // my vars (def)
1076
1077         // ctor
1078         public Xcls_Image29(Xcls_MainWindow _owner )
1079         {
1080             _this = _owner;
1081             this.el = new Gtk.Image();
1082
1083             // my vars (dec)
1084
1085             // set gobject values
1086             this.el.icon_name = "go-previous";
1087         }
1088
1089         // user defined functions
1090     }
1091
1092
1093
1094
1095     public class Xcls_projectbutton : Object
1096     {
1097         public Clutter.Actor el;
1098         private Xcls_MainWindow  _this;
1099
1100
1101             // my vars (def)
1102
1103         // ctor
1104         public Xcls_projectbutton(Xcls_MainWindow _owner )
1105         {
1106             _this = _owner;
1107             _this.projectbutton = this;
1108             this.el = new Clutter.Actor();
1109
1110             // my vars (dec)
1111
1112             // set gobject values
1113             var child_0 = new Xcls_Actor31( _this );
1114             child_0.ref();
1115             this.el.add_child (  child_0.el  );
1116
1117             // init method
1118
1119             this.el.set_size(50,50);
1120         }
1121
1122         // user defined functions
1123     }
1124     public class Xcls_Actor31 : Object
1125     {
1126         public GtkClutter.Actor el;
1127         private Xcls_MainWindow  _this;
1128
1129
1130             // my vars (def)
1131
1132         // ctor
1133         public Xcls_Actor31(Xcls_MainWindow _owner )
1134         {
1135             _this = _owner;
1136             this.el = new GtkClutter.Actor();
1137
1138             // my vars (dec)
1139
1140             // set gobject values
1141             var child_0 = new Xcls_Button32( _this );
1142             child_0.ref();
1143
1144             // init method
1145
1146             ((Gtk.Container)(this.el.get_widget())).add ( child_0.el);
1147         }
1148
1149         // user defined functions
1150     }
1151     public class Xcls_Button32 : Object
1152     {
1153         public Gtk.Button el;
1154         private Xcls_MainWindow  _this;
1155
1156
1157             // my vars (def)
1158
1159         // ctor
1160         public Xcls_Button32(Xcls_MainWindow _owner )
1161         {
1162             _this = _owner;
1163             this.el = new Gtk.Button();
1164
1165             // my vars (dec)
1166
1167             // set gobject values
1168             this.el.width_request = 50;
1169             this.el.height_request = 50;
1170             var child_0 = new Xcls_Image33( _this );
1171             child_0.ref();
1172             this.el.set_image (  child_0.el  );
1173
1174             //listeners
1175             this.el.clicked.connect( ( ) => {
1176                _this.windowstate.switchState(WindowState.State.FILES);
1177                   
1178             
1179             });
1180         }
1181
1182         // user defined functions
1183     }
1184     public class Xcls_Image33 : Object
1185     {
1186         public Gtk.Image el;
1187         private Xcls_MainWindow  _this;
1188
1189
1190             // my vars (def)
1191
1192         // ctor
1193         public Xcls_Image33(Xcls_MainWindow _owner )
1194         {
1195             _this = _owner;
1196             this.el = new Gtk.Image();
1197
1198             // my vars (dec)
1199
1200             // set gobject values
1201             this.el.icon_name = "document-open";
1202         }
1203
1204         // user defined functions
1205     }
1206
1207
1208
1209
1210     public class Xcls_editfilebutton : Object
1211     {
1212         public Clutter.Actor el;
1213         private Xcls_MainWindow  _this;
1214
1215
1216             // my vars (def)
1217
1218         // ctor
1219         public Xcls_editfilebutton(Xcls_MainWindow _owner )
1220         {
1221             _this = _owner;
1222             _this.editfilebutton = this;
1223             this.el = new Clutter.Actor();
1224
1225             // my vars (dec)
1226
1227             // set gobject values
1228             var child_0 = new Xcls_Actor35( _this );
1229             child_0.ref();
1230             this.el.add_child (  child_0.el  );
1231
1232             // init method
1233
1234             this.el.set_size(50.0f,50.0f);
1235         }
1236
1237         // user defined functions
1238     }
1239     public class Xcls_Actor35 : Object
1240     {
1241         public GtkClutter.Actor el;
1242         private Xcls_MainWindow  _this;
1243
1244
1245             // my vars (def)
1246
1247         // ctor
1248         public Xcls_Actor35(Xcls_MainWindow _owner )
1249         {
1250             _this = _owner;
1251             this.el = new GtkClutter.Actor();
1252
1253             // my vars (dec)
1254
1255             // set gobject values
1256             var child_0 = new Xcls_Button36( _this );
1257             child_0.ref();
1258
1259             // init method
1260
1261             ((Gtk.Container)(this.el.get_widget())).add ( child_0.el);
1262         }
1263
1264         // user defined functions
1265     }
1266     public class Xcls_Button36 : Object
1267     {
1268         public Gtk.Button el;
1269         private Xcls_MainWindow  _this;
1270
1271
1272             // my vars (def)
1273
1274         // ctor
1275         public Xcls_Button36(Xcls_MainWindow _owner )
1276         {
1277             _this = _owner;
1278             this.el = new Gtk.Button();
1279
1280             // my vars (dec)
1281
1282             // set gobject values
1283             this.el.width_request = 50;
1284             this.el.height_request = 50;
1285             this.el.tooltip_text = "File Details";
1286             var child_0 = new Xcls_Image37( _this );
1287             child_0.ref();
1288             this.el.set_image (  child_0.el  );
1289
1290             //listeners
1291             this.el.clicked.connect( ( ) => {
1292               
1293                 // create a new file in project..
1294                 if (_this.project == null || _this.windowstate.file == null) {
1295                     return  ;
1296                 }
1297                  _this.windowstate.file_details.show(
1298                     _this.windowstate.file, this.el
1299                 );
1300                  
1301                 return  ;    
1302             
1303             
1304             });
1305         }
1306
1307         // user defined functions
1308     }
1309     public class Xcls_Image37 : Object
1310     {
1311         public Gtk.Image el;
1312         private Xcls_MainWindow  _this;
1313
1314
1315             // my vars (def)
1316
1317         // ctor
1318         public Xcls_Image37(Xcls_MainWindow _owner )
1319         {
1320             _this = _owner;
1321             this.el = new Gtk.Image();
1322
1323             // my vars (dec)
1324
1325             // set gobject values
1326             this.el.icon_name = "document-properties";
1327         }
1328
1329         // user defined functions
1330     }
1331
1332
1333
1334
1335     public class Xcls_projecteditbutton : Object
1336     {
1337         public Clutter.Actor el;
1338         private Xcls_MainWindow  _this;
1339
1340
1341             // my vars (def)
1342
1343         // ctor
1344         public Xcls_projecteditbutton(Xcls_MainWindow _owner )
1345         {
1346             _this = _owner;
1347             _this.projecteditbutton = this;
1348             this.el = new Clutter.Actor();
1349
1350             // my vars (dec)
1351
1352             // set gobject values
1353             var child_0 = new Xcls_Actor39( _this );
1354             child_0.ref();
1355             this.el.add_child (  child_0.el  );
1356
1357             // init method
1358
1359             this.el.set_size(50,50);
1360         }
1361
1362         // user defined functions
1363     }
1364     public class Xcls_Actor39 : Object
1365     {
1366         public GtkClutter.Actor el;
1367         private Xcls_MainWindow  _this;
1368
1369
1370             // my vars (def)
1371
1372         // ctor
1373         public Xcls_Actor39(Xcls_MainWindow _owner )
1374         {
1375             _this = _owner;
1376             this.el = new GtkClutter.Actor();
1377
1378             // my vars (dec)
1379
1380             // set gobject values
1381             var child_0 = new Xcls_Button40( _this );
1382             child_0.ref();
1383
1384             // init method
1385
1386             ((Gtk.Container)(this.el.get_widget())).add ( child_0.el);
1387         }
1388
1389         // user defined functions
1390     }
1391     public class Xcls_Button40 : Object
1392     {
1393         public Gtk.Button el;
1394         private Xcls_MainWindow  _this;
1395
1396
1397             // my vars (def)
1398
1399         // ctor
1400         public Xcls_Button40(Xcls_MainWindow _owner )
1401         {
1402             _this = _owner;
1403             this.el = new Gtk.Button();
1404
1405             // my vars (dec)
1406
1407             // set gobject values
1408             this.el.width_request = 50;
1409             this.el.height_request = 50;
1410             this.el.tooltip_text = "Project Details";
1411             var child_0 = new Xcls_Image41( _this );
1412             child_0.ref();
1413             this.el.set_image (  child_0.el  );
1414
1415             //listeners
1416             this.el.clicked.connect( ( ) => {
1417                  _this.windowstate.switchState(WindowState.State.PROJECT);
1418                
1419             
1420             
1421             });
1422         }
1423
1424         // user defined functions
1425     }
1426     public class Xcls_Image41 : Object
1427     {
1428         public Gtk.Image el;
1429         private Xcls_MainWindow  _this;
1430
1431
1432             // my vars (def)
1433
1434         // ctor
1435         public Xcls_Image41(Xcls_MainWindow _owner )
1436         {
1437             _this = _owner;
1438             this.el = new Gtk.Image();
1439
1440             // my vars (dec)
1441
1442             // set gobject values
1443             this.el.icon_name = "emblem-system";
1444         }
1445
1446         // user defined functions
1447     }
1448
1449
1450
1451
1452     public class Xcls_objectshowbutton : Object
1453     {
1454         public Clutter.Actor el;
1455         private Xcls_MainWindow  _this;
1456
1457
1458             // my vars (def)
1459
1460         // ctor
1461         public Xcls_objectshowbutton(Xcls_MainWindow _owner )
1462         {
1463             _this = _owner;
1464             _this.objectshowbutton = this;
1465             this.el = new Clutter.Actor();
1466
1467             // my vars (dec)
1468
1469             // set gobject values
1470             var child_0 = new Xcls_Actor43( _this );
1471             child_0.ref();
1472             this.el.add_child (  child_0.el  );
1473
1474             // init method
1475
1476             this.el.set_size(50,50);
1477
1478             //listeners
1479             this.el.enter_event.connect( (  event)  => {
1480                 this.el.background_color =   Clutter.Color.from_string("#333");
1481                     return false;
1482             });
1483             this.el.leave_event.connect( (  event)  => {
1484                 this.el.background_color =   Clutter.Color.from_string("#000");
1485                 return false;
1486             });
1487         }
1488
1489         // user defined functions
1490     }
1491     public class Xcls_Actor43 : Object
1492     {
1493         public GtkClutter.Actor el;
1494         private Xcls_MainWindow  _this;
1495
1496
1497             // my vars (def)
1498
1499         // ctor
1500         public Xcls_Actor43(Xcls_MainWindow _owner )
1501         {
1502             _this = _owner;
1503             this.el = new GtkClutter.Actor();
1504
1505             // my vars (dec)
1506
1507             // set gobject values
1508             var child_0 = new Xcls_Button44( _this );
1509             child_0.ref();
1510
1511             // init method
1512
1513             ((Gtk.Container)(this.el.get_widget())).add ( child_0.el);
1514         }
1515
1516         // user defined functions
1517     }
1518     public class Xcls_Button44 : Object
1519     {
1520         public Gtk.Button el;
1521         private Xcls_MainWindow  _this;
1522
1523
1524             // my vars (def)
1525
1526         // ctor
1527         public Xcls_Button44(Xcls_MainWindow _owner )
1528         {
1529             _this = _owner;
1530             this.el = new Gtk.Button();
1531
1532             // my vars (dec)
1533
1534             // set gobject values
1535             this.el.width_request = 50;
1536             this.el.height_request = 50;
1537             this.el.tooltip_text = "Add Child Element";
1538             var child_0 = new Xcls_Image45( _this );
1539             child_0.ref();
1540             this.el.set_image (  child_0.el  );
1541
1542             //listeners
1543             this.el.clicked.connect( ( ) => {
1544                 
1545                  _this.windowstate.switchState(WindowState.State.OBJECT);
1546               
1547              
1548             });
1549         }
1550
1551         // user defined functions
1552     }
1553     public class Xcls_Image45 : Object
1554     {
1555         public Gtk.Image el;
1556         private Xcls_MainWindow  _this;
1557
1558
1559             // my vars (def)
1560
1561         // ctor
1562         public Xcls_Image45(Xcls_MainWindow _owner )
1563         {
1564             _this = _owner;
1565             this.el = new Gtk.Image();
1566
1567             // my vars (dec)
1568
1569             // set gobject values
1570             this.el.icon_name = "list-add";
1571         }
1572
1573         // user defined functions
1574     }
1575
1576
1577
1578
1579     public class Xcls_addpropbutton : Object
1580     {
1581         public Clutter.Actor el;
1582         private Xcls_MainWindow  _this;
1583
1584
1585             // my vars (def)
1586
1587         // ctor
1588         public Xcls_addpropbutton(Xcls_MainWindow _owner )
1589         {
1590             _this = _owner;
1591             _this.addpropbutton = this;
1592             this.el = new Clutter.Actor();
1593
1594             // my vars (dec)
1595
1596             // set gobject values
1597             var child_0 = new Xcls_Actor47( _this );
1598             child_0.ref();
1599             this.el.add_child (  child_0.el  );
1600
1601             // init method
1602
1603             this.el.set_size(50,50);
1604         }
1605
1606         // user defined functions
1607     }
1608     public class Xcls_Actor47 : Object
1609     {
1610         public GtkClutter.Actor el;
1611         private Xcls_MainWindow  _this;
1612
1613
1614             // my vars (def)
1615
1616         // ctor
1617         public Xcls_Actor47(Xcls_MainWindow _owner )
1618         {
1619             _this = _owner;
1620             this.el = new GtkClutter.Actor();
1621
1622             // my vars (dec)
1623
1624             // set gobject values
1625             var child_0 = new Xcls_Button48( _this );
1626             child_0.ref();
1627
1628             // init method
1629
1630             ((Gtk.Container)(this.el.get_widget())).add ( child_0.el);
1631         }
1632
1633         // user defined functions
1634     }
1635     public class Xcls_Button48 : Object
1636     {
1637         public Gtk.Button el;
1638         private Xcls_MainWindow  _this;
1639
1640
1641             // my vars (def)
1642
1643         // ctor
1644         public Xcls_Button48(Xcls_MainWindow _owner )
1645         {
1646             _this = _owner;
1647             this.el = new Gtk.Button();
1648
1649             // my vars (dec)
1650
1651             // set gobject values
1652             this.el.width_request = 50;
1653             this.el.height_request = 50;
1654             this.el.tooltip_text = "Add Property";
1655             var child_0 = new Xcls_Image49( _this );
1656             child_0.ref();
1657             this.el.set_image (  child_0.el  );
1658
1659             //listeners
1660             this.el.clicked.connect( ( ) => {
1661                 
1662                  _this.windowstate.switchState(WindowState.State.PROP);
1663              
1664             
1665             });
1666         }
1667
1668         // user defined functions
1669     }
1670     public class Xcls_Image49 : Object
1671     {
1672         public Gtk.Image el;
1673         private Xcls_MainWindow  _this;
1674
1675
1676             // my vars (def)
1677
1678         // ctor
1679         public Xcls_Image49(Xcls_MainWindow _owner )
1680         {
1681             _this = _owner;
1682             this.el = new Gtk.Image();
1683
1684             // my vars (dec)
1685
1686             // set gobject values
1687             this.el.icon_name = "format-justify-left";
1688         }
1689
1690         // user defined functions
1691     }
1692
1693
1694
1695
1696     public class Xcls_addlistenerbutton : Object
1697     {
1698         public Clutter.Actor el;
1699         private Xcls_MainWindow  _this;
1700
1701
1702             // my vars (def)
1703
1704         // ctor
1705         public Xcls_addlistenerbutton(Xcls_MainWindow _owner )
1706         {
1707             _this = _owner;
1708             _this.addlistenerbutton = this;
1709             this.el = new Clutter.Actor();
1710
1711             // my vars (dec)
1712
1713             // set gobject values
1714             var child_0 = new Xcls_Actor51( _this );
1715             child_0.ref();
1716             this.el.add_child (  child_0.el  );
1717
1718             // init method
1719
1720             this.el.set_size(50,50);
1721         }
1722
1723         // user defined functions
1724     }
1725     public class Xcls_Actor51 : Object
1726     {
1727         public GtkClutter.Actor el;
1728         private Xcls_MainWindow  _this;
1729
1730
1731             // my vars (def)
1732
1733         // ctor
1734         public Xcls_Actor51(Xcls_MainWindow _owner )
1735         {
1736             _this = _owner;
1737             this.el = new GtkClutter.Actor();
1738
1739             // my vars (dec)
1740
1741             // set gobject values
1742             var child_0 = new Xcls_Button52( _this );
1743             child_0.ref();
1744
1745             // init method
1746
1747             ((Gtk.Container)(this.el.get_widget())).add ( child_0.el);
1748         }
1749
1750         // user defined functions
1751     }
1752     public class Xcls_Button52 : Object
1753     {
1754         public Gtk.Button el;
1755         private Xcls_MainWindow  _this;
1756
1757
1758             // my vars (def)
1759
1760         // ctor
1761         public Xcls_Button52(Xcls_MainWindow _owner )
1762         {
1763             _this = _owner;
1764             this.el = new Gtk.Button();
1765
1766             // my vars (dec)
1767
1768             // set gobject values
1769             this.el.width_request = 50;
1770             this.el.height_request = 50;
1771             this.el.tooltip_text = "Add Event Code";
1772             var child_0 = new Xcls_Image53( _this );
1773             child_0.ref();
1774             this.el.set_image (  child_0.el  );
1775
1776             //listeners
1777             this.el.clicked.connect( ( ) => {
1778                 
1779                 _this.windowstate.switchState(WindowState.State.LISTENER);
1780               
1781             
1782             
1783             });
1784         }
1785
1786         // user defined functions
1787     }
1788     public class Xcls_Image53 : Object
1789     {
1790         public Gtk.Image el;
1791         private Xcls_MainWindow  _this;
1792
1793
1794             // my vars (def)
1795
1796         // ctor
1797         public Xcls_Image53(Xcls_MainWindow _owner )
1798         {
1799             _this = _owner;
1800             this.el = new Gtk.Image();
1801
1802             // my vars (dec)
1803
1804             // set gobject values
1805             this.el.icon_name = "appointment-new";
1806         }
1807
1808         // user defined functions
1809     }
1810
1811
1812
1813
1814     public class Xcls_addprojectbutton : Object
1815     {
1816         public Clutter.Actor el;
1817         private Xcls_MainWindow  _this;
1818
1819
1820             // my vars (def)
1821
1822         // ctor
1823         public Xcls_addprojectbutton(Xcls_MainWindow _owner )
1824         {
1825             _this = _owner;
1826             _this.addprojectbutton = this;
1827             this.el = new Clutter.Actor();
1828
1829             // my vars (dec)
1830
1831             // set gobject values
1832             var child_0 = new Xcls_Actor55( _this );
1833             child_0.ref();
1834             this.el.add_child (  child_0.el  );
1835
1836             // init method
1837
1838             this.el.set_size(50.0f,50.0f);
1839         }
1840
1841         // user defined functions
1842     }
1843     public class Xcls_Actor55 : Object
1844     {
1845         public GtkClutter.Actor el;
1846         private Xcls_MainWindow  _this;
1847
1848
1849             // my vars (def)
1850
1851         // ctor
1852         public Xcls_Actor55(Xcls_MainWindow _owner )
1853         {
1854             _this = _owner;
1855             this.el = new GtkClutter.Actor();
1856
1857             // my vars (dec)
1858
1859             // set gobject values
1860             var child_0 = new Xcls_Button56( _this );
1861             child_0.ref();
1862
1863             // init method
1864
1865             ((Gtk.Container)(this.el.get_widget())).add ( child_0.el);
1866         }
1867
1868         // user defined functions
1869     }
1870     public class Xcls_Button56 : Object
1871     {
1872         public Gtk.Button el;
1873         private Xcls_MainWindow  _this;
1874
1875
1876             // my vars (def)
1877
1878         // ctor
1879         public Xcls_Button56(Xcls_MainWindow _owner )
1880         {
1881             _this = _owner;
1882             this.el = new Gtk.Button();
1883
1884             // my vars (dec)
1885
1886             // set gobject values
1887             this.el.width_request = 50;
1888             this.el.height_request = 50;
1889             this.el.tooltip_text = "New\nProj.";
1890             var child_0 = new Xcls_Image57( _this );
1891             child_0.ref();
1892             this.el.set_image (  child_0.el  );
1893
1894             //listeners
1895             this.el.clicked.connect( ( ) => {
1896               
1897                 // create a new file in project..
1898                 //Xcls_DialogNewComponent.singleton().show(
1899                var  pe =      EditProject.singleton();
1900                 pe.el.set_transient_for(_this.el);
1901                 pe.el.set_modal(true);   
1902                
1903                 var p  = pe.show();
1904             
1905                 if (p == null) {
1906                     return;
1907                 }
1908                 
1909                 
1910                 _this.windowstate.left_projects.is_loaded = false;    
1911                 _this.windowstate.left_projects.load();
1912                 _this.windowstate.left_projects.selectProject(p);
1913                 return  ;    
1914             
1915             
1916             });
1917         }
1918
1919         // user defined functions
1920     }
1921     public class Xcls_Image57 : Object
1922     {
1923         public Gtk.Image el;
1924         private Xcls_MainWindow  _this;
1925
1926
1927             // my vars (def)
1928
1929         // ctor
1930         public Xcls_Image57(Xcls_MainWindow _owner )
1931         {
1932             _this = _owner;
1933             this.el = new Gtk.Image();
1934
1935             // my vars (dec)
1936
1937             // set gobject values
1938             this.el.icon_name = "folder-new";
1939         }
1940
1941         // user defined functions
1942     }
1943
1944
1945
1946
1947     public class Xcls_addfilebutton : Object
1948     {
1949         public Clutter.Actor el;
1950         private Xcls_MainWindow  _this;
1951
1952
1953             // my vars (def)
1954
1955         // ctor
1956         public Xcls_addfilebutton(Xcls_MainWindow _owner )
1957         {
1958             _this = _owner;
1959             _this.addfilebutton = this;
1960             this.el = new Clutter.Actor();
1961
1962             // my vars (dec)
1963
1964             // set gobject values
1965             var child_0 = new Xcls_Actor59( _this );
1966             child_0.ref();
1967             this.el.add_child (  child_0.el  );
1968
1969             // init method
1970
1971             this.el.set_size(50.0f,50.0f);
1972         }
1973
1974         // user defined functions
1975     }
1976     public class Xcls_Actor59 : Object
1977     {
1978         public GtkClutter.Actor el;
1979         private Xcls_MainWindow  _this;
1980
1981
1982             // my vars (def)
1983
1984         // ctor
1985         public Xcls_Actor59(Xcls_MainWindow _owner )
1986         {
1987             _this = _owner;
1988             this.el = new GtkClutter.Actor();
1989
1990             // my vars (dec)
1991
1992             // set gobject values
1993             var child_0 = new Xcls_Button60( _this );
1994             child_0.ref();
1995
1996             // init method
1997
1998             ((Gtk.Container)(this.el.get_widget())).add ( child_0.el);
1999         }
2000
2001         // user defined functions
2002     }
2003     public class Xcls_Button60 : Object
2004     {
2005         public Gtk.Button el;
2006         private Xcls_MainWindow  _this;
2007
2008
2009             // my vars (def)
2010
2011         // ctor
2012         public Xcls_Button60(Xcls_MainWindow _owner )
2013         {
2014             _this = _owner;
2015             this.el = new Gtk.Button();
2016
2017             // my vars (dec)
2018
2019             // set gobject values
2020             this.el.width_request = 50;
2021             this.el.height_request = 50;
2022             this.el.tooltip_text = "Add File";
2023             var child_0 = new Xcls_Image61( _this );
2024             child_0.ref();
2025             this.el.set_image (  child_0.el  );
2026
2027             //listeners
2028             this.el.clicked.connect( () => {
2029                 // create a new file in project..
2030                 print("add file selected\n");
2031                 // what's the currently selected project...
2032                 var proj = _this.windowstate.left_projects.getSelectedProject();
2033                 
2034                 if (proj == null) {
2035                         print("no project selected?\n");
2036                     return  ;
2037                 }
2038                 
2039                 print("creating file?");
2040                 
2041                 var f = JsRender.JsRender.factory(proj.xtype,  proj, "");
2042                 _this.project = proj;
2043                     print("showing popup?");
2044                  _this.windowstate.file_details.show(
2045                    f, this.el
2046                 );
2047                 
2048                 
2049                 return  ;    
2050             });
2051         }
2052
2053         // user defined functions
2054     }
2055     public class Xcls_Image61 : Object
2056     {
2057         public Gtk.Image el;
2058         private Xcls_MainWindow  _this;
2059
2060
2061             // my vars (def)
2062
2063         // ctor
2064         public Xcls_Image61(Xcls_MainWindow _owner )
2065         {
2066             _this = _owner;
2067             this.el = new Gtk.Image();
2068
2069             // my vars (dec)
2070
2071             // set gobject values
2072             this.el.icon_name = "document-new";
2073         }
2074
2075         // user defined functions
2076     }
2077
2078
2079
2080
2081     public class Xcls_delprojectbutton : Object
2082     {
2083         public Clutter.Actor el;
2084         private Xcls_MainWindow  _this;
2085
2086
2087             // my vars (def)
2088
2089         // ctor
2090         public Xcls_delprojectbutton(Xcls_MainWindow _owner )
2091         {
2092             _this = _owner;
2093             _this.delprojectbutton = this;
2094             this.el = new Clutter.Actor();
2095
2096             // my vars (dec)
2097
2098             // set gobject values
2099             var child_0 = new Xcls_Actor63( _this );
2100             child_0.ref();
2101             this.el.add_child (  child_0.el  );
2102
2103             // init method
2104
2105             this.el.set_size(50,50);
2106         }
2107
2108         // user defined functions
2109     }
2110     public class Xcls_Actor63 : Object
2111     {
2112         public GtkClutter.Actor el;
2113         private Xcls_MainWindow  _this;
2114
2115
2116             // my vars (def)
2117
2118         // ctor
2119         public Xcls_Actor63(Xcls_MainWindow _owner )
2120         {
2121             _this = _owner;
2122             this.el = new GtkClutter.Actor();
2123
2124             // my vars (dec)
2125
2126             // set gobject values
2127             var child_0 = new Xcls_Button64( _this );
2128             child_0.ref();
2129
2130             // init method
2131
2132             ((Gtk.Container)(this.el.get_widget())).add ( child_0.el);
2133         }
2134
2135         // user defined functions
2136     }
2137     public class Xcls_Button64 : Object
2138     {
2139         public Gtk.Button el;
2140         private Xcls_MainWindow  _this;
2141
2142
2143             // my vars (def)
2144
2145         // ctor
2146         public Xcls_Button64(Xcls_MainWindow _owner )
2147         {
2148             _this = _owner;
2149             this.el = new Gtk.Button();
2150
2151             // my vars (dec)
2152
2153             // set gobject values
2154             this.el.width_request = 50;
2155             this.el.height_request = 50;
2156             this.el.tooltip_text = "Delete Project";
2157             var child_0 = new Xcls_Image65( _this );
2158             child_0.ref();
2159             this.el.set_image (  child_0.el  );
2160
2161             //listeners
2162             this.el.clicked.connect( ( ) => {
2163                  
2164                  var cd = DialogConfirm.singleton();
2165                  cd.el.set_transient_for(_this.el);
2166                 cd.el.set_modal(true);
2167             
2168                  var project =   _this.windowstate.left_projects.getSelectedProject();
2169                 if (project == null) {
2170                     print("SKIP - no project\n");
2171                     return;
2172                 }
2173                 
2174                     
2175                  if (Gtk.ResponseType.YES != cd.show("Confirm", 
2176                     "Are you sure you want to delete project %s".printf(project.name))) {
2177                     return;
2178                 }
2179                  
2180             
2181                 // confirm?
2182                 Project.Project.remove(project);
2183                 _this.project = null;
2184                 
2185                 _this.windowstate.left_projects.is_loaded =  false;
2186                 _this.windowstate.left_projects.load();
2187                 _this.windowstate.clutterfiles.clearFiles();
2188             
2189             });
2190         }
2191
2192         // user defined functions
2193     }
2194     public class Xcls_Image65 : Object
2195     {
2196         public Gtk.Image el;
2197         private Xcls_MainWindow  _this;
2198
2199
2200             // my vars (def)
2201
2202         // ctor
2203         public Xcls_Image65(Xcls_MainWindow _owner )
2204         {
2205             _this = _owner;
2206             this.el = new Gtk.Image();
2207
2208             // my vars (dec)
2209
2210             // set gobject values
2211             this.el.icon_name = "user-trash";
2212         }
2213
2214         // user defined functions
2215     }
2216
2217
2218
2219
2220
2221
2222
2223
2224     public class Xcls_Box66 : Object
2225     {
2226         public Gtk.Box el;
2227         private Xcls_MainWindow  _this;
2228
2229
2230             // my vars (def)
2231
2232         // ctor
2233         public Xcls_Box66(Xcls_MainWindow _owner )
2234         {
2235             _this = _owner;
2236             this.el = new Gtk.Box( Gtk.Orientation.HORIZONTAL, 0 );
2237
2238             // my vars (dec)
2239
2240             // set gobject values
2241             this.el.homogeneous = false;
2242             var child_0 = new Xcls_Label67( _this );
2243             child_0.ref();
2244             this.el.pack_start (  child_0.el , true,true,0 );
2245             var child_1 = new Xcls_statusbar( _this );
2246             child_1.ref();
2247             this.el.pack_start (  child_1.el , true,true,0 );
2248             var child_2 = new Xcls_search_entry( _this );
2249             child_2.ref();
2250             this.el.pack_start (  child_2.el , false,true,0 );
2251             var child_3 = new Xcls_MenuBar70( _this );
2252             child_3.ref();
2253             this.el.pack_end (  child_3.el , false,true,0 );
2254         }
2255
2256         // user defined functions
2257     }
2258     public class Xcls_Label67 : Object
2259     {
2260         public Gtk.Label el;
2261         private Xcls_MainWindow  _this;
2262
2263
2264             // my vars (def)
2265
2266         // ctor
2267         public Xcls_Label67(Xcls_MainWindow _owner )
2268         {
2269             _this = _owner;
2270             this.el = new Gtk.Label( "   " );
2271
2272             // my vars (dec)
2273
2274             // set gobject values
2275         }
2276
2277         // user defined functions
2278     }
2279
2280     public class Xcls_statusbar : Object
2281     {
2282         public Gtk.ProgressBar el;
2283         private Xcls_MainWindow  _this;
2284
2285
2286             // my vars (def)
2287         public ulong handler_id;
2288
2289         // ctor
2290         public Xcls_statusbar(Xcls_MainWindow _owner )
2291         {
2292             _this = _owner;
2293             _this.statusbar = this;
2294             this.el = new Gtk.ProgressBar();
2295
2296             // my vars (dec)
2297             this.handler_id = -1;
2298
2299             // set gobject values
2300             this.el.show_text = true;
2301
2302             // init method
2303
2304             {
2305                  this.handler_id = Resources.singleton().updateProgress.connect((pos,total) => {
2306                     if (pos < 1) {
2307                         this.el.hide();
2308                         _this.mainpane.el.set_sensitive(true);
2309                         
2310                         return;
2311                     }
2312                      _this.mainpane.el.set_sensitive(false);
2313                      this.el.show();
2314                      this.el.set_fraction ((1.0f * pos) / (1.0f * total));
2315                      this.el.set_text("Fetching Resource : %s/%s".printf(pos.to_string(), total.to_string()));
2316                    
2317                  });
2318             }
2319         }
2320
2321         // user defined functions
2322     }
2323
2324     public class Xcls_search_entry : Object
2325     {
2326         public Gtk.SearchEntry el;
2327         private Xcls_MainWindow  _this;
2328
2329
2330             // my vars (def)
2331
2332         // ctor
2333         public Xcls_search_entry(Xcls_MainWindow _owner )
2334         {
2335             _this = _owner;
2336             _this.search_entry = this;
2337             this.el = new Gtk.SearchEntry();
2338
2339             // my vars (dec)
2340
2341             // set gobject values
2342
2343             // init method
2344
2345             var description =   Pango.FontDescription.from_string("monospace");
2346                 description.set_size(8000);
2347                  this.el.override_font(description);
2348
2349             //listeners
2350             this.el.key_press_event.connect( (event) => {
2351                 
2352                 if (event.keyval == Gdk.Key.Return) {
2353                         this.forwardSearch(false);
2354                     return true;
2355             
2356                 }    
2357                // print(event.key.keyval)
2358                 
2359                 return false;
2360             
2361             });
2362             this.el.changed.connect( () => {
2363                 if (this.el.text == "") {
2364                         return;
2365                 }
2366                 var res = 0;
2367                 switch(_this.windowstate.state) {
2368                         case WindowState.State.CODEONLY:
2369                         case WindowState.State.CODE:
2370                                 // search the code being edited..
2371                                 res = _this.windowstate.code_editor.search(this.el.text);
2372                                 
2373                                 break;
2374                         case WindowState.State.PREVIEW:
2375                                 if (_this.windowstate.file.xtype == "Gtk") {
2376                                          res = _this.windowstate.window_gladeview.search(this.el.text);
2377                                 } else { 
2378                                          res = _this.windowstate.window_rooview.search(this.el.text);                   
2379                                 }
2380                         
2381                         
2382                                 break;
2383                 }
2384                 if (res > 0) {
2385                         _this.search_results.el.label = "%d Matches".printf(res);
2386                 } else {
2387                         _this.search_results.el.label = "No Matches";
2388                 }
2389                         
2390                 
2391                 
2392             });
2393         }
2394
2395         // user defined functions
2396         public void forwardSearch (bool change_focus) {
2397                 switch(_this.windowstate.state) {
2398                         case WindowState.State.CODEONLY:
2399                         case WindowState.State.CODE:
2400                                 // search the code being edited..
2401                                 _this.windowstate.code_editor.forwardSearch(change_focus);
2402                                 
2403                                 break;
2404                         case WindowState.State.PREVIEW:
2405                                 if (_this.windowstate.file.xtype == "Gtk") {
2406                                         _this.windowstate.window_gladeview.forwardSearch(change_focus);
2407                                 } else { 
2408                                          _this.windowstate.window_rooview.forwardSearch(change_focus);
2409                                 }
2410                         
2411                                 break;
2412                 }
2413                 
2414         }
2415     }
2416
2417     public class Xcls_MenuBar70 : Object
2418     {
2419         public Gtk.MenuBar el;
2420         private Xcls_MainWindow  _this;
2421
2422
2423             // my vars (def)
2424
2425         // ctor
2426         public Xcls_MenuBar70(Xcls_MainWindow _owner )
2427         {
2428             _this = _owner;
2429             this.el = new Gtk.MenuBar();
2430
2431             // my vars (dec)
2432
2433             // set gobject values
2434             var child_0 = new Xcls_search_results( _this );
2435             child_0.ref();
2436             this.el.add (  child_0.el  );
2437             var child_1 = new Xcls_statusbar_compilestatus_label( _this );
2438             child_1.ref();
2439             this.el.add (  child_1.el  );
2440             var child_2 = new Xcls_statusbar_errors( _this );
2441             child_2.ref();
2442             this.el.add (  child_2.el  );
2443             var child_3 = new Xcls_statusbar_warnings( _this );
2444             child_3.ref();
2445             this.el.add (  child_3.el  );
2446             var child_4 = new Xcls_statusbar_depricated( _this );
2447             child_4.ref();
2448             this.el.add (  child_4.el  );
2449             var child_5 = new Xcls_statusbar_run( _this );
2450             child_5.ref();
2451             this.el.add (  child_5.el  );
2452         }
2453
2454         // user defined functions
2455     }
2456     public class Xcls_search_results : Object
2457     {
2458         public Gtk.ImageMenuItem el;
2459         private Xcls_MainWindow  _this;
2460
2461
2462             // my vars (def)
2463         public Xcls_ValaCompileErrors popup;
2464
2465         // ctor
2466         public Xcls_search_results(Xcls_MainWindow _owner )
2467         {
2468             _this = _owner;
2469             _this.search_results = this;
2470             this.el = new Gtk.ImageMenuItem();
2471
2472             // my vars (dec)
2473
2474             // set gobject values
2475             this.el.always_show_image = true;
2476             this.el.label = "Matches";
2477             var child_0 = new Xcls_Image72( _this );
2478             child_0.ref();
2479             this.el.set_image (  child_0.el  );
2480
2481             //listeners
2482             this.el.button_press_event.connect( () => {
2483             /*
2484                 if (this.popup == null) {
2485                     this.popup = new Xcls_ValaCompileErrors();
2486                     this.popup.window = _this;
2487                 }
2488                
2489                 
2490                 this.popup.show(this.notices, this.el);
2491                 */
2492                 return true;
2493             });
2494         }
2495
2496         // user defined functions
2497     }
2498     public class Xcls_Image72 : Object
2499     {
2500         public Gtk.Image el;
2501         private Xcls_MainWindow  _this;
2502
2503
2504             // my vars (def)
2505
2506         // ctor
2507         public Xcls_Image72(Xcls_MainWindow _owner )
2508         {
2509             _this = _owner;
2510             this.el = new Gtk.Image();
2511
2512             // my vars (dec)
2513
2514             // set gobject values
2515             this.el.icon_name = "system-search";
2516             this.el.sensitive = false;
2517         }
2518
2519         // user defined functions
2520     }
2521
2522
2523     public class Xcls_statusbar_compilestatus_label : Object
2524     {
2525         public Gtk.MenuItem el;
2526         private Xcls_MainWindow  _this;
2527
2528
2529             // my vars (def)
2530
2531         // ctor
2532         public Xcls_statusbar_compilestatus_label(Xcls_MainWindow _owner )
2533         {
2534             _this = _owner;
2535             _this.statusbar_compilestatus_label = this;
2536             this.el = new Gtk.MenuItem();
2537
2538             // my vars (dec)
2539
2540             // set gobject values
2541             this.el.label = "Compile Status:";
2542             this.el.visible = false;
2543         }
2544
2545         // user defined functions
2546     }
2547
2548     public class Xcls_statusbar_errors : Object
2549     {
2550         public Gtk.ImageMenuItem el;
2551         private Xcls_MainWindow  _this;
2552
2553
2554             // my vars (def)
2555         public Xcls_ValaCompileErrors popup;
2556         public Json.Object notices;
2557
2558         // ctor
2559         public Xcls_statusbar_errors(Xcls_MainWindow _owner )
2560         {
2561             _this = _owner;
2562             _this.statusbar_errors = this;
2563             this.el = new Gtk.ImageMenuItem();
2564
2565             // my vars (dec)
2566             this.notices = new Json.Object() ;
2567
2568             // set gobject values
2569             this.el.always_show_image = true;
2570             this.el.label = "Errors";
2571             var child_0 = new Xcls_Image75( _this );
2572             child_0.ref();
2573             this.el.set_image (  child_0.el  );
2574
2575             //listeners
2576             this.el.button_press_event.connect( () => {
2577                 if (this.popup == null) {
2578                     this.popup = new Xcls_ValaCompileErrors();
2579                     this.popup.window = _this;
2580                 }
2581                
2582                 
2583                 this.popup.show(this.notices, this.el);
2584                 return true;
2585             });
2586         }
2587
2588         // user defined functions
2589         public void setNotices (Json.Object nots, int qty) {
2590             this.el.show();
2591             this.el.label = qty.to_string() + " Errors";
2592             this.notices = nots;
2593         
2594         }
2595     }
2596     public class Xcls_Image75 : Object
2597     {
2598         public Gtk.Image el;
2599         private Xcls_MainWindow  _this;
2600
2601
2602             // my vars (def)
2603
2604         // ctor
2605         public Xcls_Image75(Xcls_MainWindow _owner )
2606         {
2607             _this = _owner;
2608             this.el = new Gtk.Image();
2609
2610             // my vars (dec)
2611
2612             // set gobject values
2613             this.el.icon_name = "dialog-error";
2614         }
2615
2616         // user defined functions
2617     }
2618
2619
2620     public class Xcls_statusbar_warnings : Object
2621     {
2622         public Gtk.ImageMenuItem el;
2623         private Xcls_MainWindow  _this;
2624
2625
2626             // my vars (def)
2627         public Xcls_ValaCompileErrors popup;
2628         public Json.Object notices;
2629
2630         // ctor
2631         public Xcls_statusbar_warnings(Xcls_MainWindow _owner )
2632         {
2633             _this = _owner;
2634             _this.statusbar_warnings = this;
2635             this.el = new Gtk.ImageMenuItem();
2636
2637             // my vars (dec)
2638             this.notices = new Json.Object();
2639
2640             // set gobject values
2641             this.el.always_show_image = true;
2642             this.el.label = "Warnings";
2643             var child_0 = new Xcls_Image77( _this );
2644             child_0.ref();
2645             this.el.set_image (  child_0.el  );
2646
2647             //listeners
2648             this.el.button_press_event.connect( () => {
2649                 if (this.popup == null) {
2650                     this.popup = new Xcls_ValaCompileErrors();
2651                     this.popup.window = _this;
2652                 }
2653                 
2654                 this.popup.show(this.notices, this.el);
2655                 return true;
2656             });
2657         }
2658
2659         // user defined functions
2660         public void setNotices (Json.Object nots, int qty) {
2661             this.el.show();
2662             this.el.label = qty.to_string() + " Warnings";
2663             this.notices = nots;
2664         
2665         }
2666     }
2667     public class Xcls_Image77 : Object
2668     {
2669         public Gtk.Image el;
2670         private Xcls_MainWindow  _this;
2671
2672
2673             // my vars (def)
2674
2675         // ctor
2676         public Xcls_Image77(Xcls_MainWindow _owner )
2677         {
2678             _this = _owner;
2679             this.el = new Gtk.Image();
2680
2681             // my vars (dec)
2682
2683             // set gobject values
2684             this.el.icon_name = "dialog-warning";
2685         }
2686
2687         // user defined functions
2688     }
2689
2690
2691     public class Xcls_statusbar_depricated : Object
2692     {
2693         public Gtk.ImageMenuItem el;
2694         private Xcls_MainWindow  _this;
2695
2696
2697             // my vars (def)
2698         public Xcls_ValaCompileErrors popup;
2699         public Json.Object notices;
2700
2701         // ctor
2702         public Xcls_statusbar_depricated(Xcls_MainWindow _owner )
2703         {
2704             _this = _owner;
2705             _this.statusbar_depricated = this;
2706             this.el = new Gtk.ImageMenuItem();
2707
2708             // my vars (dec)
2709             this.notices = new Json.Object();
2710
2711             // set gobject values
2712             this.el.always_show_image = true;
2713             this.el.label = "Depricated";
2714             var child_0 = new Xcls_Image79( _this );
2715             child_0.ref();
2716             this.el.set_image (  child_0.el  );
2717
2718             //listeners
2719             this.el.button_press_event.connect( () => {
2720                 if (this.popup == null) {
2721                     this.popup = new Xcls_ValaCompileErrors();
2722                     this.popup.window = _this;
2723                 }
2724                 
2725                 
2726                 this.popup.show(this.notices, this.el);
2727                 return true;
2728             });
2729         }
2730
2731         // user defined functions
2732         public void setNotices (Json.Object nots, int qty) {
2733             this.el.show();
2734             this.el.label = qty.to_string() + " Depricated";
2735             this.notices = nots;
2736         
2737         }
2738     }
2739     public class Xcls_Image79 : Object
2740     {
2741         public Gtk.Image el;
2742         private Xcls_MainWindow  _this;
2743
2744
2745             // my vars (def)
2746
2747         // ctor
2748         public Xcls_Image79(Xcls_MainWindow _owner )
2749         {
2750             _this = _owner;
2751             this.el = new Gtk.Image();
2752
2753             // my vars (dec)
2754
2755             // set gobject values
2756             this.el.icon_name = "dialog-information";
2757         }
2758
2759         // user defined functions
2760     }
2761
2762
2763     public class Xcls_statusbar_run : Object
2764     {
2765         public Gtk.ImageMenuItem el;
2766         private Xcls_MainWindow  _this;
2767
2768
2769             // my vars (def)
2770         public Xcls_ValaCompileErrors popup;
2771
2772         // ctor
2773         public Xcls_statusbar_run(Xcls_MainWindow _owner )
2774         {
2775             _this = _owner;
2776             _this.statusbar_run = this;
2777             this.el = new Gtk.ImageMenuItem();
2778
2779             // my vars (dec)
2780
2781             // set gobject values
2782             this.el.always_show_image = true;
2783             this.el.label = "Run";
2784             var child_0 = new Xcls_Image81( _this );
2785             child_0.ref();
2786             this.el.set_image (  child_0.el  );
2787
2788             //listeners
2789             this.el.button_press_event.connect( () => {
2790                 if (_this.windowstate.file == null) {
2791                         return true;
2792                 }
2793                 _this.windowstate.valasource.spawnExecute(_this.windowstate.file);
2794                 
2795                 _this.windowstate.compile_results.show(this.el,true);
2796                 
2797                 return true;
2798             });
2799         }
2800
2801         // user defined functions
2802     }
2803     public class Xcls_Image81 : Object
2804     {
2805         public Gtk.Image el;
2806         private Xcls_MainWindow  _this;
2807
2808
2809             // my vars (def)
2810
2811         // ctor
2812         public Xcls_Image81(Xcls_MainWindow _owner )
2813         {
2814             _this = _owner;
2815             this.el = new Gtk.Image();
2816
2817             // my vars (dec)
2818
2819             // set gobject values
2820             this.el.icon_name = "media-playback-start";
2821         }
2822
2823         // user defined functions
2824     }
2825
2826
2827
2828
2829
2830 }