src/Builder4/Editor.bjs
authorAlan Knowles <alan@roojs.com>
Sat, 23 Mar 2024 08:05:21 +0000 (16:05 +0800)
committerAlan Knowles <alan@roojs.com>
Sat, 23 Mar 2024 08:05:21 +0000 (16:05 +0800)
src/Builder4/Editor.vala

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

index 898d604..03726f5 100644 (file)
                  ],
                  "$ xns" : "Gtk",
                  "* prop" : "model",
-                 "bool autoexpand" : false,
+                 "bool autoexpand" : true,
                  "bool passthrough" : false,
                  "items" : [
                   {
                ],
                "| void collapseOnLoad" : [
                 "() {",
-                "",
-                "return;",
-                "\tvar sym = (Lsp.DocumentSymbol)  row.get_item();",
-                "\t",
-                "\tswitch (sym.kind) {",
-                " \t\tcase Lsp.SymbolKind.Enum: ",
-                " \t\t//\trow.expanded = false;",
-                " \t\t\tbreak;",
-                "\t\tdefault:",
-                "\t\t\trow.expanded = true;",
-                "\t\t\tbreak;",
+                "\tfor (var i=0;i < this.el.get_n_items(); i++) {",
+                "\t\tvar tr = (Gtk.TreeListRow)this.el.get_item(i);",
+                "\t   ",
+                "\t\tvar sym =  (Lsp.DocumentSymbol)tr.get_item();",
+                "\t\tswitch (sym.kind) {",
+                "\t \t\tcase Lsp.SymbolKind.Enum: ",
+                "\t \t\t\ttr.expanded = false;",
+                "\t \t\t\tbreak;",
+                "\t\t\tdefault:",
+                "\t\t\t\t//tr.expanded = true;",
+                "\t\t\t\tbreak;",
+                "\t\t}",
                 "\t}",
+                " ",
+                "\t",
                 "",
                 "",
                 "}"
index 54f25b5..3a6dade 100644 (file)
@@ -2184,18 +2184,21 @@ public class Editor : Object
 
                // user defined functions
                public void collapseOnLoad () {
-               
-               return;
-                       var sym = (Lsp.DocumentSymbol)  row.get_item();
-                       
-                       switch (sym.kind) {
-                               case Lsp.SymbolKind.Enum: 
-                               //      row.expanded = false;
-                                       break;
-                               default:
-                                       row.expanded = true;
-                                       break;
+                       for (var i=0;i < this.el.get_n_items(); i++) {
+                               var tr = (Gtk.TreeListRow)this.el.get_item(i);
+                          
+                               var sym =  (Lsp.DocumentSymbol)tr.get_item();
+                               switch (sym.kind) {
+                                       case Lsp.SymbolKind.Enum: 
+                                               tr.expanded = false;
+                                               break;
+                                       default:
+                                               //tr.expanded = true;
+                                               break;
+                               }
                        }
+                
+                       
                
                
                }
@@ -2235,7 +2238,7 @@ public class Editor : Object
                {
                        _this = _owner;
                        new Xcls_navliststore( _this );
-                       this.el = new Gtk.TreeListModel( _this.navliststore.el, false, false, (item) => {
+                       this.el = new Gtk.TreeListModel( _this.navliststore.el, false, true, (item) => {
  
        return ((Lsp.DocumentSymbol)item).children;
 }