src/Builder4/ClutterFiles.bjs
authorAlan Knowles <alan@roojs.com>
Sun, 24 May 2015 09:11:48 +0000 (17:11 +0800)
committerAlan Knowles <alan@roojs.com>
Sun, 24 May 2015 09:11:48 +0000 (17:11 +0800)
src/Builder4/ClutterFiles.vala

src/Builder4/ClutterFiles.bjs
src/Builder4/ClutterFiles.vala

index 8a4c913..1fa8214 100644 (file)
@@ -66,7 +66,7 @@
     },
     {
      "listeners" : {
-      "scroll_event" : "( event) => {\n   //Sprint(\"scroll event\");\n    var y = _this.filelayout.el.y;\n    var dir = event.direction;\n    \n    var last_child_bottom = _this.filelayout.el.last_child.y +  _this.filelayout.el.last_child.height;\n    var bottompos = -1 * (  last_child_bottom - this.el.height);\n    \n    switch (dir) {\n        case Clutter.ScrollDirection.UP:\n            print(\"Scroll up by %f\\n\", event.y);\n            y += event.y /2;\n            y = float.min(0, y);\n            break;\n            \n        case Clutter.ScrollDirection.DOWN:\n            print(\"Scroll down by %f\\n\", event.y);\n            y -= event.y /2 ;\n            y = float.min(bottompos, y);\n            \n            \n            break;\n        default:\n            return false;\n    }\n    // range of scroll -- can go up -- eg.. -ve value.\n    \n\n    \n    // to work out the max -ve number\n    // height of filelayout\n    // height of scrollactor..\n    \n/*\n    if ( (-1 * (y+200)) > (  last_child_bottom - this.el.height)) {\n        var nv =         _this.filelayout.el.y ;\n        if (nv != -1 * (  last_child_bottom - this.el.height)) {\n    \n            _this.filelayout.el.y = -1 * (  last_child_bottom - this.el.height);\n            return true;\n        }\n    \n        return  false;\n    }\n\n*/\n    \n    \n//    print(\"\\nlast child - this height = %f  ==== new y %f\\n \".printf( \n  //          last_child_bottom - this.el.height,\n   //         y));    \n   // y = float.min(0, y);    //??\n   // print(\"scroll event of %f  - new y = %f \".printf(event.y, y));\n   print(\"Set scroll to %f (lcb=%f / height = %f)\\n\", y, last_child_bottom, this.el.height);\n   \n    _this.filelayout.el.y = y;\n    return true;\n          \n}"
+      "scroll_event" : "( event) => {\n   //Sprint(\"scroll event\");\n    var y = _this.filelayout.el.y;\n    var dir = event.direction;\n    \n    var last_child_bottom = _this.filelayout.el.last_child.y +  _this.filelayout.el.last_child.height;\n    var bottompos = -1 * (  last_child_bottom - (0.5f * this.el.height));\n    \n    switch (dir) {\n        case Clutter.ScrollDirection.UP:\n            print(\"Scroll up by %f\\n\", event.y);\n            y += event.y /2;\n            y = float.min(0, y); // \n            break;\n            \n        case Clutter.ScrollDirection.DOWN:\n            print(\"Scroll down by %f\\n\", event.y);\n            y -= event.y /2 ;\n            y = float.max(bottompos, y);\n            \n            \n            break;\n        default:\n            return false;\n    }\n    // range of scroll -- can go up -- eg.. -ve value.\n    \n\n    \n    // to work out the max -ve number\n    // height of filelayout\n    // height of scrollactor..\n    \n/*\n    if ( (-1 * (y+200)) > (  last_child_bottom - this.el.height)) {\n        var nv =         _this.filelayout.el.y ;\n        if (nv != -1 * (  last_child_bottom - this.el.height)) {\n    \n            _this.filelayout.el.y = -1 * (  last_child_bottom - this.el.height);\n            return true;\n        }\n    \n        return  false;\n    }\n\n*/\n    \n    \n//    print(\"\\nlast child - this height = %f  ==== new y %f\\n \".printf( \n  //          last_child_bottom - this.el.height,\n   //         y));    \n   // y = float.min(0, y);    //??\n   // print(\"scroll event of %f  - new y = %f \".printf(event.y, y));\n   print(\"Set scroll to %f (lcb=%f / height = %f)\\n\", y, last_child_bottom, this.el.height);\n   \n    _this.filelayout.el.y = y;\n    return true;\n          \n}"
      },
      "# Gee.ArrayList<Xcls_fileitem> fileitems" : "new Gee.ArrayList<Xcls_fileitem>()",
      "id" : "scroller",
            "* prop" : "layout_manager"
           },
           {
-           "* ctor" : "new Clutter.Text.full(\"Sans 14px\", GLib.Path.get_basename(folderpath),  Clutter.Color.from_string(\"#fff\"))",
+           "* ctor" : "new Clutter.Text.full(\"Sans bold 14px\", GLib.Path.get_basename(folderpath),  Clutter.Color.from_string(\"#fff\"))",
            "* args" : "string folderpath",
            "id" : "+foldertitle",
            "$ x_expand" : true,
index cfc7e01..1f8d0ba 100644 (file)
@@ -339,19 +339,19 @@ public class Xcls_ClutterFiles : Object
                 var dir = event.direction;
                 
                 var last_child_bottom = _this.filelayout.el.last_child.y +  _this.filelayout.el.last_child.height;
-                var bottompos = -1 * (  last_child_bottom - this.el.height);
+                var bottompos = -1 * (  last_child_bottom - (0.5f * this.el.height));
                 
                 switch (dir) {
                     case Clutter.ScrollDirection.UP:
                         print("Scroll up by %f\n", event.y);
                         y += event.y /2;
-                        y = float.min(0, y);
+                        y = float.min(0, y); // 
                         break;
                         
                     case Clutter.ScrollDirection.DOWN:
                         print("Scroll down by %f\n", event.y);
                         y -= event.y /2 ;
-                        y = float.min(bottompos, y);
+                        y = float.max(bottompos, y);
                         
                         
                         break;
@@ -740,7 +740,7 @@ public class Xcls_ClutterFiles : Object
         public Xcls_foldertitle(Xcls_ClutterFiles _owner , string folderpath)
         {
             _this = _owner;
-            this.el = new Clutter.Text.full("Sans 14px", GLib.Path.get_basename(folderpath),  Clutter.Color.from_string("#fff"));
+            this.el = new Clutter.Text.full("Sans bold 14px", GLib.Path.get_basename(folderpath),  Clutter.Color.from_string("#fff"));
 
             // my vars (dec)