"items" : [
{
"# Xcls_MainWindow window" : "null",
- "# string activeEditor" : "\"\"",
"| bool saveContents" : " () {\n \n \n if (_this.file == null) {\n return true;\n }\n \n \n \n \n \n var str = _this.buffer.toString();\n \n _this.buffer.checkSyntax();\n \n \n \n // LeftPanel.model.changed( str , false);\n _this.dirty = false;\n _this.save_button.el.sensitive = false;\n \n // find the text for the node..\n if (_this.file.xtype != \"PlainFile\") {\n if (ptype == \"listener\") {\n this.node.listeners.set(key,str);\n \n } else {\n this.node.props.set(key,str);\n }\n } else {\n _this.file.setSource( str );\n }\n \n // call the signal..\n this.save();\n \n return true;\n\n} ",
+ "# string activeEditor" : "\"\"",
"| void scroll_to_line" : "(int line) {\n\n\tGLib.Timeout.add(500, () => {\n \n\t\tvar buf = this.view.el.get_buffer();\n\n\t\tvar sbuf = (Gtk.SourceBuffer) buf;\n\n\n\t\tGtk.TextIter iter; \n\t\tsbuf.get_iter_at_line(out iter, line);\n\t\tthis.view.el.scroll_to_iter(iter, 0.1f, true, 0.0f, 0.5f);\n\t\treturn false;\n\t}); \n}\n",
"# int pos_root_x" : "",
"# int pos_root_y" : "",
},
{
"id" : "key_edit",
- "xtype" : "Entry",
"* pack" : "pack_end,true,true",
+ "xtype" : "Entry",
"$ xns" : "Gtk"
}
]
},
"gboolean show_line_marks" : true,
"id" : "view",
- "* init" : " \n \n\t\tvar description = Pango.FontDescription.from_string(\"monospace\");\n\t\tdescription.set_size(8000);\n\t\t this.el.override_font(description);\n \n \n\tthis.el.completion.add_provider(new Palete.CompletionProvider(_this));\n\tthis.el.completion.unblock_interactive();\n\tthis.el.completion.select_on_show\t\t\t= true; // select\n\tthis.el.completion.show_headers\t\t\t= false;\n\tthis.el.completion.remember_info_visibility\t\t= true;\n \n \n var attrs = new Gtk.SourceMarkAttributes();\n var pink = Gdk.RGBA();\n pink.parse ( \"pink\");\n attrs.set_background ( pink);\n attrs.set_icon_name ( \"process-stop\"); \n attrs.query_tooltip_text.connect(( mark) => {\n //print(\"tooltip query? %s\\n\", mark.name);\n return mark.name;\n });\n \n this.el.set_mark_attributes (\"ERR\", attrs, 1);\n \n var wattrs = new Gtk.SourceMarkAttributes();\n var blue = Gdk.RGBA();\n blue.parse ( \"#ABF4EB\");\n wattrs.set_background ( blue);\n wattrs.set_icon_name ( \"process-stop\"); \n wattrs.query_tooltip_text.connect(( mark) => {\n //print(\"tooltip query? %s\\n\", mark.name);\n return mark.name;\n });\n \n this.el.set_mark_attributes (\"WARN\", wattrs, 1);\n \n \n \n var dattrs = new Gtk.SourceMarkAttributes();\n var purple = Gdk.RGBA();\n purple.parse ( \"#EEA9FF\");\n dattrs.set_background ( purple);\n dattrs.set_icon_name ( \"process-stop\"); \n dattrs.query_tooltip_text.connect(( mark) => {\n //print(\"tooltip query? %s\\n\", mark.name);\n return mark.name;\n });\n \n this.el.set_mark_attributes (\"DEPR\", dattrs, 1);\n \n ",
+ "* init" : " \n\n\t\tvar description = Pango.FontDescription.from_string(\"monospace\");\n\t\tdescription.set_size(8000);\n\n\t\t this.el.override_font(description);\n\n\ttry { \n\t\tthis.el.completion.add_provider(new Palete.CompletionProvider(_this));\n } catch (GLib.Error e) {}\n \n\tthis.el.completion.unblock_interactive();\n\tthis.el.completion.select_on_show\t\t\t= true; // select\n\tthis.el.completion.show_headers\t\t\t= false;\n\tthis.el.completion.remember_info_visibility\t\t= true;\n \n \n var attrs = new Gtk.SourceMarkAttributes();\n var pink = Gdk.RGBA();\n pink.parse ( \"pink\");\n attrs.set_background ( pink);\n attrs.set_icon_name ( \"process-stop\"); \n attrs.query_tooltip_text.connect(( mark) => {\n //print(\"tooltip query? %s\\n\", mark.name);\n return mark.name;\n });\n \n this.el.set_mark_attributes (\"ERR\", attrs, 1);\n \n var wattrs = new Gtk.SourceMarkAttributes();\n var blue = Gdk.RGBA();\n blue.parse ( \"#ABF4EB\");\n wattrs.set_background ( blue);\n wattrs.set_icon_name ( \"process-stop\"); \n wattrs.query_tooltip_text.connect(( mark) => {\n //print(\"tooltip query? %s\\n\", mark.name);\n return mark.name;\n });\n \n this.el.set_mark_attributes (\"WARN\", wattrs, 1);\n \n \n \n var dattrs = new Gtk.SourceMarkAttributes();\n var purple = Gdk.RGBA();\n purple.parse ( \"#EEA9FF\");\n dattrs.set_background ( purple);\n dattrs.set_icon_name ( \"process-stop\"); \n dattrs.query_tooltip_text.connect(( mark) => {\n //print(\"tooltip query? %s\\n\", mark.name);\n return mark.name;\n });\n \n this.el.set_mark_attributes (\"DEPR\", dattrs, 1);\n \n ",
"uint tab_width" : 4,
"$ Gtk.SourceDrawSpacesFlags draw_spaces" : "Gtk.SourceDrawSpacesFlags.LEADING + Gtk.SourceDrawSpacesFlags.TRAILING + Gtk.SourceDrawSpacesFlags.TAB + Gtk.SourceDrawSpacesFlags.SPACE",
"* pack" : "add",
"changed" : " () => {\n // check syntax??\n // ??needed..??\n _this.save_button.el.sensitive = true;\n print(\"EDITOR CHANGED\");\n this.checkSyntax();\n \n _this.dirty = true;\n\n // this.get('/LeftPanel.model').changed( str , false);\n return ;\n}\n\n \n"
},
"bool check_queued" : false,
- "id" : "buffer",
"int error_line" : "-1",
+ "id" : "buffer",
"| bool highlightErrors" : "( Gee.HashMap<int,string> validate_res) {\n \n this.error_line = validate_res.size;\n\n if (this.error_line < 1) {\n return true;\n }\n var tlines = this.el.get_line_count ();\n Gtk.TextIter iter;\n var valiter = validate_res.map_iterator();\n while (valiter.next()) {\n \n // print(\"get inter\\n\");\n var eline = valiter.get_key();\n if (eline > tlines) {\n continue;\n }\n this.el.get_iter_at_line( out iter, eline);\n //print(\"mark line\\n\");\n this.el.create_source_mark(valiter.get_value(), \"ERR\", iter);\n } \n return false;\n }",
"| string toString" : " () {\n \n Gtk.TextIter s;\n Gtk.TextIter e;\n this.el.get_start_iter(out s);\n this.el.get_end_iter(out e);\n var ret = this.el.get_text(s,e,true);\n //print(\"TO STRING? \" + ret);\n return ret;\n}\n ",
"| bool checkSyntax" : " () {\n \n if (this.check_running) {\n print(\"Check is running\\n\");\n if (this.check_queued) { \n print(\"Check is already queued\");\n return true;\n }\n this.check_queued = true;\n print(\"Adding queued Check \");\n GLib.Timeout.add_seconds(1, () => {\n this.check_queued = false;\n \n this.checkSyntax();\n return false;\n });\n \n\n return true;\n }\n var str = this.toString();\n \n // needed???\n if (this.error_line > 0) {\n Gtk.TextIter start;\n Gtk.TextIter end; \n this.el.get_bounds (out start, out end);\n\n this.el.remove_source_marks (start, end, null);\n }\n if (str.length < 1) {\n print(\"checkSyntax - empty string?\\n\");\n return true;\n }\n \n if (_this.file.xtype == \"PlainFile\") {\n \n // assume it's gtk...\n this.check_running = true;\n\n if (!_this.window.windowstate.valasource.checkPlainFileSpawn(\n\t _this.file,\n\t str\n\t )) {\n this.check_running = false;\n }\n\t\n return true;\n \n }\n if (_this.file == null) {\n return true;\n }\n var p = Palete.factory(_this.file.xtype); \n \n\n \n this.check_running = true;\n \n \n if (_this.file.language == \"js\") {\n this.check_running = false;\n print(\"calling validate javascript\\n\"); \n return this.highlightErrors(p.validateJavascript(\n str, \n _this.key, \n _this.ptype,\n _this.file,\n _this.node\n )); \n \n }\n \n \n print(\"calling validate vala\\n\"); \n // clear the buttons.\n \n \n if (! _this.window.windowstate.valasource.checkFileWithNodePropChange(\n _this.file,\n _this.node,\n _this.key, \n _this.ptype,\n str\n )) {\n this.check_running = false;\n } \n \n \n \n //print(\"done mark line\\n\");\n \n return true; // at present allow saving - even if it's invalid..\n}\n",
"items" : [
{
"id" : "headerbar",
- "xtype" : "HeaderBar",
"* pack" : "set_titlebar",
+ "xtype" : "HeaderBar",
"bool show_close_button" : true,
"$ xns" : "Gtk",
"string title" : "Application Builder",
"items" : [
{
"bool use_popover" : false,
- "xtype" : "MenuButton",
"* pack" : "add",
+ "xtype" : "MenuButton",
"$ xns" : "Gtk",
"items" : [
{
"listeners" : {
"activate" : " ( ) => {\n Xcls_MainWindow.singleton().no_windows++;\n var w = new Xcls_MainWindow();\n w.ref();\n\n w.el.show_all();\n w.initChildren();\n w.windowstate.switchState(WindowState.State.FILES);\n}"
},
+ "string label" : "Open a new Window",
"* pack" : "append",
"xtype" : "MenuItem",
- "string label" : "Open a new Window",
"$ xns" : "Gtk"
},
{
"listeners" : {
"activate" : " ( ) => {\n Resources.singleton().fetchStart();\n}"
},
+ "xtype" : "MenuItem",
"string label" : "Download updated Resources",
"* pack" : "append",
- "xtype" : "MenuItem",
"$ xns" : "Gtk"
},
{
"listeners" : {
"activate" : "() => {\n About.singleton().el.show();\n }"
},
+ "* pack" : "append",
"xtype" : "MenuItem",
"string label" : "About the Builder",
- "* pack" : "append",
"$ xns" : "Gtk"
}
]
},
{
+ "utf8 icon_name" : "help-about",
"* pack" : "set_image",
"xtype" : "Image",
- "utf8 icon_name" : "help-about",
"$ xns" : "Gtk"
}
]
},
{
"id" : "vbox",
- "* pack" : "add",
"xtype" : "Box",
+ "* pack" : "add",
"$ xns" : "Gtk",
"Gtk.Orientation orientation" : "Gtk.Orientation.VERTICAL",
"$ homogeneous" : false,
"items" : [
{
"id" : "leftpane",
- "xtype" : "Box",
"* pack" : "add1",
+ "xtype" : "Box",
"$ xns" : "Gtk",
"Gtk.Orientation orientation" : "Gtk.Orientation.VERTICAL",
"items" : [
{
"id" : "editpane",
- "xtype" : "Paned",
"* pack" : "pack_start,true,true,0",
+ "xtype" : "Paned",
"$ xns" : "Gtk",
"Gtk.Orientation orientation" : "Gtk.Orientation.VERTICAL",
"items" : [
{
"id" : "tree",
- "xtype" : "Box",
"* pack" : "add1",
+ "xtype" : "Box",
"$ xns" : "Gtk",
"Gtk.Orientation orientation" : "Gtk.Orientation.VERTICAL"
},
{
"id" : "props",
- "xtype" : "Box",
"* pack" : "add2",
+ "xtype" : "Box",
"$ xns" : "Gtk",
"Gtk.Orientation orientation" : "Gtk.Orientation.VERTICAL"
}
"items" : [
{
"* init" : "((Gtk.Container)(this.el.get_widget())).add ( child_0.el);",
- "xtype" : "Actor",
"* pack" : "add_child",
+ "xtype" : "Actor",
"$ xns" : "GtkClutter",
"items" : [
{
"clicked" : " ( ) => {\n \n _this.windowstate.switchState(WindowState.State.PREVIEW);\n \n\n}"
},
"utf8 tooltip_text" : "Back",
- "* pack" : false,
"xtype" : "Button",
+ "* pack" : false,
"width_request" : 50,
"$ xns" : "Gtk",
"height_request" : 50,
"items" : [
{
+ "xtype" : "Image",
"utf8 icon_name" : "go-previous",
"* pack" : "set_image",
- "xtype" : "Image",
"$ xns" : "Gtk"
}
]
"items" : [
{
"* init" : "((Gtk.Container)(this.el.get_widget())).add ( child_0.el);",
- "* pack" : "add_child",
"xtype" : "Actor",
+ "* pack" : "add_child",
"$ xns" : "GtkClutter",
"items" : [
{
"$ tooltop_text" : "\"Open File\"",
"items" : [
{
+ "* pack" : "set_image",
"xtype" : "Image",
"utf8 icon_name" : "document-open",
- "* pack" : "set_image",
"$ xns" : "Gtk"
}
]
"items" : [
{
"* init" : "((Gtk.Container)(this.el.get_widget())).add ( child_0.el);",
- "* pack" : "add_child",
"xtype" : "Actor",
+ "* pack" : "add_child",
"$ xns" : "GtkClutter",
"items" : [
{
"height_request" : 50,
"items" : [
{
+ "utf8 icon_name" : "document-properties",
"* pack" : "set_image",
"xtype" : "Image",
- "utf8 icon_name" : "document-properties",
"$ xns" : "Gtk"
}
]
"items" : [
{
"* init" : "((Gtk.Container)(this.el.get_widget())).add ( child_0.el);",
- "* pack" : "add_child",
"xtype" : "Actor",
+ "* pack" : "add_child",
"$ xns" : "GtkClutter",
"items" : [
{
"height_request" : 50,
"items" : [
{
+ "xtype" : "Image",
"utf8 icon_name" : "emblem-system",
"* pack" : "set_image",
- "xtype" : "Image",
"$ xns" : "Gtk"
}
]
"items" : [
{
"* init" : "((Gtk.Container)(this.el.get_widget())).add ( child_0.el);",
- "* pack" : "add_child",
"xtype" : "Actor",
+ "* pack" : "add_child",
"$ xns" : "GtkClutter",
"items" : [
{
"height_request" : 50,
"items" : [
{
+ "* pack" : "set_image",
"xtype" : "Image",
"utf8 icon_name" : "list-add",
- "* pack" : "set_image",
"$ xns" : "Gtk"
}
]
"items" : [
{
"* init" : "((Gtk.Container)(this.el.get_widget())).add ( child_0.el);",
- "* pack" : "add_child",
"xtype" : "Actor",
+ "* pack" : "add_child",
"$ xns" : "GtkClutter",
"items" : [
{
"height_request" : 50,
"items" : [
{
+ "utf8 icon_name" : "format-justify-left",
"* pack" : "set_image",
"xtype" : "Image",
- "utf8 icon_name" : "format-justify-left",
"$ xns" : "Gtk"
}
]
"items" : [
{
"* init" : "((Gtk.Container)(this.el.get_widget())).add ( child_0.el);",
- "* pack" : "add_child",
"xtype" : "Actor",
+ "* pack" : "add_child",
"$ xns" : "GtkClutter",
"items" : [
{
"height_request" : 50,
"items" : [
{
+ "xtype" : "Image",
"utf8 icon_name" : "appointment-new",
"* pack" : "set_image",
- "xtype" : "Image",
"$ xns" : "Gtk"
}
]
"items" : [
{
"* init" : "((Gtk.Container)(this.el.get_widget())).add ( child_0.el);",
- "* pack" : "add_child",
"xtype" : "Actor",
+ "* pack" : "add_child",
"$ xns" : "GtkClutter",
"items" : [
{
"height_request" : 50,
"items" : [
{
+ "utf8 icon_name" : "folder-new",
"* pack" : "set_image",
"xtype" : "Image",
- "utf8 icon_name" : "folder-new",
"$ xns" : "Gtk"
}
]
"items" : [
{
"* init" : "((Gtk.Container)(this.el.get_widget())).add ( child_0.el);",
- "* pack" : "add_child",
"xtype" : "Actor",
+ "* pack" : "add_child",
"$ xns" : "GtkClutter",
"items" : [
{
"height_request" : 50,
"items" : [
{
+ "* pack" : "set_image",
"xtype" : "Image",
"utf8 icon_name" : "document-new",
- "* pack" : "set_image",
"$ xns" : "Gtk"
}
]
"items" : [
{
"* init" : "((Gtk.Container)(this.el.get_widget())).add ( child_0.el);",
- "* pack" : "add_child",
"xtype" : "Actor",
+ "* pack" : "add_child",
"$ xns" : "GtkClutter",
"items" : [
{
"height_request" : 50,
"items" : [
{
+ "utf8 icon_name" : "user-trash",
"* pack" : "set_image",
"xtype" : "Image",
- "utf8 icon_name" : "user-trash",
"$ xns" : "Gtk"
}
]
},
{
"bool homogeneous" : false,
- "xtype" : "Box",
"* pack" : "pack_end,false,true,0",
+ "xtype" : "Box",
"$ xns" : "Gtk",
"Gtk.Orientation orientation" : "Gtk.Orientation.HORIZONTAL",
"items" : [
{
+ "* pack" : "pack_start,true,true,0",
"xtype" : "Label",
"string label" : " ",
- "* pack" : "pack_start,true,true,0",
"$ xns" : "Gtk"
},
{
"bool show_text" : true,
- "id" : "statusbar",
"ulong handler_id" : "-1",
+ "id" : "statusbar",
"* init" : "{\n this.handler_id = Resources.singleton().updateProgress.connect((pos,total) => {\n if (pos < 1) {\n this.el.hide();\n _this.mainpane.el.set_sensitive(true);\n \n return;\n }\n _this.mainpane.el.set_sensitive(false);\n this.el.show();\n this.el.set_fraction ((1.0f * pos) / (1.0f * total));\n this.el.set_text(\"Fetching Resource : %s/%s\".printf(pos.to_string(), total.to_string()));\n \n });\n}\n",
"xtype" : "ProgressBar",
"* pack" : "pack_start,true,true,0",
"id" : "search_entry",
"* init" : "var description = Pango.FontDescription.from_string(\"monospace\");\n\tdescription.set_size(8000);\n\t this.el.override_font(description);\n\n",
"* pack" : "pack_start,false,true,0",
- "xtype" : "Entry",
+ "xtype" : "SearchEntry",
"$ xns" : "Gtk",
- "| void forwardSearch" : "(bool change_focus) {\n\tswitch(_this.windowstate.state) {\n\t\tcase WindowState.State.CODEONLY:\n\t\tcase WindowState.State.CODE:\n\t\t\t// search the code being edited..\n\t\t\t_this.windowstate.code_editor.forwardSearch();\n\t\t\t\n\t\t\tbreak;\n\t\tcase WindowState.State.PREVIEW:\n\t\t\tif (_this.windowstate.file.xtype == \"Gtk\") {\n\t\t\t\t_this.windowstate.window_gladeview.forwardSearch(change_focus);\n\t\t\t} else { \n\t\t\t\t _this.windowstate.window_rooview.forwardSearch(change_focus);\n\t\t\t}\n\t\t\n\t\t\tbreak;\n\t}\n}\n"
+ "| void forwardSearch" : "(bool change_focus) {\n\tswitch(_this.windowstate.state) {\n\t\tcase WindowState.State.CODEONLY:\n\t\tcase WindowState.State.CODE:\n\t\t\t// search the code being edited..\n\t\t\t_this.windowstate.code_editor.forwardSearch(change_focus);\n\t\t\t\n\t\t\tbreak;\n\t\tcase WindowState.State.PREVIEW:\n\t\t\tif (_this.windowstate.file.xtype == \"Gtk\") {\n\t\t\t\t_this.windowstate.window_gladeview.forwardSearch(change_focus);\n\t\t\t} else { \n\t\t\t\t _this.windowstate.window_rooview.forwardSearch(change_focus);\n\t\t\t}\n\t\t\n\t\t\tbreak;\n\t}\n\t\n}\n"
},
{
"* pack" : "pack_end,false,true,0",
"$ xns" : "Gtk",
"items" : [
{
+ "* pack" : "set_image",
"xtype" : "Image",
"utf8 icon_name" : "system-search",
- "* pack" : "set_image",
"bool sensitive" : false,
"$ xns" : "Gtk"
}
]
},
{
+ "xtype" : "MenuItem",
"string label" : "Compile Status:",
"* pack" : "add",
- "xtype" : "MenuItem",
"$ xns" : "Gtk"
},
{
"$ xns" : "Gtk",
"items" : [
{
+ "xtype" : "Image",
"utf8 icon_name" : "dialog-error",
"* pack" : "set_image",
- "xtype" : "Image",
"$ xns" : "Gtk"
}
]
"$ xns" : "Gtk",
"items" : [
{
+ "* pack" : "set_image",
"xtype" : "Image",
"utf8 icon_name" : "dialog-warning",
- "* pack" : "set_image",
"$ xns" : "Gtk"
}
]
"$ xns" : "Gtk",
"items" : [
{
+ "utf8 icon_name" : "dialog-information",
"* pack" : "set_image",
"xtype" : "Image",
- "utf8 icon_name" : "dialog-information",
"$ xns" : "Gtk"
}
]
"$ xns" : "Gtk",
"items" : [
{
+ "* pack" : "set_image",
"xtype" : "Image",
"utf8 icon_name" : "media-playback-start",
- "* pack" : "set_image",
"$ xns" : "Gtk"
}
]