src/Builder4/Editor.bjs
authorAlan Knowles <alan@roojs.com>
Sat, 23 Mar 2024 07:43:53 +0000 (15:43 +0800)
committerAlan Knowles <alan@roojs.com>
Sat, 23 Mar 2024 07:43:53 +0000 (15:43 +0800)
src/Builder4/Editor.vala

src/Builder4/Editor.bjs
src/Builder4/Editor.vala

index 04c7d9c..2f0cee8 100644 (file)
                   "items_changed" : [
                    "(position, removed, added) => {",
                    "\tGLib.debug(\"tree item changed\");",
-                   "\tvar ds = (Lsp.DocumentSymbol) this.el.get_item(position);",
+                   "\tif (added  < 1) {",
+                   "\t\treturn;",
+                   "\t}",
+                   "\tvar sym = (Lsp.DocumentSymbol) this.el.get_item(position);",
                    "\tvar row = this.el.get_row(position);",
-                   "\t",
+                   "\tswitch (sym.kind) {",
+                   " \t\tcase Lsp.SymbolKind.Enum: ",
+                   " \t\t\trow.expanded = false;",
+                   " \t\t\tbreak;",
+                   "\t\tdefault:",
+                   "\t\t//\texpand.list_row.expanded = true;",
+                   "\t\t\tbreak;",
+                   "\t}",
                    "",
                    "}",
                    ""
index 0bbf570..302e1b4 100644 (file)
@@ -2232,9 +2232,19 @@ public class Editor : Object
                        //listeners
                        this.el.items_changed.connect( (position, removed, added) => {
                                GLib.debug("tree item changed");
-                               var ds = (Lsp.DocumentSymbol) this.el.get_item(position);
+                               if (added  < 1) {
+                                       return;
+                               }
+                               var sym = (Lsp.DocumentSymbol) this.el.get_item(position);
                                var row = this.el.get_row(position);
-                               
+                               switch (sym.kind) {
+                                       case Lsp.SymbolKind.Enum: 
+                                               row.expanded = false;
+                                               break;
+                                       default:
+                                       //      expand.list_row.expanded = true;
+                                               break;
+                               }
                        
                        });
                }