Sample/Editor.bjs
[app.Builder.js] / Sample / Editor.bjs
index ae1ea6b..42c7966 100644 (file)
@@ -32,7 +32,7 @@
                             "items": [
                                 {
                                     "listeners": {
-                                        "activate": "function (self) {\n  this.get('/Editor.RightEditor').save();\n}"
+                                        "clicked": "function (self) {\n  this.get('/Editor.RightEditor').save();\n}"
                                     },
                                     "id": "save_button",
                                     "label": "Save",
                             "id": "RightEditor",
                             "pack": "add",
                             "xtype": "ScrolledWindow",
-                            "|save": "function() {\n     this.get('/LeftPanel.model').changed(  str , false);\n     this.get('/Editor').dirty = false;\n     this.get('/Editor.save_button').el.sensitive = false;\n}\n",
+                            "|save": "function() {\n    var str = this.get('/Editor.buffer').toString();\n     this.get('/LeftPanel.model').changed(  str , false);\n     this.get('/Editor').dirty = false;\n     this.get('/Editor.save_button').el.sensitive = false;\n}\n",
                             "|xns": "Gtk",
                             "items": [
                                 {
                                     "listeners": {
-                                        "key_release_event": "function (self, event) {\n    if (event.key.keyval != 115 || !(Gdk.ModifierType.CONTROL_MASK & 4) ) {\n        return;\n    }\n    print(event.key.keyval)\n    this.save();\n    return false;\n}"
+                                        "key_release_event": "function (self, event) {\n    \n    if (event.key.keyval == 115 && (Gdk.ModifierType.CONTROL_MASK & Gdk.ModifierType.CONTROL_MASK ) ) {\n        print(\"SAVE: ctrl-S  pressed\");\n        this.save();\n        return false;\n    }\n   // print(event.key.keyval)\n    \n    return false;\n}"
                                     },
                                     "id": "view",
                                     "indent_width": 4,
                                     "|auto_indent": true,
                                     "|init": "function() {\n    XObject.prototype.init.call(this);\n     var description = Pango.Font.description_from_string(\"monospace\")\n    description.set_size(8000);\n    this.el.modify_font(description);\n\n}\n",
                                     "|insert_spaces_instead_of_tabs": true,
-                                    "|load": "function(str) {\n\n// show the help page for the active node..\n   //this.get('/Help').show();\n\n\n  // this.get('/BottomPane').el.set_current_page(0);\n    this.el.get_buffer().set_text(str, str.length);\n    var lm = GtkSource.LanguageManager.get_default();\n    \n    this.el.get_buffer().set_language(lm.get_language('js'));\n    var buf = this.el.get_buffer();\n    var cursor = buf.get_mark(\"insert\");\n    var iter= new Gtk.TextIter;\n    buf.get_iter_at_mark(iter, cursor);\n    iter.set_line(1);\n    iter.set_line_offset(4);\n    buf.move_mark(cursor, iter);\n    \n    \n    cursor = buf.get_mark(\"selection_bound\");\n    iter= new Gtk.TextIter;\n    buf.get_iter_at_mark(iter, cursor);\n    iter.set_line(1);\n    iter.set_line_offset(4);\n    buf.move_mark(cursor, iter);\n    this.get('/Editor').dirty = false;\n    this.el.grab_focus();\n}",
-                                    "|save": "function() {\n    var str = this.get('buffer').toString();\n    print(\"SAVE\" + str);\n     this.get('/LeftPanel.model').changed(  str , false);\n          this.get('/Editor.save_button').el.sensitive = false;\n}\n",
+                                    "|load": "function(str) {\n\n// show the help page for the active node..\n   //this.get('/Help').show();\n\n\n  // this.get('/BottomPane').el.set_current_page(0);\n    this.el.get_buffer().set_text(str, str.length);\n    var lm = GtkSource.LanguageManager.get_default();\n    \n    this.el.get_buffer().set_language(lm.get_language('js'));\n    var buf = this.el.get_buffer();\n    var cursor = buf.get_mark(\"insert\");\n    var iter= new Gtk.TextIter;\n    buf.get_iter_at_mark(iter, cursor);\n    iter.set_line(1);\n    iter.set_line_offset(4);\n    buf.move_mark(cursor, iter);\n    \n    \n    cursor = buf.get_mark(\"selection_bound\");\n    iter= new Gtk.TextIter;\n    buf.get_iter_at_mark(iter, cursor);\n    iter.set_line(1);\n    iter.set_line_offset(4);\n    buf.move_mark(cursor, iter);\n    this.get('/Editor').dirty = false;\n    this.el.grab_focus();\n     this.get('/Editor.save_button').el.sensitive = false;\n}",
+                                    "|save": "function() {\n    \n    this.get('/Editor.RightEditor').save();\n}\n",
                                     "|show_line_numbers": true,
                                     "|xns": "GtkSource",
                                     "items": [
                                         {
                                             "listeners": {
-                                                "changed": "function (self) {\n\n    this.checkSyntax();\n   // print(\"EDITOR CHANGED\");\n    this.get('/Editor').dirty = true;\n    // this.get('/LeftPanel.model').changed(  str , false);\n    return false;\n}"
+                                                "changed": "function (self) {\n\n    if(this.checkSyntax()) {\n        this.get('/Editor.save_button').el.sensitive = true;\n    }\n   // print(\"EDITOR CHANGED\");\n    this.get('/Editor').dirty = true;\n\n    // this.get('/LeftPanel.model').changed(  str , false);\n    return false;\n}"
                                             },
                                             "id": "buffer",
                                             "pack": "set_buffer",