src/Builder4/WindowRooView.bjs
authorAlan Knowles <alan@roojs.com>
Wed, 20 May 2015 10:20:06 +0000 (18:20 +0800)
committerAlan Knowles <alan@roojs.com>
Wed, 20 May 2015 10:20:06 +0000 (18:20 +0800)
src/Builder4/WindowRooView.vala

src/Builder4/WindowRooView.bjs
src/Builder4/WindowRooView.vala

index a8f3f93..36a0955 100644 (file)
@@ -10,7 +10,7 @@
   {
    "id" : "WindowRooView",
    "| void loadFile" : "(JsRender.JsRender file)\n{\n    this.file = file;\n    this.view.renderJS(true);\n}",
-   "| void createThumb" : "() {\n    \n    \n    if (this.file == null) {\n        return;\n    }\n    var filename = this.file.getIconFileName(false);\n    \n    var  win = this.el.get_parent_window();\n    var width = win.get_width();\n  //  var height = win.get_height();\n\n    Gdk.Pixbuf screenshot = Gdk.pixbuf_get_from_window(win, 0, 0, width, this.el.position);\n\n    screenshot.save(filename,\"png\");\n    return;\n    \n    \n    \n    \n    \n    \n    \n    var p = new WebKit.PrintOperation(_this.view.el);\n     \n    var ps = new Gtk.PrintSettings();\n    ps.set_printer(\"Print to File\");\n    ps.set(\"output-file-format\", \"pdf\");\n    ps.set(\"output-uri\", \"file://\" + filename + \".pdf\");\n\n    // find the printer...\n    \n    /*\n    var ar = Gtk.PaperSize.get_paper_sizes(false);\n    var psetup = new Gtk.PageSetup();\n    for(var i = 0; i < ar.length(); i++) {\n        if (ar.nth_data(i).get_name() ==\"iso_a4\") {\n            psetup.set_paper_size(ar.nth_data(i));\n        }\n    }\n    psetup.set_orientation(Gtk.PageOrientation.LANDSCAPE);\n    \n     \n    p.set_page_setup(psetup);\n    */\n    p.set_print_settings(ps);\n    \n    p.finished.connect(() => {\n        print(\"creating thumbnail for \" + filename + \".pdf\\n\"); \n        var s = new Cairo.PdfSurface(filename + \".pdf\", 400,400);\n    \n        s.write_to_png (filename);\n        \n       // var f = GLib.File.new_for_path (filename + \".pdf\");\n       // f.delete();\n    });\n    \n    \n    p.print();\n    \n    // should we hold until it's printed...\n    \n      \n\n    \n    \n\n\n    \n     \n}\n",
+   "| void createThumb" : "() {\n    \n    \n    if (this.file == null) {\n        return;\n    }\n    var filename = this.file.getIconFileName(false);\n    \n    var  win = this.el.get_parent_window();\n    var width = win.get_width();\n  //  var height = win.get_height();\n    try { \n        Gdk.Pixbuf screenshot = Gdk.pixbuf_get_from_window(win, 0, 0, width, this.el.position);\n        screenshot.save(filename,\"png\");\n    } catch(e) {\n        //noop\n    }\n\n    \n    \n    \n\n\n    \n     \n}\n",
    "* pack" : "add",
    "xtype" : "Paned",
    "# JsRender.JsRender file" : "",
index a1ff271..37fca66 100644 (file)
@@ -55,61 +55,16 @@ public class Xcls_WindowRooView : Object
         var  win = this.el.get_parent_window();
         var width = win.get_width();
       //  var height = win.get_height();
-    
-        Gdk.Pixbuf screenshot = Gdk.pixbuf_get_from_window(win, 0, 0, width, this.el.position);
-    
-        screenshot.save(filename,"png");
-        return;
-        
-        
-        
-        
-        
-        
-        
-        var p = new WebKit.PrintOperation(_this.view.el);
-         
-        var ps = new Gtk.PrintSettings();
-        ps.set_printer("Print to File");
-        ps.set("output-file-format", "pdf");
-        ps.set("output-uri", "file://" + filename + ".pdf");
-    
-        // find the printer...
-        
-        /*
-        var ar = Gtk.PaperSize.get_paper_sizes(false);
-        var psetup = new Gtk.PageSetup();
-        for(var i = 0; i < ar.length(); i++) {
-            if (ar.nth_data(i).get_name() =="iso_a4") {
-                psetup.set_paper_size(ar.nth_data(i));
-            }
+        try { 
+            Gdk.Pixbuf screenshot = Gdk.pixbuf_get_from_window(win, 0, 0, width, this.el.position);
+            screenshot.save(filename,"png");
+        } catch(e) {
+            //noop
         }
-        psetup.set_orientation(Gtk.PageOrientation.LANDSCAPE);
-        
-         
-        p.set_page_setup(psetup);
-        */
-        p.set_print_settings(ps);
-        
-        p.finished.connect(() => {
-            print("creating thumbnail for " + filename + ".pdf\n"); 
-            var s = new Cairo.PdfSurface(filename + ".pdf", 400,400);
-        
-            s.write_to_png (filename);
-            
-           // var f = GLib.File.new_for_path (filename + ".pdf");
-           // f.delete();
-        });
-        
-        
-        p.print();
-        
-        // should we hold until it's printed...
-        
-          
     
         
         
+