Builder4/ClutterFiles.bjs
authorAlan Knowles <alan@roojs.com>
Wed, 9 Jul 2014 10:11:17 +0000 (18:11 +0800)
committerAlan Knowles <alan@roojs.com>
Wed, 9 Jul 2014 10:11:17 +0000 (18:11 +0800)
Builder4/ClutterFiles.js
Builder4/ClutterFiles.vala

Builder4/ClutterFiles.bjs
Builder4/ClutterFiles.js
Builder4/ClutterFiles.vala

index 86d8bd3..879ed51 100644 (file)
@@ -14,7 +14,7 @@
             "|": "this.fileitems = new Gee.ArrayList<Xcls_fileitem>();\n",
             "|reactive": "true",
             "|void:clearFiles": "() {\n    \n    this.filelayout.el.remove_all_children();\n    // we need to unref all the chidren that we loaded though...\n    \n}\n",
-            "|void:loadProject": "(Project.Project pr) {\n    // list all the files, and create new Xcls_fileitem for each one.\n    \n    // LEAK --- we should unref all the chilren...\n    this.clearFiles();\n    \n    print(\"clutter files - load project: \" + pr.name +\"\\n\");\n    var fiter = pr.files.map_iterator();\n    while (fiter.next()) {\n        var a = new Xcls_fileitem(this,fiter.get_value());\n        a.ref();\n        print(\"add to clutter file view: \" + fiter.get_value().name + \"\\n\");\n        this.filelayout.el.add_child(a.el);\n    }\n    this.el.show_all();\n}\n",
+            "|void:loadProject": "(Project.Project pr) {\n    // list all the files, and create new Xcls_fileitem for each one.\n    \n    // LEAK --- we should unref all the chilren...\n    this.clearFiles();\n    \n    print(\"clutter files - load project: \" + pr.name +\"\\n\");\n    this.fileitems = new Gee.ArrayList<Xcls_fileitem>();\n\n    var fiter = pr.files.map_iterator();\n    while (fiter.next()) {\n        var a = new Xcls_fileitem(this,fiter.get_value());\n        this.fileitems.add(a);\n\n//        a.ref();\n        print(\"add to clutter file view: \" + fiter.get_value().name + \"\\n\");\n        this.filelayout.el.add_child(a.el);\n    }\n    this.el.show_all();\n}\n",
             "|void:set_size": "(float w, float h) \n{\n     if (this.el == null) {\n        print(\"object not ready yet?\");\n        return;\n    }\n   _this.filelayout_manager.el.max_column_width = w - 150;\n   this.el.set_size(this.el.get_stage().width-150,\n                        this.el.get_stage().height);\n            this.el.set_position(100,50);\n}\n",
             "|xns": "Clutter",
             "items": [
index 8c26b77..486e6c9 100644 (file)
@@ -28,10 +28,14 @@ ClutterFiles=new XObject({
         this.clearFiles();
         
         print("clutter files - load project: " + pr.name +"\n");
+        this.fileitems = new Gee.ArrayList<Xcls_fileitem>();
+    
         var fiter = pr.files.map_iterator();
         while (fiter.next()) {
             var a = new Xcls_fileitem(this,fiter.get_value());
-            a.ref();
+            this.fileitems.add(a);
+    
+    //        a.ref();
             print("add to clutter file view: " + fiter.get_value().name + "\n");
             this.filelayout.el.add_child(a.el);
         }
index b3f6ad5..9cba3bb 100644 (file)
@@ -61,10 +61,14 @@ public class Xcls_ClutterFiles : Object
             this.clearFiles();
             
             print("clutter files - load project: " + pr.name +"\n");
+            this.fileitems = new Gee.ArrayList<Xcls_fileitem>();
+        
             var fiter = pr.files.map_iterator();
             while (fiter.next()) {
                 var a = new Xcls_fileitem(this,fiter.get_value());
-                a.ref();
+                this.fileitems.add(a);
+        
+        //        a.ref();
                 print("add to clutter file view: " + fiter.get_value().name + "\n");
                 this.filelayout.el.add_child(a.el);
             }