"items": [
{
"listeners": {
- "destroy_event": "function (self, event) {\n this.el.hide();\n return true;\n}",
+ "destroy_event": "function (self, event) {\n if (!this.get('/Editor.buffer').checkSyntax) {\n // no hiding with errors.\n return true;\n }\n this.el.hide();\n return true;\n}",
"delete_event": "function (self, event) {\n this.el.hide();\n return true;\n}",
"configure_event": "function (self, object) {\n this.pos = this.el.get_position();\n\n\n return false;\n}",
"show": "function (self) {\n if (this.pos) {\n this.el.set_uposition(this.pos.root_x,this.pos.root_y);\n }\n}"
"items": [
{
"listeners": {
- "activate": "function (self) {\n this.get('/Editor.RightEditor').save();\n}"
+ "clicked": "function (self) {\n\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 && (event.key.state & 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,
"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",