1 static Xcls_ProjectSettings _ProjectSettings;
3 public class Xcls_ProjectSettings : Object
6 private Xcls_ProjectSettings _this;
8 public static Xcls_ProjectSettings singleton()
10 if (_ProjectSettings == null) {
11 _ProjectSettings= new Xcls_ProjectSettings();
13 return _ProjectSettings;
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;
28 public signal void buttonPressed (string btn);
29 public Project.Project project;
32 public Xcls_ProjectSettings()
35 this.el = new Gtk.VBox( false, 0 );
40 this.el.border_width = 5;
41 var child_0 = new Xcls_HBox2( _this );
43 this.el.pack_start ( child_0.el , false,false,0 );
44 var child_1 = new Xcls_Notebook5( _this );
46 this.el.pack_end ( child_1.el , true,true,0 );
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();
56 ((Gtk.SourceBuffer)(_this.view.el.get_buffer())) .set_language(
58 lm.get_language("html"));
61 //project.runhtml = project.runhtml || '';
62 _this.view.el.get_buffer().set_text(project.runhtml);
65 _this.rootURL.el.set_text( _this.project.rootURL );
66 _this.base_template.el.set_text(_this.project.base_template);
73 var buf = _this.view.el.get_buffer();
76 buf.get_start_iter(out s);
77 buf.get_end_iter(out e);
78 _this.project.runhtml = buf.get_text(s,e,true);
80 _this.project.rootURL = _this.rootURL.el.get_text();
81 _this.project.base_template = _this.base_template.el.get_text();
85 public class Xcls_HBox2 : Object
88 private Xcls_ProjectSettings _this;
94 public Xcls_HBox2(Xcls_ProjectSettings _owner )
97 this.el = new Gtk.HBox( true, 0 );
101 // set gobject values
102 this.el.expand = false;
103 this.el.vexpand = false;
104 var child_0 = new Xcls_Button3( _this );
106 this.el.add ( child_0.el );
107 var child_1 = new Xcls_Button4( _this );
109 this.el.add ( child_1.el );
112 // user defined functions
114 public class Xcls_Button3 : Object
116 public Gtk.Button el;
117 private Xcls_ProjectSettings _this;
123 public Xcls_Button3(Xcls_ProjectSettings _owner )
126 this.el = new Gtk.Button();
130 // set gobject values
131 this.el.label = "Apply";
134 this.el.button_press_event.connect( () => {
137 _this.buttonPressed("apply");
142 // user defined functions
144 public class Xcls_Button4 : Object
146 public Gtk.Button el;
147 private Xcls_ProjectSettings _this;
153 public Xcls_Button4(Xcls_ProjectSettings _owner )
156 this.el = new Gtk.Button();
160 // set gobject values
161 this.el.label = "Save";
164 this.el.button_press_event.connect( () => {
167 _this.buttonPressed("save");
172 // user defined functions
174 public class Xcls_Notebook5 : Object
176 public Gtk.Notebook el;
177 private Xcls_ProjectSettings _this;
183 public Xcls_Notebook5(Xcls_ProjectSettings _owner )
186 this.el = new Gtk.Notebook();
190 // set gobject values
191 var child_0 = new Xcls_label_global( _this );
193 var child_1 = new Xcls_label_database( _this );
195 var child_2 = new Xcls_VBox8( _this );
197 this.el.append_page ( child_2.el , _this.label_global.el );
198 var child_3 = new Xcls_VBox19( _this );
200 this.el.append_page ( child_3.el , _this.label_database.el );
203 // user defined functions
205 public class Xcls_label_global : Object
208 private Xcls_ProjectSettings _this;
214 public Xcls_label_global(Xcls_ProjectSettings _owner )
217 _this.label_global = this;
218 this.el = new Gtk.Label( "Global" );
222 // set gobject values
225 // user defined functions
227 public class Xcls_label_database : Object
230 private Xcls_ProjectSettings _this;
236 public Xcls_label_database(Xcls_ProjectSettings _owner )
239 _this.label_database = this;
240 this.el = new Gtk.Label( "Database" );
244 // set gobject values
247 // user defined functions
249 public class Xcls_VBox8 : Object
252 private Xcls_ProjectSettings _this;
258 public Xcls_VBox8(Xcls_ProjectSettings _owner )
261 this.el = new Gtk.VBox( false, 0 );
265 // set gobject values
266 var child_0 = new Xcls_path( _this );
268 this.el.pack_start ( child_0.el , false,false,0 );
269 var child_1 = new Xcls_HBox10( _this );
271 this.el.pack_start ( child_1.el , false,false,0 );
272 var child_2 = new Xcls_HBox13( _this );
274 this.el.pack_start ( child_2.el , false,false,0 );
275 var child_3 = new Xcls_Label16( _this );
277 this.el.pack_start ( child_3.el , false,false,0 );
278 var child_4 = new Xcls_ScrolledWindow17( _this );
280 this.el.pack_start ( child_4.el , true,true,0 );
283 // user defined functions
285 public class Xcls_path : Object
288 private Xcls_ProjectSettings _this;
294 public Xcls_path(Xcls_ProjectSettings _owner )
298 this.el = new Gtk.Label( "filename" );
302 // set gobject values
307 // user defined functions
309 public class Xcls_HBox10 : Object
312 private Xcls_ProjectSettings _this;
318 public Xcls_HBox10(Xcls_ProjectSettings _owner )
321 this.el = new Gtk.HBox( false, 0 );
325 // set gobject values
326 this.el.expand = false;
327 var child_0 = new Xcls_Label11( _this );
329 this.el.pack_start ( child_0.el , false,false,0 );
330 var child_1 = new Xcls_base_template( _this );
332 this.el.add ( child_1.el );
335 // user defined functions
337 public class Xcls_Label11 : Object
340 private Xcls_ProjectSettings _this;
346 public Xcls_Label11(Xcls_ProjectSettings _owner )
349 this.el = new Gtk.Label( "HTML template file" );
353 // set gobject values
357 // user defined functions
359 public class Xcls_base_template : Object
362 private Xcls_ProjectSettings _this;
368 public Xcls_base_template(Xcls_ProjectSettings _owner )
371 _this.base_template = this;
372 this.el = new Gtk.Entry();
376 // set gobject values
379 // user defined functions
381 public class Xcls_HBox13 : Object
384 private Xcls_ProjectSettings _this;
390 public Xcls_HBox13(Xcls_ProjectSettings _owner )
393 this.el = new Gtk.HBox( false, 0 );
397 // set gobject values
398 this.el.expand = false;
399 var child_0 = new Xcls_Label14( _this );
401 this.el.pack_start ( child_0.el , false,false,0 );
402 var child_1 = new Xcls_rootURL( _this );
404 this.el.add ( child_1.el );
407 // user defined functions
409 public class Xcls_Label14 : Object
412 private Xcls_ProjectSettings _this;
418 public Xcls_Label14(Xcls_ProjectSettings _owner )
421 this.el = new Gtk.Label( "root URL" );
425 // set gobject values
429 // user defined functions
431 public class Xcls_rootURL : Object
434 private Xcls_ProjectSettings _this;
440 public Xcls_rootURL(Xcls_ProjectSettings _owner )
443 _this.rootURL = this;
444 this.el = new Gtk.Entry();
448 // set gobject values
451 // user defined functions
453 public class Xcls_Label16 : Object
456 private Xcls_ProjectSettings _this;
462 public Xcls_Label16(Xcls_ProjectSettings _owner )
465 this.el = new Gtk.Label( "HTML To insert at end of <HEAD>" );
469 // set gobject values
472 // user defined functions
474 public class Xcls_ScrolledWindow17 : Object
476 public Gtk.ScrolledWindow el;
477 private Xcls_ProjectSettings _this;
483 public Xcls_ScrolledWindow17(Xcls_ProjectSettings _owner )
486 this.el = new Gtk.ScrolledWindow( null, null );
490 // set gobject values
491 var child_0 = new Xcls_view( _this );
493 this.el.add ( child_0.el );
496 // user defined functions
498 public class Xcls_view : Object
500 public Gtk.SourceView el;
501 private Xcls_ProjectSettings _this;
507 public Xcls_view(Xcls_ProjectSettings _owner )
511 this.el = new Gtk.SourceView();
515 // set gobject values
519 var description = Pango.FontDescription.from_string("monospace");
520 description.set_size(9000);
521 this.el.override_font(description);
524 this.el.key_release_event.connect( ( event) =>{
525 if (event.keyval != 115) {
529 if ( (event.state & Gdk.ModifierType.CONTROL_MASK ) < 1 ) {
532 var buf = this.el.get_buffer();
535 buf.get_start_iter(out s);
536 buf.get_end_iter(out e);
537 _this.project.runhtml = buf.get_text(s,e,true);
540 _this.buttonPressed("save");
547 // user defined functions
549 public class Xcls_VBox19 : Object
552 private Xcls_ProjectSettings _this;
558 public Xcls_VBox19(Xcls_ProjectSettings _owner )
561 this.el = new Gtk.VBox( false, 0 );
565 // set gobject values
566 var child_0 = new Xcls_Label20( _this );
568 this.el.pack_start ( child_0.el , false,false,0 );
569 var child_1 = new Xcls_database_DBTYPE( _this );
571 this.el.pack_start ( child_1.el , false,false,0 );
572 var child_2 = new Xcls_Label22( _this );
574 this.el.pack_start ( child_2.el , false,false,0 );
575 var child_3 = new Xcls_database_DBNAME( _this );
577 this.el.pack_start ( child_3.el , false,false,0 );
578 var child_4 = new Xcls_Label24( _this );
580 this.el.pack_start ( child_4.el , false,false,0 );
581 var child_5 = new Xcls_database_DBUSERNAME( _this );
583 this.el.pack_start ( child_5.el , false,false,0 );
584 var child_6 = new Xcls_Label26( _this );
586 this.el.pack_start ( child_6.el , false,false,0 );
587 var child_7 = new Xcls_database_DBPASSWORD( _this );
589 this.el.pack_start ( child_7.el , false,false,0 );
590 var child_8 = new Xcls_Button28( _this );
592 this.el.pack_start ( child_8.el , false,false,0 );
593 var child_9 = new Xcls_database_ERROR( _this );
595 this.el.pack_start ( child_9.el , false,false,0 );
598 // user defined functions
600 public class Xcls_Label20 : Object
603 private Xcls_ProjectSettings _this;
609 public Xcls_Label20(Xcls_ProjectSettings _owner )
612 this.el = new Gtk.Label( "Type (eg. MySQL or PostgreSQL)" );
616 // set gobject values
620 // user defined functions
622 public class Xcls_database_DBTYPE : Object
625 private Xcls_ProjectSettings _this;
631 public Xcls_database_DBTYPE(Xcls_ProjectSettings _owner )
634 _this.database_DBTYPE = this;
635 this.el = new Gtk.Entry();
639 // set gobject values
642 // user defined functions
644 public class Xcls_Label22 : Object
647 private Xcls_ProjectSettings _this;
653 public Xcls_Label22(Xcls_ProjectSettings _owner )
656 this.el = new Gtk.Label( "Name" );
660 // set gobject values
664 // user defined functions
666 public class Xcls_database_DBNAME : Object
669 private Xcls_ProjectSettings _this;
675 public Xcls_database_DBNAME(Xcls_ProjectSettings _owner )
678 _this.database_DBNAME = this;
679 this.el = new Gtk.Entry();
683 // set gobject values
686 // user defined functions
688 public class Xcls_Label24 : Object
691 private Xcls_ProjectSettings _this;
697 public Xcls_Label24(Xcls_ProjectSettings _owner )
700 this.el = new Gtk.Label( "Username" );
704 // set gobject values
708 // user defined functions
710 public class Xcls_database_DBUSERNAME : Object
713 private Xcls_ProjectSettings _this;
719 public Xcls_database_DBUSERNAME(Xcls_ProjectSettings _owner )
722 _this.database_DBUSERNAME = this;
723 this.el = new Gtk.Entry();
727 // set gobject values
730 // user defined functions
732 public class Xcls_Label26 : Object
735 private Xcls_ProjectSettings _this;
741 public Xcls_Label26(Xcls_ProjectSettings _owner )
744 this.el = new Gtk.Label( "Password" );
748 // set gobject values
752 // user defined functions
754 public class Xcls_database_DBPASSWORD : Object
757 private Xcls_ProjectSettings _this;
763 public Xcls_database_DBPASSWORD(Xcls_ProjectSettings _owner )
766 _this.database_DBPASSWORD = this;
767 this.el = new Gtk.Entry();
771 // set gobject values
774 // user defined functions
776 public class Xcls_Button28 : Object
778 public Gtk.Button el;
779 private Xcls_ProjectSettings _this;
785 public Xcls_Button28(Xcls_ProjectSettings _owner )
788 this.el = new Gtk.Button();
792 // set gobject values
793 this.el.label = "Check Connection";
796 this.el.clicked.connect( () => {
799 _this.database_ERROR.el.label = "";
802 // assumes localhost...
803 var cnc = Gda.Connection.open_from_string (
804 _this.database_DBTYPE.el.get_text(),
805 "DB_NAME=" + _this.database_DBNAME.el.get_text(),
806 "USERNAME=" + _this.database_DBUSERNAME.el.get_text() +
807 ";PASSWORD=" + _this.database_DBPASSWORD.el.get_text(),
808 Gda.ConnectionOptions.NONE
810 } catch (ConnectionError ce) {
811 _this.database_ERROR.el.label = ce.message;
813 _this.database_ERROR.el.label = ue.message;
816 _this.database_ERROR.el.label = "Connection Succeeded";
821 // user defined functions
823 public class Xcls_database_ERROR : Object
826 private Xcls_ProjectSettings _this;
832 public Xcls_database_ERROR(Xcls_ProjectSettings _owner )
835 _this.database_ERROR = this;
836 this.el = new Gtk.Label( " " );
840 // set gobject values
845 // user defined functions