src/Builder4/ProjectSettings.bjs
[app.Builder.js] / src / Builder4 / ProjectSettings.bjs
1 {
2  "name" : "ProjectSettings",
3  "parent" : "",
4  "title" : "",
5  "path" : "/home/alan/gitlive/app.Builder.js/src/Builder4/ProjectSettings.bjs",
6  "permname" : "",
7  "modOrder" : "",
8  "items" : [
9   {
10    "@ void buttonPressed" : "(string btn)",
11    "id" : "ProjectSettings",
12    "| void show" : " (Project.Project project) {\n    _this.project = project;\n    _this.path.el.label = project.firstPath();\n    // get the active project.\n     var lm = Gtk.SourceLanguageManager.get_default();\n                \n    ((Gtk.SourceBuffer)(_this.view.el.get_buffer())) .set_language(\n    \n        lm.get_language(\"html\"));\n  \n    //print (project.fn);\n    //project.runhtml = project.runhtml || '';\n    _this.view.el.get_buffer().set_text(project.runhtml);\n    \n       \n    _this.rootURL.el.set_text( _this.project.rootURL );\n    _this.base_template.el.set_text(_this.project.base_template);    \n   \n    \n    //this.el.show_all();\n}\n",
13    "# Project.Project project" : "",
14    "xtype" : "VBox",
15    "| void save" : "()\n{\n   var buf =    _this.view.el.get_buffer();\n   Gtk.TextIter s;\n     Gtk.TextIter e;\n    buf.get_start_iter(out s);\n    buf.get_end_iter(out e);\n      _this.project.runhtml = buf.get_text(s,e,true);\n      \n    _this.project.rootURL = _this.rootURL.el.get_text();\n    _this.project.base_template = _this.base_template.el.get_text();    \n    \n    \n}",
16    "$ xns" : "Gtk",
17    "border_width" : 5,
18    "$ homogeneous" : false,
19    "items" : [
20     {
21      "* pack" : "pack_start,true,true,0",
22      "xtype" : "Notebook",
23      "$ xns" : "Gtk",
24      "items" : [
25       {
26        "id" : "label_global",
27        "xtype" : "Label",
28        "* pack" : false,
29        "$ xns" : "Gtk",
30        "utf8 label" : "Global"
31       },
32       {
33        "id" : "label_database",
34        "* pack" : false,
35        "xtype" : "Label",
36        "$ xns" : "Gtk",
37        "utf8 label" : "Database"
38       },
39       {
40        "* pack" : "append_page,_this.label_global.el",
41        "xtype" : "VBox",
42        "gboolean homogeneous" : false,
43        "$ xns" : "Gtk",
44        "items" : [
45         {
46          "* pack" : "pack_start,false,false,0",
47          "xtype" : "HBox",
48          "gboolean expand" : false,
49          "$ xns" : "Gtk",
50          "$ homogeneous" : true,
51          "gboolean vexpand" : false,
52          "items" : [
53           {
54            "listeners" : {
55             "button_press_event" : "() => {\n    _this.save();\n          \n    _this.buttonPressed(\"apply\");\n        return false;\n}"
56            },
57            "label" : "Apply",
58            "xtype" : "Button",
59            "* pack" : "add",
60            "$ xns" : "Gtk"
61           },
62           {
63            "listeners" : {
64             "button_press_event" : "() => {\n       _this.save();\n          \n    _this.buttonPressed(\"save\");\n        return false;\n}"
65            },
66            "label" : "Save",
67            "xtype" : "Button",
68            "* pack" : "add",
69            "$ xns" : "Gtk"
70           }
71          ]
72         },
73         {
74          "label" : "filename",
75          "id" : "path",
76          "xalign" : 0,
77          "* pack" : "pack_start,false,false,0",
78          "xtype" : "Label",
79          "$ xns" : "Gtk"
80         },
81         {
82          "label" : "HTML To insert at end of <HEAD>",
83          "* pack" : "pack_start,false,false,0",
84          "xtype" : "Label",
85          "$ xns" : "Gtk"
86         },
87         {
88          "* pack" : "pack_start,false,false,0",
89          "xtype" : "HBox",
90          "gboolean expand" : false,
91          "$ xns" : "Gtk",
92          "$ homogeneous" : false,
93          "items" : [
94           {
95            "label" : "HTML template file",
96            "xtype" : "Label",
97            "* pack" : "pack_start,false,false,0",
98            "$ xns" : "Gtk"
99           },
100           {
101            "id" : "base_template",
102            "xtype" : "Entry",
103            "* pack" : "add",
104            "$ xns" : "Gtk"
105           }
106          ]
107         },
108         {
109          "* pack" : "pack_start,false,false,0",
110          "xtype" : "HBox",
111          "gboolean expand" : false,
112          "$ xns" : "Gtk",
113          "$ homogeneous" : false,
114          "items" : [
115           {
116            "label" : "root URL",
117            "xtype" : "Label",
118            "* pack" : "pack_start,false,false,0",
119            "$ xns" : "Gtk"
120           },
121           {
122            "id" : "rootURL",
123            "xtype" : "Entry",
124            "* pack" : "add",
125            "$ xns" : "Gtk"
126           }
127          ]
128         },
129         {
130          "* pack" : "pack_start,true,true,0",
131          "xtype" : "ScrolledWindow",
132          "$ xns" : "Gtk",
133          "items" : [
134           {
135            "listeners" : {
136             "key_release_event" : " ( event) =>{\n    if (event.keyval != 115) {\n        return false;\n         \n    }\n    if   ( (event.state & Gdk.ModifierType.CONTROL_MASK ) < 1 ) {\n        return false;\n    }\n     var buf =    this.el.get_buffer();\n    Gtk.TextIter s;\n    Gtk.TextIter e;\n    buf.get_start_iter(out s);\n    buf.get_end_iter(out e);\n    _this.project.runhtml = buf.get_text(s,e,true);\n    \n          \n    _this.buttonPressed(\"save\");\n     \n    return false;\n         \n}"
137            },
138            "id" : "view",
139            "* init" : " \n    var description =   Pango.FontDescription.from_string(\"monospace\");\n    description.set_size(9000);\n    this.el.override_font(description);",
140            "xtype" : "View",
141            "* pack" : "add",
142            "$ xns" : "GtkSource"
143           }
144          ]
145         }
146        ]
147       }
148      ]
149     }
150    ]
151   }
152  ]
153 }