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             // listeners 
653             this.el.key_press_event.connect( (ev) => {
654             
655                 if (ev.keyval == Gdk.Key.Tab) {
656                     _this.database_DBNAME.el.grab_focus();
657                     return true;
658                 }
659             
660             
661                 return false;
662             });
663         }
664
665         // user defined functions 
666     }
667     public class Xcls_Label22 : Object 
668     {
669         public Gtk.Label el;
670         private Xcls_ProjectSettings  _this;
671
672
673             // my vars (def)
674
675         // ctor 
676         public Xcls_Label22(Xcls_ProjectSettings _owner )
677         {
678             _this = _owner;
679             this.el = new Gtk.Label( "Name" );
680
681             // my vars (dec)
682
683             // set gobject values
684             this.el.xalign = 0f;
685         }
686
687         // user defined functions 
688     }
689     public class Xcls_database_DBNAME : Object 
690     {
691         public Gtk.Entry el;
692         private Xcls_ProjectSettings  _this;
693
694
695             // my vars (def)
696
697         // ctor 
698         public Xcls_database_DBNAME(Xcls_ProjectSettings _owner )
699         {
700             _this = _owner;
701             _this.database_DBNAME = this;
702             this.el = new Gtk.Entry();
703
704             // my vars (dec)
705
706             // set gobject values
707
708             // listeners 
709             this.el.key_press_event.connect( (ev) => {
710             
711                 if (ev.keyval == Gdk.Key.Tab) {
712                     _this.database_DBUSERNAME.el.grab_focus();
713                     return true;
714                 }
715             
716             
717                 return false;
718             });
719         }
720
721         // user defined functions 
722     }
723     public class Xcls_Label24 : Object 
724     {
725         public Gtk.Label el;
726         private Xcls_ProjectSettings  _this;
727
728
729             // my vars (def)
730
731         // ctor 
732         public Xcls_Label24(Xcls_ProjectSettings _owner )
733         {
734             _this = _owner;
735             this.el = new Gtk.Label( "Username" );
736
737             // my vars (dec)
738
739             // set gobject values
740             this.el.xalign = 0f;
741         }
742
743         // user defined functions 
744     }
745     public class Xcls_database_DBUSERNAME : Object 
746     {
747         public Gtk.Entry el;
748         private Xcls_ProjectSettings  _this;
749
750
751             // my vars (def)
752
753         // ctor 
754         public Xcls_database_DBUSERNAME(Xcls_ProjectSettings _owner )
755         {
756             _this = _owner;
757             _this.database_DBUSERNAME = this;
758             this.el = new Gtk.Entry();
759
760             // my vars (dec)
761
762             // set gobject values
763
764             // listeners 
765             this.el.key_press_event.connect( (ev) => {
766             
767                 if (ev.keyval == Gdk.Key.Tab) {
768                     _this.database_DBPASSWORD.el.grab_focus();
769                     return true;
770                 }
771             
772             
773                 return false;
774             });
775         }
776
777         // user defined functions 
778     }
779     public class Xcls_Label26 : Object 
780     {
781         public Gtk.Label el;
782         private Xcls_ProjectSettings  _this;
783
784
785             // my vars (def)
786
787         // ctor 
788         public Xcls_Label26(Xcls_ProjectSettings _owner )
789         {
790             _this = _owner;
791             this.el = new Gtk.Label( "Password" );
792
793             // my vars (dec)
794
795             // set gobject values
796             this.el.xalign = 0f;
797         }
798
799         // user defined functions 
800     }
801     public class Xcls_database_DBPASSWORD : Object 
802     {
803         public Gtk.Entry el;
804         private Xcls_ProjectSettings  _this;
805
806
807             // my vars (def)
808
809         // ctor 
810         public Xcls_database_DBPASSWORD(Xcls_ProjectSettings _owner )
811         {
812             _this = _owner;
813             _this.database_DBPASSWORD = this;
814             this.el = new Gtk.Entry();
815
816             // my vars (dec)
817
818             // set gobject values
819         }
820
821         // user defined functions 
822     }
823     public class Xcls_Button28 : Object 
824     {
825         public Gtk.Button el;
826         private Xcls_ProjectSettings  _this;
827
828
829             // my vars (def)
830
831         // ctor 
832         public Xcls_Button28(Xcls_ProjectSettings _owner )
833         {
834             _this = _owner;
835             this.el = new Gtk.Button();
836
837             // my vars (dec)
838
839             // set gobject values
840             this.el.label = "Check Connection";
841
842             // listeners 
843             this.el.clicked.connect( () => {
844             
845             
846               _this.database_ERROR.el.label    = "";
847                 Gda.Connection cnc;
848                 try {
849                     // assumes localhost...
850                      cnc = Gda.Connection.open_from_string (
851                                 _this.database_DBTYPE.el.get_text(),
852                                 "DB_NAME=" + _this.database_DBNAME.el.get_text(), 
853                                 "USERNAME=" + _this.database_DBUSERNAME.el.get_text() + 
854                                 ";PASSWORD=" + _this.database_DBPASSWORD.el.get_text(),
855                                 Gda.ConnectionOptions.NONE
856                         );
857                //} catch (Gda.ConnectionError ce) { 
858                //   _this.database_ERROR.el.label = ce.message;        
859                } catch(Error ue) {
860                   _this.database_ERROR.el.label = ue.message;
861                     return;
862                }
863               _this.database_ERROR.el.label = "Connection Succeeded";
864                cnc.close();
865             });
866         }
867
868         // user defined functions 
869     }
870     public class Xcls_database_ERROR : Object 
871     {
872         public Gtk.Label el;
873         private Xcls_ProjectSettings  _this;
874
875
876             // my vars (def)
877
878         // ctor 
879         public Xcls_database_ERROR(Xcls_ProjectSettings _owner )
880         {
881             _this = _owner;
882             _this.database_ERROR = this;
883             this.el = new Gtk.Label( " " );
884
885             // my vars (dec)
886
887             // set gobject values
888             this.el.margin = 3;
889             this.el.xalign = 0f;
890         }
891
892         // user defined functions 
893     }
894 }