src/Builder4/GtkView.bjs
authorAlan Knowles <alan@roojs.com>
Sun, 28 Jan 2024 11:40:40 +0000 (19:40 +0800)
committerAlan Knowles <alan@roojs.com>
Sun, 28 Jan 2024 11:40:40 +0000 (19:40 +0800)
src/Builder4/GtkView.vala

src/Builder4/GtkView.bjs
src/Builder4/GtkView.vala

index fef37a6..c7a4670 100644 (file)
     "\t     Gtk.TextIter iter;",
     "//        print(\"get inter\\n\");",
     "\t    var eline = err.line + 1;",
-    "\t    GLib.debug(\"GOT ERROR on line %d -- converted to %d \",",
-    "\t    \terr.line ,eline);",
-    "\t    ",
     "\t    ",
     "\t    if (eline > tlines || eline < 0) {",
     "\t        return;",
     "\t    }",
     "\t   ",
     "\t    ",
-    "\t    buf.get_iter_at_line( out iter, eline);",
+    "\t     buf.get_iter_at_line_offset( out iter, eline, (int)diag.range.start.character);",
+    "\t   ",
     "\t   ",
     "\t   ",
-    "\t\tvar msg = \"Line: %d %s : %s\".printf(eline+1, err.category, err.msg);",
-    "\t    buf.create_source_mark( msg, err.category, iter);",
+    "\t\tvar msg = \"Line: %d %s : %s\".printf(eline+1, diag.category, diag.message);",
+    "\t    buf.create_source_mark( msg, diag.category, iter);",
     "\t    GLib.debug(\"set line %d to %s\", eline, msg);",
     "\t    //this.marks.set(eline, msg);",
     "\t}",
-    "\treturn ;",
+    "\tthis.last_error_counter = file.error_counter ;",
     "",
     "",
     "",
index 17ff2fd..78c774f 100644 (file)
@@ -379,24 +379,22 @@ public class Xcls_GtkView : Object
                     Gtk.TextIter iter;
        //        print("get inter\n");
                    var eline = err.line + 1;
-                   GLib.debug("GOT ERROR on line %d -- converted to %d ",
-                       err.line ,eline);
-                   
                    
                    if (eline > tlines || eline < 0) {
                        return;
                    }
                   
                    
-                   buf.get_iter_at_line( out iter, eline);
+                    buf.get_iter_at_line_offset( out iter, eline, (int)diag.range.start.character);
+                  
                   
                   
-                       var msg = "Line: %d %s : %s".printf(eline+1, err.category, err.msg);
-                   buf.create_source_mark( msg, err.category, iter);
+                       var msg = "Line: %d %s : %s".printf(eline+1, diag.category, diag.message);
+                   buf.create_source_mark( msg, diag.category, iter);
                    GLib.debug("set line %d to %s", eline, msg);
                    //this.marks.set(eline, msg);
                }
-               return ;
+               this.last_error_counter = file.error_counter ;