"* ctor" : "new Gtk.Scale.with_range (Gtk.Orientation.HORIZONTAL,6, 30, 1)",
"* init" : [
"{",
- "\tthis.el.set_range(6,30);",
- "\tthis.el.set_value(8);",
+ "\t//this.el.set_range(6,30);",
+ " \tthis.el.set_value ( BuilderApplication.settings.editor_font_size);",
+ " \tBuilderApplication.settings.editor_font_size_updated.connect(",
+ " \t\t() => {",
+ " \t\t\tBuilderApplication.settings.editor_font_size_inchange = true;",
+ " \t\t\tGLib.debug(\"update range\");",
+ " \t\t \tthis.el.set_value (BuilderApplication.settings.editor_font_size);",
+ " \t\t \tBuilderApplication.settings.editor_font_size_inchange = false;",
+ " \t\t}",
+ "\t);",
+ "\t",
+ " ",
"}",
""
],
"listeners" : {
"change_value" : [
"(st, val ) => {",
- "\t ",
- "\t ",
- "\t _this.view.css.load_from_string(",
- "\t \t\t\"#editor-view { font: %dpx monospace; }\".printf((int)val)",
- "\t );",
- " ",
+ "\tif (BuilderApplication.settings.editor_font_size_inchange) {",
+ "\t\treturn false;",
+ "\t}",
+ " \tBuilderApplication.settings.editor_font_size = val;",
" \treturn false;",
"}"
]
"$ xns" : "GtkSource",
"* init" : [
"",
- "",
- "this.css = new Gtk.CssProvider();",
- "",
- "this.css.load_from_string(",
- "\t\"#editor-view { font: 12px monospace;}\"",
- ");",
" ",
- "Gtk.StyleContext.add_provider_for_display(",
- "\tthis.el.get_display(),",
- "\tthis.css,",
- "\tGtk.STYLE_PROVIDER_PRIORITY_APPLICATION",
- ");",
"\t",
" ",
" ",
"bool vexpand" : true,
"boolean show_line_marks" : true,
"boolean show_line_numbers" : true,
+ "css_classes" : "{ \"code-editor\" }",
"gboolean highlight_current_line" : true,
"id" : "view",
"indent_width" : 4,
"\t}",
"\tvar ar = this.file.getErrors();",
"\tif (ar.size < 1) {",
- "\t\tbuf.remove_source_marks (start, end, null);",
+ "\t\tbuf.remove_source_marks (start, end, \"ERR\");",
+ "\t\tbuf.remove_source_marks (start, end, \"WARN\");",
+ "\t\tbuf.remove_source_marks (start, end, \"DEPR\");",
"\t\tbuf.remove_tag_by_name (\"ERR\", start, end);",
"\t\tbuf.remove_tag_by_name (\"WARN\", start, end);",
"\t\tbuf.remove_tag_by_name (\"DEPR\", start, end);",
"\t\t}",
"\t",
"\t}",
- "\tbuf.remove_source_marks (start, end, null);",
+ "\tbuf.remove_source_marks (start, end, \"ERR\");",
+ "\tbuf.remove_source_marks (start, end, \"WARN\");",
+ "\tbuf.remove_source_marks (start, end, \"DEPR\");",
"\tbuf.remove_tag_by_name (\"ERR\", start, end);",
"\tbuf.remove_tag_by_name (\"WARN\", start, end);",
"\tbuf.remove_tag_by_name (\"DEPR\", start, end);",
"\t if (eline > tlines || eline < 0) {",
"\t continue;",
"\t }",
- "\t ",
"\t ",
"\t buf.get_iter_at_line( out iter, eline);",
"\t \tvar msg = \"Line: %d %s : %s\".printf(eline+1, diag.category, diag.message);",
"\t buf.create_source_mark( msg, diag.category, iter);",
+ "\t ",
+ " \t var spos = (int)diag.range.start.character - hoffset;",
+ " \t if (spos < 0) { spos =0 ; }",
+ " \t if (spos > iter.get_chars_in_line()) {",
+ " \t \tspos = iter.get_chars_in_line();",
+ " \t}",
+ "\t\tbuf.get_iter_at_line( out iter, eline_to);",
+ "\t\tvar epos = (int)diag.range.end.character - hoffset;",
+ " \t if (epos < 0) { epos =0 ; }",
+ " \t if (epos > iter.get_chars_in_line()) {",
+ " \t \tepos = iter.get_chars_in_line();",
+ " \t}",
+ " \t ",
" \t ",
- " \t buf.get_iter_at_line_offset( out start, ",
- " \t \teline, (int)diag.range.start.character - hoffset); ",
- " \t buf.get_iter_at_line_offset( out end, ",
- " \t \teline_to, (int)diag.range.end.character - hoffset); ",
+ " \t buf.get_iter_at_line_offset( out start, eline, spos); ",
+ " \t ",
+ " \t buf.get_iter_at_line_offset( out end, eline_to,epos); ",
" \t \t",
"\t buf.apply_tag_by_name(diag.category, start, end);",
"\t ",