src/Builder4/ClutterFiles.bjs
authorAlan Knowles <alan@roojs.com>
Wed, 20 May 2015 08:58:44 +0000 (16:58 +0800)
committerAlan Knowles <alan@roojs.com>
Wed, 20 May 2015 08:58:44 +0000 (16:58 +0800)
src/Builder4/ClutterFiles.vala

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

index 11ee02d..d6c61f0 100644 (file)
@@ -69,7 +69,7 @@
          "$ margin_top" : 5,
          "id" : "+image",
          "* args" : "JsRender.JsRender file",
-         "* init" : "{\n    Gdk.Pixbuf pixbuf= null;\n    \n    var fname = file.getIconFileName(false);\n\n    try {\n        if (FileUtils.test(fname, FileTest.EXISTS)) {\n            pixbuf = new Gdk.Pixbuf.from_file(fname);\n        } \n    } catch (Error e) {\n        // noop\n    \n    }\n    if (pixbuf == null) {\n        \n        try {\n            if (_this.missing_thumb_pixbuf == null) {\n                    var icon_theme = Gtk.IconTheme.get_default ();\n                    _this.missing_thumb_pixbuf = icon_theme.load_icon (\"package-x-generic\", 92, 0);\n                    _this.missing_thumb_pixbuf.ref();\n                }\n                pixbuf = _this.missing_thumb_pixbuf;\n\n        } catch (Error e) {\n        // noop?\n        }\n    }\n\n    var img = new Clutter.Image();\n    img.set_data(pixbuf.get_pixels(),   \n                        pixbuf.has_alpha \n                          ? Cogl.PixelFormat.RGBA_8888\n                          : Cogl.PixelFormat.RGB_888,\n                        pixbuf.get_width (),\n            pixbuf.get_height (),\n                        pixbuf.get_rowstride ()\n    );\n    this.el.set_content(img);\n     // should probably do smarter scaling...\n    \n    \n    this.el.set_size(90, 70);\n}\n",
+         "* init" : "{\n    Gdk.Pixbuf pixbuf= null;\n    \n    var fname = file.getIconFileName(false);\n\n    try {\n        if (FileUtils.test(fname, FileTest.EXISTS)) {\n            pixbuf = new Gdk.Pixbuf.from_file(fname);\n        } \n    } catch (Error e) {\n        // noop\n    \n    }\n    if (pixbuf == null) {\n        \n        try {\n            if (_this.missing_thumb_pixbuf == null) {\n                    var icon_theme = Gtk.IconTheme.get_default ();\n                    _this.missing_thumb_pixbuf = icon_theme.load_icon (\"package-x-generic\", 92, 0);\n                    _this.missing_thumb_pixbuf.ref();\n                }\n                pixbuf = _this.missing_thumb_pixbuf;\n\n        } catch (Error e) {\n            // noop?\n        }\n    }\n    try {\n        var img = new Clutter.Image();\n        img.set_data(pixbuf.get_pixels(),   \n                            pixbuf.has_alpha \n                              ? Cogl.PixelFormat.RGBA_8888\n                              : Cogl.PixelFormat.RGB_888,\n                            pixbuf.get_width (),\n                pixbuf.get_height (),\n                            pixbuf.get_rowstride ()\n        );\n        this.el.set_content(img);\n    } catch (Error e) {\n        // noop?\n    }\n     // should probably do smarter scaling...\n    \n    \n    this.el.set_size(90, 70);\n}\n",
          "$ x_expand" : true,
          "* pack" : "add_child",
          "xtype" : "Actor",
index 39f4b55..dd463e6 100644 (file)
@@ -320,20 +320,23 @@ public class Xcls_ClutterFiles : Object
                             pixbuf = _this.missing_thumb_pixbuf;
             
                     } catch (Error e) {
-                    // noop?
+                        // noop?
                     }
                 }
-            
-                var img = new Clutter.Image();
-                img.set_data(pixbuf.get_pixels(),   
-                                    pixbuf.has_alpha 
-                                      ? Cogl.PixelFormat.RGBA_8888
-                                      : Cogl.PixelFormat.RGB_888,
-                                    pixbuf.get_width (),
-                        pixbuf.get_height (),
-                                    pixbuf.get_rowstride ()
-                );
-                this.el.set_content(img);
+                try {
+                    var img = new Clutter.Image();
+                    img.set_data(pixbuf.get_pixels(),   
+                                        pixbuf.has_alpha 
+                                          ? Cogl.PixelFormat.RGBA_8888
+                                          : Cogl.PixelFormat.RGB_888,
+                                        pixbuf.get_width (),
+                            pixbuf.get_height (),
+                                        pixbuf.get_rowstride ()
+                    );
+                    this.el.set_content(img);
+                } catch (Error e) {
+                    // noop?
+                }
                  // should probably do smarter scaling...