Sample/Window.bjs
authorAlan Knowles <alan@akbkhome.com>
Thu, 4 Nov 2010 03:19:54 +0000 (11:19 +0800)
committerAlan Knowles <alan@akbkhome.com>
Thu, 4 Nov 2010 03:19:54 +0000 (11:19 +0800)
Sample/Window.bjs

index 6b02015..da190c8 100644 (file)
                                                             "|shadow_type": "Gtk.ShadowType.IN",
                                                             "items": [
                                                                 {
-                                                                    "|xns": "Gtk",
-                                                                    "xtype": "TreeView",
-                                                                    "pack": "add",
-                                                                    "|init": "function() {\n    XObject.prototype.init.call(this);\n  this.el.set_size_request(150,-1);\n                          //  set_reorderable: [1]\n                                  \n            var description = new Pango.FontDescription.c_new();\n    description.set_size(8000);\n    this.el.modify_font(description);\n    \n    this.selection = this.el.get_selection();\n    this.selection.set_mode( Gtk.SelectionMode.SINGLE);\n   // this.selection.signal['changed'].connect(function() {\n    //    _view.listeners['cursor-changed'].apply(_view, [ _view, '']);\n    //});\n    // see: http://live.gnome.org/GnomeLove/DragNDropTutorial\n     \n    Gtk.drag_source_set (\n            this.el,            /* widget will be drag-able */\n            Gdk.ModifierType.BUTTON1_MASK,       /* modifier that will start a drag */\n            null,            /* lists of target to support */\n            0,              /* size of list */\n            Gdk.DragAction.COPY         /* what to do with data after dropped */\n    );\n    //Gtk.drag_source_set_target_list(this.el, LeftTree.targetList);\n   \n    Gtk.drag_source_set_target_list(this.el, this.get('/Window').targetList);\n    Gtk.drag_source_add_text_targets(this.el); \n    /*\n    print(\"RP: TARGET:\" + LeftTree.atoms[\"STRING\"]);\n    targets = new Gtk.TargetList();\n    targets.add( LeftTree.atoms[\"STRING\"], 0, 0);\n    targets.add_text_targets( 1 );\n    Gtk.drag_dest_set_target_list(this.el, LeftTree.targetList);\n    \n    //if you want to allow text to be output elsewhere..\n    //Gtk.drag_source_add_text_targets(this.el);\n    */\n    return true; \n}\n",
-                                                                    "|headers_visible": false,
-                                                                    "|enable_tree_lines": true,
                                                                     "listeners": {
                                                                         "drag_begin": "function (self, ctx) {\n    // we could fill this in now...\n        Seed.print('SOURCE: drag-begin');\n        \n        \n        \n        var iter = new Gtk.TreeIter();\n        var s = this.selection;\n        s.get_selected(this.get('/RightPalete.model').el, iter);\n        var path = this.get('/RightPalete.model').el.get_path(iter);\n        \n        var pix = this.el.create_row_drag_icon ( path);\n            \n                \n        Gtk.drag_set_icon_pixmap (ctx,\n            pix.get_colormap(),\n            pix,\n            null,\n            -10,\n            -10);\n        \n        var value = new GObject.Value('');\n        this.get('/RightPalete.model').el.get_value(iter, 0, value);\n        if (!this.get('/RightPalete').provider) {\n            return false;\n        }\n        this.el.dropList = this.get('/RightPalete').provider.getDropList(value.value);\n        this.el.dragData = value.value;\n        \n        \n        \n        \n        return true;\n}",
                                                                         "drag_data_get": "function (self, drag_context, selection_data, info, time) {\n \t//Seed.print('Palete: drag-data-get: ' + target_type);\n        if (this.el.dragData && this.el.dragData.length ) {\n            selection_data.set_text(this.el.dragData ,this.el.dragData.length);\n        }\n        \n        \n        //this.el.dragData = \"TEST from source widget\";\n        \n        \n}",
-                                                                        "drag_end": "function (self, drag_context) {\n \tSeed.print('SOURCE: drag-end');\n\tthis.el.dragData = false;\n\tthis.el.dropList = false;\n\tthis.get('/LeftTree.view').highlight(false);\n\treturn true;\n}"
+                                                                        "drag_end": "function (self, drag_context) {\n \tSeed.print('SOURCE: drag-end');\n\tthis.el.dragData = false;\n\tthis.el.dropList = false;\n\tthis.get('/LeftTree.view').highlight(false);\n\treturn true;\n}",
+                                                                        "button_press_event": "function (self, event) {\n    return false;\n}"
                                                                     },
+                                                                    "pack": "add",
+                                                                    "xtype": "TreeView",
+                                                                    "|enable_tree_lines": true,
+                                                                    "|headers_visible": false,
+                                                                    "|init": "function() {\n    XObject.prototype.init.call(this);\n  this.el.set_size_request(150,-1);\n                          //  set_reorderable: [1]\n                                  \n            var description = new Pango.FontDescription.c_new();\n    description.set_size(8000);\n    this.el.modify_font(description);\n    \n    this.selection = this.el.get_selection();\n    this.selection.set_mode( Gtk.SelectionMode.SINGLE);\n   // this.selection.signal['changed'].connect(function() {\n    //    _view.listeners['cursor-changed'].apply(_view, [ _view, '']);\n    //});\n    // see: http://live.gnome.org/GnomeLove/DragNDropTutorial\n     \n    Gtk.drag_source_set (\n            this.el,            /* widget will be drag-able */\n            Gdk.ModifierType.BUTTON1_MASK,       /* modifier that will start a drag */\n            null,            /* lists of target to support */\n            0,              /* size of list */\n            Gdk.DragAction.COPY         /* what to do with data after dropped */\n    );\n    //Gtk.drag_source_set_target_list(this.el, LeftTree.targetList);\n   \n    Gtk.drag_source_set_target_list(this.el, this.get('/Window').targetList);\n    Gtk.drag_source_add_text_targets(this.el); \n    /*\n    print(\"RP: TARGET:\" + LeftTree.atoms[\"STRING\"]);\n    targets = new Gtk.TargetList();\n    targets.add( LeftTree.atoms[\"STRING\"], 0, 0);\n    targets.add_text_targets( 1 );\n    Gtk.drag_dest_set_target_list(this.el, LeftTree.targetList);\n    \n    //if you want to allow text to be output elsewhere..\n    //Gtk.drag_source_add_text_targets(this.el);\n    */\n    return true; \n}\n",
+                                                                    "|xns": "Gtk",
                                                                     "items": [
                                                                         {
                                                                             "|xns": "Gtk",