src/Builder4/ProjectSettings.bjs
[app.Builder.js] / src / Builder4 / ProjectSettings.vala
1 static Xcls_ProjectSettings  _ProjectSettings;
2
3 public class Xcls_ProjectSettings : Object 
4 {
5     public Gtk.VBox el;
6     private Xcls_ProjectSettings  _this;
7
8     public static Xcls_ProjectSettings singleton()
9     {
10         if (_ProjectSettings == null) {
11             _ProjectSettings= new Xcls_ProjectSettings();
12         }
13         return _ProjectSettings;
14     }
15     public Xcls_label_global label_global;
16     public Xcls_label_database label_database;
17     public Xcls_path path;
18     public Xcls_base_template base_template;
19     public Xcls_rootURL rootURL;
20     public Xcls_view view;
21     public Xcls_database_DBTYPE database_DBTYPE;
22     public Xcls_database_DBNAME database_DBNAME;
23     public Xcls_database_DBUSERNAME database_DBUSERNAME;
24     public Xcls_database_DBPASSWORD database_DBPASSWORD;
25     public Xcls_database_ERROR database_ERROR;
26
27         // my vars (def)
28     public signal void buttonPressed (string btn);
29     public Project.Project project;
30
31     // ctor 
32     public Xcls_ProjectSettings()
33     {
34         _this = this;
35         this.el = new Gtk.VBox( false, 0 );
36
37         // my vars (dec)
38
39         // set gobject values
40         this.el.border_width = 5;
41         var child_0 = new Xcls_HBox2( _this );
42         child_0.ref();
43         this.el.pack_start (  child_0.el , false,false,0 );
44         var child_1 = new Xcls_Notebook5( _this );
45         child_1.ref();
46         this.el.pack_end (  child_1.el , true,true,0 );
47     }
48
49     // user defined functions 
50     public void show (Project.Project project) {
51         _this.project = project;
52         _this.path.el.label = project.firstPath();
53         // get the active project.
54          var lm = Gtk.SourceLanguageManager.get_default();
55                     
56         ((Gtk.SourceBuffer)(_this.view.el.get_buffer())) .set_language(
57         
58             lm.get_language("html"));
59       
60         //print (project.fn);
61         //project.runhtml = project.runhtml || '';
62         _this.view.el.get_buffer().set_text(project.runhtml);
63         
64            
65         _this.rootURL.el.set_text( _this.project.rootURL );
66         _this.base_template.el.set_text(_this.project.base_template);    
67          var js = _this.project;
68         _this.database_DBTYPE.el.set_text(     js.get_string_member("DBTYPE") );
69         _this.database_DBNAME.el.set_text(    js.get_string_member("DBNAME") );
70         _this.database_DBUSERNAME.el.set_text(    js.get_string_member("DBUSERNAME") );
71         _this.database_DBPASSWORD.el.set_text(    js.get_string_member("DBPASSWORD") );
72         //this.el.show_all();
73     }
74     public void save ()
75     {
76        var buf =    _this.view.el.get_buffer();
77        Gtk.TextIter s;
78          Gtk.TextIter e;
79         buf.get_start_iter(out s);
80         buf.get_end_iter(out e);
81           _this.project.runhtml = buf.get_text(s,e,true);
82           
83         _this.project.rootURL = _this.rootURL.el.get_text();
84         _this.project.base_template = _this.base_template.el.get_text();    
85         
86         var js = _this.project.json_project_data;
87         js.set_string_member("DBTYPE", _this.database_DBTYPE.el.get_text());
88        js.set_string_member("DBNAME", _this.database_DBNAME.el.get_text());
89         js.set_string_member("DBUSERNAME", _this.database_DBUSERNAME.el.get_text());
90         js.set_string_member("DBPASSWORD", _this.database_DBPASSWORD.el.get_text());
91     //    _this.project.set_string_member("DBHOST", _this.DBTYPE.el.get_text());    
92         
93         
94         
95     }
96     public class Xcls_HBox2 : Object 
97     {
98         public Gtk.HBox el;
99         private Xcls_ProjectSettings  _this;
100
101
102             // my vars (def)
103
104         // ctor 
105         public Xcls_HBox2(Xcls_ProjectSettings _owner )
106         {
107             _this = _owner;
108             this.el = new Gtk.HBox( true, 0 );
109
110             // my vars (dec)
111
112             // set gobject values
113             this.el.expand = false;
114             this.el.vexpand = false;
115             var child_0 = new Xcls_Button3( _this );
116             child_0.ref();
117             this.el.add (  child_0.el  );
118             var child_1 = new Xcls_Button4( _this );
119             child_1.ref();
120             this.el.add (  child_1.el  );
121         }
122
123         // user defined functions 
124     }
125     public class Xcls_Button3 : Object 
126     {
127         public Gtk.Button el;
128         private Xcls_ProjectSettings  _this;
129
130
131             // my vars (def)
132
133         // ctor 
134         public Xcls_Button3(Xcls_ProjectSettings _owner )
135         {
136             _this = _owner;
137             this.el = new Gtk.Button();
138
139             // my vars (dec)
140
141             // set gobject values
142             this.el.label = "Apply";
143
144             // listeners 
145             this.el.button_press_event.connect( () => {
146                 _this.save();
147                       
148                 _this.buttonPressed("apply");
149                     return false;
150             });
151         }
152
153         // user defined functions 
154     }
155     public class Xcls_Button4 : Object 
156     {
157         public Gtk.Button el;
158         private Xcls_ProjectSettings  _this;
159
160
161             // my vars (def)
162
163         // ctor 
164         public Xcls_Button4(Xcls_ProjectSettings _owner )
165         {
166             _this = _owner;
167             this.el = new Gtk.Button();
168
169             // my vars (dec)
170
171             // set gobject values
172             this.el.label = "Save";
173
174             // listeners 
175             this.el.button_press_event.connect( () => {
176                    _this.save();
177                       
178                 _this.buttonPressed("save");
179                     return false;
180             });
181         }
182
183         // user defined functions 
184     }
185     public class Xcls_Notebook5 : Object 
186     {
187         public Gtk.Notebook el;
188         private Xcls_ProjectSettings  _this;
189
190
191             // my vars (def)
192
193         // ctor 
194         public Xcls_Notebook5(Xcls_ProjectSettings _owner )
195         {
196             _this = _owner;
197             this.el = new Gtk.Notebook();
198
199             // my vars (dec)
200
201             // set gobject values
202             var child_0 = new Xcls_label_global( _this );
203             child_0.ref();
204             var child_1 = new Xcls_label_database( _this );
205             child_1.ref();
206             var child_2 = new Xcls_VBox8( _this );
207             child_2.ref();
208             this.el.append_page (  child_2.el , _this.label_global.el );
209             var child_3 = new Xcls_VBox19( _this );
210             child_3.ref();
211             this.el.append_page (  child_3.el , _this.label_database.el );
212         }
213
214         // user defined functions 
215     }
216     public class Xcls_label_global : Object 
217     {
218         public Gtk.Label el;
219         private Xcls_ProjectSettings  _this;
220
221
222             // my vars (def)
223
224         // ctor 
225         public Xcls_label_global(Xcls_ProjectSettings _owner )
226         {
227             _this = _owner;
228             _this.label_global = this;
229             this.el = new Gtk.Label( "Global" );
230
231             // my vars (dec)
232
233             // set gobject values
234         }
235
236         // user defined functions 
237     }
238     public class Xcls_label_database : Object 
239     {
240         public Gtk.Label el;
241         private Xcls_ProjectSettings  _this;
242
243
244             // my vars (def)
245
246         // ctor 
247         public Xcls_label_database(Xcls_ProjectSettings _owner )
248         {
249             _this = _owner;
250             _this.label_database = this;
251             this.el = new Gtk.Label( "Database" );
252
253             // my vars (dec)
254
255             // set gobject values
256         }
257
258         // user defined functions 
259     }
260     public class Xcls_VBox8 : Object 
261     {
262         public Gtk.VBox el;
263         private Xcls_ProjectSettings  _this;
264
265
266             // my vars (def)
267
268         // ctor 
269         public Xcls_VBox8(Xcls_ProjectSettings _owner )
270         {
271             _this = _owner;
272             this.el = new Gtk.VBox( false, 0 );
273
274             // my vars (dec)
275
276             // set gobject values
277             var child_0 = new Xcls_path( _this );
278             child_0.ref();
279             this.el.pack_start (  child_0.el , false,false,0 );
280             var child_1 = new Xcls_HBox10( _this );
281             child_1.ref();
282             this.el.pack_start (  child_1.el , false,false,0 );
283             var child_2 = new Xcls_HBox13( _this );
284             child_2.ref();
285             this.el.pack_start (  child_2.el , false,false,0 );
286             var child_3 = new Xcls_Label16( _this );
287             child_3.ref();
288             this.el.pack_start (  child_3.el , false,false,0 );
289             var child_4 = new Xcls_ScrolledWindow17( _this );
290             child_4.ref();
291             this.el.pack_start (  child_4.el , true,true,0 );
292         }
293
294         // user defined functions 
295     }
296     public class Xcls_path : Object 
297     {
298         public Gtk.Label el;
299         private Xcls_ProjectSettings  _this;
300
301
302             // my vars (def)
303
304         // ctor 
305         public Xcls_path(Xcls_ProjectSettings _owner )
306         {
307             _this = _owner;
308             _this.path = this;
309             this.el = new Gtk.Label( "filename" );
310
311             // my vars (dec)
312
313             // set gobject values
314             this.el.margin = 3;
315             this.el.xalign = 0f;
316         }
317
318         // user defined functions 
319     }
320     public class Xcls_HBox10 : Object 
321     {
322         public Gtk.HBox el;
323         private Xcls_ProjectSettings  _this;
324
325
326             // my vars (def)
327
328         // ctor 
329         public Xcls_HBox10(Xcls_ProjectSettings _owner )
330         {
331             _this = _owner;
332             this.el = new Gtk.HBox( false, 0 );
333
334             // my vars (dec)
335
336             // set gobject values
337             this.el.expand = false;
338             var child_0 = new Xcls_Label11( _this );
339             child_0.ref();
340             this.el.pack_start (  child_0.el , false,false,0 );
341             var child_1 = new Xcls_base_template( _this );
342             child_1.ref();
343             this.el.add (  child_1.el  );
344         }
345
346         // user defined functions 
347     }
348     public class Xcls_Label11 : Object 
349     {
350         public Gtk.Label el;
351         private Xcls_ProjectSettings  _this;
352
353
354             // my vars (def)
355
356         // ctor 
357         public Xcls_Label11(Xcls_ProjectSettings _owner )
358         {
359             _this = _owner;
360             this.el = new Gtk.Label( "HTML template file" );
361
362             // my vars (dec)
363
364             // set gobject values
365             this.el.margin = 3;
366         }
367
368         // user defined functions 
369     }
370     public class Xcls_base_template : Object 
371     {
372         public Gtk.Entry el;
373         private Xcls_ProjectSettings  _this;
374
375
376             // my vars (def)
377
378         // ctor 
379         public Xcls_base_template(Xcls_ProjectSettings _owner )
380         {
381             _this = _owner;
382             _this.base_template = this;
383             this.el = new Gtk.Entry();
384
385             // my vars (dec)
386
387             // set gobject values
388         }
389
390         // user defined functions 
391     }
392     public class Xcls_HBox13 : Object 
393     {
394         public Gtk.HBox el;
395         private Xcls_ProjectSettings  _this;
396
397
398             // my vars (def)
399
400         // ctor 
401         public Xcls_HBox13(Xcls_ProjectSettings _owner )
402         {
403             _this = _owner;
404             this.el = new Gtk.HBox( false, 0 );
405
406             // my vars (dec)
407
408             // set gobject values
409             this.el.expand = false;
410             var child_0 = new Xcls_Label14( _this );
411             child_0.ref();
412             this.el.pack_start (  child_0.el , false,false,0 );
413             var child_1 = new Xcls_rootURL( _this );
414             child_1.ref();
415             this.el.add (  child_1.el  );
416         }
417
418         // user defined functions 
419     }
420     public class Xcls_Label14 : Object 
421     {
422         public Gtk.Label el;
423         private Xcls_ProjectSettings  _this;
424
425
426             // my vars (def)
427
428         // ctor 
429         public Xcls_Label14(Xcls_ProjectSettings _owner )
430         {
431             _this = _owner;
432             this.el = new Gtk.Label( "root URL" );
433
434             // my vars (dec)
435
436             // set gobject values
437             this.el.margin = 3;
438         }
439
440         // user defined functions 
441     }
442     public class Xcls_rootURL : Object 
443     {
444         public Gtk.Entry el;
445         private Xcls_ProjectSettings  _this;
446
447
448             // my vars (def)
449
450         // ctor 
451         public Xcls_rootURL(Xcls_ProjectSettings _owner )
452         {
453             _this = _owner;
454             _this.rootURL = this;
455             this.el = new Gtk.Entry();
456
457             // my vars (dec)
458
459             // set gobject values
460         }
461
462         // user defined functions 
463     }
464     public class Xcls_Label16 : Object 
465     {
466         public Gtk.Label el;
467         private Xcls_ProjectSettings  _this;
468
469
470             // my vars (def)
471
472         // ctor 
473         public Xcls_Label16(Xcls_ProjectSettings _owner )
474         {
475             _this = _owner;
476             this.el = new Gtk.Label( "HTML To insert at end of <HEAD>" );
477
478             // my vars (dec)
479
480             // set gobject values
481         }
482
483         // user defined functions 
484     }
485     public class Xcls_ScrolledWindow17 : Object 
486     {
487         public Gtk.ScrolledWindow el;
488         private Xcls_ProjectSettings  _this;
489
490
491             // my vars (def)
492
493         // ctor 
494         public Xcls_ScrolledWindow17(Xcls_ProjectSettings _owner )
495         {
496             _this = _owner;
497             this.el = new Gtk.ScrolledWindow( null, null );
498
499             // my vars (dec)
500
501             // set gobject values
502             var child_0 = new Xcls_view( _this );
503             child_0.ref();
504             this.el.add (  child_0.el  );
505         }
506
507         // user defined functions 
508     }
509     public class Xcls_view : Object 
510     {
511         public Gtk.SourceView el;
512         private Xcls_ProjectSettings  _this;
513
514
515             // my vars (def)
516
517         // ctor 
518         public Xcls_view(Xcls_ProjectSettings _owner )
519         {
520             _this = _owner;
521             _this.view = this;
522             this.el = new Gtk.SourceView();
523
524             // my vars (dec)
525
526             // set gobject values
527
528             // init method 
529
530             var description =   Pango.FontDescription.from_string("monospace");
531                 description.set_size(9000);
532                 this.el.override_font(description);
533
534             // listeners 
535             this.el.key_release_event.connect( ( event) =>{
536                 if (event.keyval != 115) {
537                     return false;
538                      
539                 }
540                 if   ( (event.state & Gdk.ModifierType.CONTROL_MASK ) < 1 ) {
541                     return false;
542                 }
543                  var buf =    this.el.get_buffer();
544                 Gtk.TextIter s;
545                 Gtk.TextIter e;
546                 buf.get_start_iter(out s);
547                 buf.get_end_iter(out e);
548                 _this.project.runhtml = buf.get_text(s,e,true);
549                 
550                       
551                 _this.buttonPressed("save");
552                  
553                 return false;
554                      
555             });
556         }
557
558         // user defined functions 
559     }
560     public class Xcls_VBox19 : Object 
561     {
562         public Gtk.VBox el;
563         private Xcls_ProjectSettings  _this;
564
565
566             // my vars (def)
567
568         // ctor 
569         public Xcls_VBox19(Xcls_ProjectSettings _owner )
570         {
571             _this = _owner;
572             this.el = new Gtk.VBox( false, 0 );
573
574             // my vars (dec)
575
576             // set gobject values
577             var child_0 = new Xcls_Label20( _this );
578             child_0.ref();
579             this.el.pack_start (  child_0.el , false,false,0 );
580             var child_1 = new Xcls_database_DBTYPE( _this );
581             child_1.ref();
582             this.el.pack_start (  child_1.el , false,false,0 );
583             var child_2 = new Xcls_Label22( _this );
584             child_2.ref();
585             this.el.pack_start (  child_2.el , false,false,0 );
586             var child_3 = new Xcls_database_DBNAME( _this );
587             child_3.ref();
588             this.el.pack_start (  child_3.el , false,false,0 );
589             var child_4 = new Xcls_Label24( _this );
590             child_4.ref();
591             this.el.pack_start (  child_4.el , false,false,0 );
592             var child_5 = new Xcls_database_DBUSERNAME( _this );
593             child_5.ref();
594             this.el.pack_start (  child_5.el , false,false,0 );
595             var child_6 = new Xcls_Label26( _this );
596             child_6.ref();
597             this.el.pack_start (  child_6.el , false,false,0 );
598             var child_7 = new Xcls_database_DBPASSWORD( _this );
599             child_7.ref();
600             this.el.pack_start (  child_7.el , false,false,0 );
601             var child_8 = new Xcls_Button28( _this );
602             child_8.ref();
603             this.el.pack_start (  child_8.el , false,false,0 );
604             var child_9 = new Xcls_database_ERROR( _this );
605             child_9.ref();
606             this.el.pack_start (  child_9.el , false,false,0 );
607         }
608
609         // user defined functions 
610     }
611     public class Xcls_Label20 : Object 
612     {
613         public Gtk.Label el;
614         private Xcls_ProjectSettings  _this;
615
616
617             // my vars (def)
618
619         // ctor 
620         public Xcls_Label20(Xcls_ProjectSettings _owner )
621         {
622             _this = _owner;
623             this.el = new Gtk.Label( "Type (eg. MySQL or PostgreSQL)" );
624
625             // my vars (dec)
626
627             // set gobject values
628             this.el.xalign = 0f;
629         }
630
631         // user defined functions 
632     }
633     public class Xcls_database_DBTYPE : Object 
634     {
635         public Gtk.Entry el;
636         private Xcls_ProjectSettings  _this;
637
638
639             // my vars (def)
640
641         // ctor 
642         public Xcls_database_DBTYPE(Xcls_ProjectSettings _owner )
643         {
644             _this = _owner;
645             _this.database_DBTYPE = this;
646             this.el = new Gtk.Entry();
647
648             // my vars (dec)
649
650             // set gobject values
651         }
652
653         // user defined functions 
654     }
655     public class Xcls_Label22 : Object 
656     {
657         public Gtk.Label el;
658         private Xcls_ProjectSettings  _this;
659
660
661             // my vars (def)
662
663         // ctor 
664         public Xcls_Label22(Xcls_ProjectSettings _owner )
665         {
666             _this = _owner;
667             this.el = new Gtk.Label( "Name" );
668
669             // my vars (dec)
670
671             // set gobject values
672             this.el.xalign = 0f;
673         }
674
675         // user defined functions 
676     }
677     public class Xcls_database_DBNAME : Object 
678     {
679         public Gtk.Entry el;
680         private Xcls_ProjectSettings  _this;
681
682
683             // my vars (def)
684
685         // ctor 
686         public Xcls_database_DBNAME(Xcls_ProjectSettings _owner )
687         {
688             _this = _owner;
689             _this.database_DBNAME = this;
690             this.el = new Gtk.Entry();
691
692             // my vars (dec)
693
694             // set gobject values
695         }
696
697         // user defined functions 
698     }
699     public class Xcls_Label24 : Object 
700     {
701         public Gtk.Label el;
702         private Xcls_ProjectSettings  _this;
703
704
705             // my vars (def)
706
707         // ctor 
708         public Xcls_Label24(Xcls_ProjectSettings _owner )
709         {
710             _this = _owner;
711             this.el = new Gtk.Label( "Username" );
712
713             // my vars (dec)
714
715             // set gobject values
716             this.el.xalign = 0f;
717         }
718
719         // user defined functions 
720     }
721     public class Xcls_database_DBUSERNAME : Object 
722     {
723         public Gtk.Entry el;
724         private Xcls_ProjectSettings  _this;
725
726
727             // my vars (def)
728
729         // ctor 
730         public Xcls_database_DBUSERNAME(Xcls_ProjectSettings _owner )
731         {
732             _this = _owner;
733             _this.database_DBUSERNAME = this;
734             this.el = new Gtk.Entry();
735
736             // my vars (dec)
737
738             // set gobject values
739         }
740
741         // user defined functions 
742     }
743     public class Xcls_Label26 : Object 
744     {
745         public Gtk.Label el;
746         private Xcls_ProjectSettings  _this;
747
748
749             // my vars (def)
750
751         // ctor 
752         public Xcls_Label26(Xcls_ProjectSettings _owner )
753         {
754             _this = _owner;
755             this.el = new Gtk.Label( "Password" );
756
757             // my vars (dec)
758
759             // set gobject values
760             this.el.xalign = 0f;
761         }
762
763         // user defined functions 
764     }
765     public class Xcls_database_DBPASSWORD : Object 
766     {
767         public Gtk.Entry el;
768         private Xcls_ProjectSettings  _this;
769
770
771             // my vars (def)
772
773         // ctor 
774         public Xcls_database_DBPASSWORD(Xcls_ProjectSettings _owner )
775         {
776             _this = _owner;
777             _this.database_DBPASSWORD = this;
778             this.el = new Gtk.Entry();
779
780             // my vars (dec)
781
782             // set gobject values
783         }
784
785         // user defined functions 
786     }
787     public class Xcls_Button28 : Object 
788     {
789         public Gtk.Button el;
790         private Xcls_ProjectSettings  _this;
791
792
793             // my vars (def)
794
795         // ctor 
796         public Xcls_Button28(Xcls_ProjectSettings _owner )
797         {
798             _this = _owner;
799             this.el = new Gtk.Button();
800
801             // my vars (dec)
802
803             // set gobject values
804             this.el.label = "Check Connection";
805
806             // listeners 
807             this.el.clicked.connect( () => {
808             
809             
810               _this.database_ERROR.el.label    = "";
811                 Gda.Connection cnc;
812                 try {
813                     // assumes localhost...
814                      cnc = Gda.Connection.open_from_string (
815                                 _this.database_DBTYPE.el.get_text(),
816                                 "DB_NAME=" + _this.database_DBNAME.el.get_text(), 
817                                 "USERNAME=" + _this.database_DBUSERNAME.el.get_text() + 
818                                 ";PASSWORD=" + _this.database_DBPASSWORD.el.get_text(),
819                                 Gda.ConnectionOptions.NONE
820                         );
821                //} catch (Gda.ConnectionError ce) { 
822                //   _this.database_ERROR.el.label = ce.message;        
823                } catch(Error ue) {
824                   _this.database_ERROR.el.label = ue.message;
825                     return;
826                }
827               _this.database_ERROR.el.label = "Connection Succeeded";
828                cnc.close();
829             });
830         }
831
832         // user defined functions 
833     }
834     public class Xcls_database_ERROR : Object 
835     {
836         public Gtk.Label el;
837         private Xcls_ProjectSettings  _this;
838
839
840             // my vars (def)
841
842         // ctor 
843         public Xcls_database_ERROR(Xcls_ProjectSettings _owner )
844         {
845             _this = _owner;
846             _this.database_ERROR = this;
847             this.el = new Gtk.Label( " " );
848
849             // my vars (dec)
850
851             // set gobject values
852             this.el.margin = 3;
853             this.el.xalign = 0f;
854         }
855
856         // user defined functions 
857     }
858 }