expanding tree when error buttons pressed
[roobuilder] / src / Builder4 / ValaCompileErrors.bjs
index 5ec52a2..3ae7261 100644 (file)
@@ -3,6 +3,7 @@
  "gen_extended" : false,
  "items" : [
   {
+   "# Gee.HashMap<string,Gtk.TreeListRow>? rows" : "null",
    "# Xcls_MainWindow window" : "",
    "$ xns" : "Gtk",
    "* ctor" : "new Gtk.Popover()",
                "\tvar lr = (Gtk.TreeListRow)((Gtk.ListItem)listitem).get_item();",
                "\tvar np = (Palete.CompileError) lr.get_item();",
                "\t",
+               "\tif (np.diag == null) {",
+               "\t\t_this.rows.set(np.file.path, lr);",
+               "\t",
+               "\t}",
+               "",
                "\t",
                "\t//GLib.debug(\"change  %s to %s\", lbl.label, np.name);",
                "\tlbl.label = np.linemsg;",
     " \t    GLib.debug(\"errors  : none available\");",
     "    \treturn;",
     "\t}",
-    " \t//this.el.present();",
-    "    //this.el.popup();",
-    "    ",
-    "     //print(\"looking for %s\\n\", id);",
-    "    // loop through parent childnre",
-    "      ",
-    "    ",
-    "     ; //<< very important!!!",
-    "      ",
-    "   // store.set_sort_column_id(0,Gtk.SortType.ASCENDING);",
-    " ",
+    " \t ",
     "    var win = this.window.el;",
     "    var  w = win.get_width();",
     "    var h = win.get_height();",
     "    GLib.debug(\"set size\");",
     "    this.el.set_size_request( int.max(100, new_w), int.max(100, h-120));",
     " ",
-    "",
-    "   // this.el.set_relative_to(onbtn);",
-    "\t//Gtk.Allocation rect;",
-    "\t//onbtn.get_allocation(out rect);",
-    "    //this.el.set_pointing_to(rect);",
-    "\t//this.el.present();",
+    " ",
     "\t",
     "\tGLib.debug(\"call popup\");",
     "    this.el.popup();",
-    "    // only need to load once.",
-    " \t//if (!this.loaded) {",
-    " \t\t ",
-    "\t\t//this.loaded = true;",
-    "\t //}",
-    "\t ",
-    "       ",
-    "   ",
-    "   \t//if (expand != null) {",
-    "    //\t_this.compile_tree.el.expand_row(   store.get_path(expand) , true);",
-    "//\t}",
-    "    ",
-    " //   this.hpane.el.set_position( 0);",
+    "    if (this.rows.has_key(this.window.windowstate.file.path)) {",
+    "    \tthis.rows.get(this.window.windowstate.file.path).expanded = true;",
+    "    }",
     "}",
     ""
    ],
     "\t\t}",
     "\t\t",
     "\t);",
-    " ",
+    "\tthis.rows = new Gee.HashMap<string,Gtk.TreeListRow>();",
     "\t_this.model.el = tm;",
     "\t_this.sortmodel.el.set_model(tm);",
     "\t this.tree.el.show();",
+    "\t if (this.rows.has_key(this.window.windowstate.file.path)) {",
+    "    \tthis.rows.get(this.window.windowstate.file.path).expanded = true;",
+    "    }",
     "}"
    ]
   }