Attribute changed old-javascript
[app.Builder.js] / old-javascript / Builder4 / DialogNewComponent.bjs
diff --git a/old-javascript/Builder4/DialogNewComponent.bjs b/old-javascript/Builder4/DialogNewComponent.bjs
new file mode 100644 (file)
index 0000000..3b0fd97
--- /dev/null
@@ -0,0 +1,163 @@
+{
+    "name" : "DialogNewComponent",
+    "parent" : "",
+    "title" : "",
+    "path" : "/home/alan/gitlive/app.Builder.js/Builder4/DialogNewComponent.bjs",
+    "permname" : "",
+    "modOrder" : "",
+    "items" : [
+        {
+            "listeners" : {
+                "delete_event" : "(self, event) => {\n    this.el.hide();\n    return true; \n    //test  \n}\n ",
+                "response" : " (self, response_id) =>  { \n  \n\tif (response_id < 1) { // cancel!\n            this.el.hide();\n            return;\n        }\n\n\n\n        if (_this.name.el.get_text().length  < 1) {\n            StandardErrorDialog.show(\n                this.el,\n                \"You have to set Component name \"\n            );\n             \n            return;\n        }\n        // what does this do?\n        \n        var isNew = _this.file.name.length  > 0 ? false : true;\n        /*\n        if (!isNew && this.file.name != _this.name.el.get_text()) {\n            Xcls_StandardErrorDialog.singleton().show(\n                this.el,\n                \"Sorry changing names does not work yet. \"\n            );\n             \n            return;\n        }\n        */\n         \n        \n      \n        // FIXME - this may be more complicated...\n        //for (var i in this.def) {\n        //    this.file[i] =  this.get(i).el.get_text();\n        //}\n\n        if (!isNew) {\n            try {\n                 this.updateFileFromEntry();\n             } catch( JsRender.Error.RENAME_FILE_EXISTS er) {\n                  Xcls_StandardErrorDialog.singleton().show(\n                    this.el,\n                    \"The name you used already exists \"\n                );\n                return;\n                 \n             }\n                                                        \n        \n            _this.file.save();\n            this.el.hide();\n            return;\n        }\n        var fn = this.name.el.get_text();\n        var dir = _this.project.firstPath();\n       \n        if (GLib.FileUtils.test(dir + \"/\" + fn + \".bjs\", GLib.FileTest.EXISTS)) {\n            Xcls_StandardErrorDialog.singleton().show(\n                this.el,\n                \"That file already exists\"\n            ); \n            return;\n        }\n       \n       var f =  JsRender.JsRender.factory(\n                _this.file.project.xtype,  \n                _this.file.project, \n                dir + \"/\" + fn + \".bjs\");\n\n        _this.file = f;\n        \n\n        \n        this.updateFileFromEntry();\n        _this.file.save();\n        _this.file.project.addFile(_this.file);\n        \n\t \n        // what about .js ?\n       \n        this.el.hide();\n        \n        \n        //var tmpl = this.project.loadFileOnly(DialogNewComponent.get('template').getValue());\n         \n        //var nf = _this.project.create(dir + \"/\" + _this.file.name + \".bjs\");\n        //for (var i in this.file) {\n        //    nf[i] = this.file[i];\n        //}\n        _this.success(_this.project, _this.file);\n        /*\n\n        -- fixme -- needs to be a signal..\n        if (DialogNewComponent.success != null) {\n            DialogNewComponent.success(_this.project, nf);\n        }\n        */\n}",
+                "show" : "(self)  => {\n  this.el.show_all();\n  //test\n}"
+            },
+            "|   void updateFileFromEntry" : "() {\n\n        _this.file.title = _this.title.el.get_text();\n        _this.file.region = _this.region.el.get_text();            \n        _this.file.parent = _this.parent.el.get_text();                        \n        _this.file.permname = _this.permname.el.get_text();                                    \n        _this.file.modOrder = _this.modOrder.el.get_text();\n        \n        if (_this.file.name.length  > 0 && _this.file.name != _this.name.el.get_text()) {\n            _this.file.renameTo(_this.name.el.get_text());\n        }\n                                                    \n}    ",
+            "@ void success" : "(Project.Project pr, JsRender.JsRender file)",
+            "id" : "DialogNewComponent",
+            "default_width" : 500,
+            "$ deletable" : true,
+            "# Project.Project project" : "",
+            "title" : "New Component",
+            "xtype" : "Dialog",
+            "|   void show" : "(JsRender.JsRender c) \n{\n    this.project = c.project;\n    \n    //if (!this.el) {\n        //this.init();\n     //}\n    \n    _this.name.el.set_text(c.name);\n    _this.title.el.set_text(c.title);\n    _this.parent.el.set_text(c.parent);    \n    _this.region.el.set_text(c.region);\n    _this.modOrder.el.set_text(c.modOrder);\n     _this.permname.el.set_text(c.permname);\n    \n    if (c.path.length > 0) {\n        this.el.set_title(\"Edit File Details - \" + c.name);\n    } else {\n        this.el.set_title(\"Create New File\");\n    }\n     \n    _this.file = c;\n    //console.log('show all');\n    this.el.show_all();\n    \n    //this.success = c.success;\n    \n    \n}",
+            "# JsRender.JsRender file" : "null",
+            "default_height" : 200,
+            "$ modal" : true,
+            "$ xns" : "Gtk",
+            "items" : [
+                {
+                    "xtype" : "VBox",
+                    "$ pack" : "get_content_area().add",
+                    "$ xns" : "Gtk",
+                    "items" : [
+                        {
+                            "* pack" : "pack_start,false,false,0",
+                            "xtype" : "Table",
+                            "n_columns" : 2,
+                            "$ xns" : "Gtk",
+                            "n_rows" : 3,
+                            "$ homogeneous" : true,
+                            "items" : [
+                                {
+                                    "label" : "Component Name",
+                                    "xalign" : 0.90000000000000002,
+                                    "* pack" : "attach_defaults,0,1,0,1",
+                                    "xtype" : "Label",
+                                    "$ justify" : "Gtk.Justification.RIGHT",
+                                    "x_options" : 4,
+                                    "$ xns" : "Gtk"
+                                },
+                                {
+                                    "id" : "name",
+                                    "$ visible" : true,
+                                    "xtype" : "Entry",
+                                    "* pack" : "attach_defaults,1,2,0,1",
+                                    "$ xns" : "Gtk"
+                                },
+                                {
+                                    "label" : "Title",
+                                    "$ visible" : true,
+                                    "xalign" : 0.90000000000000002,
+                                    "* pack" : "attach_defaults,0,1,1,2",
+                                    "xtype" : "Label",
+                                    "$ justify" : "Gtk.Justification.RIGHT",
+                                    "x_options" : 4,
+                                    "$ xns" : "Gtk"
+                                },
+                                {
+                                    "id" : "title",
+                                    "$ visible" : true,
+                                    "xtype" : "Entry",
+                                    "* pack" : "attach_defaults,1,2,1,2",
+                                    "$ xns" : "Gtk"
+                                },
+                                {
+                                    "label" : "Region",
+                                    "tooltip_text" : "center, north, south, east, west",
+                                    "$ visible" : true,
+                                    "xalign" : 0.90000000000000002,
+                                    "* pack" : "attach_defaults,0,1,2,3",
+                                    "xtype" : "Label",
+                                    "$ justify" : "Gtk.Justification.RIGHT",
+                                    "x_options" : 4,
+                                    "$ xns" : "Gtk"
+                                },
+                                {
+                                    "id" : "region",
+                                    "$ visible" : true,
+                                    "xtype" : "Entry",
+                                    "* pack" : "attach_defaults,1,2,2,3",
+                                    "$ xns" : "Gtk"
+                                },
+                                {
+                                    "label" : "Parent Name",
+                                    "$ visible" : true,
+                                    "xalign" : 0.90000000000000002,
+                                    "* pack" : "attach_defaults,0,1,3,4",
+                                    "xtype" : "Label",
+                                    "$ justify" : "Gtk.Justification.RIGHT",
+                                    "x_options" : 4,
+                                    "$ xns" : "Gtk"
+                                },
+                                {
+                                    "id" : "parent",
+                                    "$ visible" : true,
+                                    "xtype" : "Entry",
+                                    "* pack" : "attach_defaults,1,2,3,4",
+                                    "$ xns" : "Gtk"
+                                },
+                                {
+                                    "label" : "Permission Name",
+                                    "$ visible" : true,
+                                    "xalign" : 0.90000000000000002,
+                                    "* pack" : "attach_defaults,0,1,4,5",
+                                    "xtype" : "Label",
+                                    "$ justify" : "Gtk.Justification.RIGHT",
+                                    "x_options" : 4,
+                                    "$ xns" : "Gtk"
+                                },
+                                {
+                                    "id" : "permname",
+                                    "$ visible" : true,
+                                    "xtype" : "Entry",
+                                    "* pack" : "attach_defaults,1,2,4,5",
+                                    "$ xns" : "Gtk"
+                                },
+                                {
+                                    "label" : "Order (for tabs)",
+                                    "$ visible" : true,
+                                    "xalign" : 0.90000000000000002,
+                                    "* pack" : "attach_defaults,0,1,5,6",
+                                    "xtype" : "Label",
+                                    "$ justify" : "Gtk.Justification.RIGHT",
+                                    "x_options" : 4,
+                                    "$ xns" : "Gtk"
+                                },
+                                {
+                                    "id" : "modOrder",
+                                    "$ visible" : true,
+                                    "xtype" : "Entry",
+                                    "* pack" : "attach_defaults,1,2,5,6",
+                                    "$ xns" : "Gtk"
+                                }
+                            ]
+                        }
+                    ]
+                },
+                {
+                    "label" : "Cancel",
+                    "* pack" : "add_action_widget,0",
+                    "xtype" : "Button",
+                    "$ xns" : "Gtk"
+                },
+                {
+                    "label" : "OK",
+                    "* pack" : "add_action_widget,1",
+                    "xtype" : "Button",
+                    "$ xns" : "Gtk"
+                }
+            ]
+        }
+    ]
+}
\ No newline at end of file