1 //<Script type="text/javascript">
5 GObject = imports.gi.GObject;
6 console = imports.console;
7 Builder = imports['Builder.js'];
8 Roo = imports['Roo.js'];
13 * project type: gtk or roo..
25 function create() // parent?
32 type: Gtk.WindowType.TOPLEVEL,
40 c = c || { name : '' , xtype : '' };
49 _form[k].setValue(typeof(c[k]) == 'undefined' ? '' : c[k]);
52 this.success = c.success;
59 'delete-event' : function (widget, event) {
64 response : function (w, id)
71 if (!_form.xtype.getValue().length) {
74 xtype : 'MessageDialog',
77 buttons : Gtk.ButtonsType.OK,
78 'message-type' : Gtk.MessageType.ERROR,
79 //"secondary-text" gchar* : Read / Write
80 //"secondary-use-markup" gboolean : Read / Write
81 text : "You have to set Project type",
85 'delete-event' : function (widget, event) {
89 _rendered : function()
93 response : function () {
106 this.project.name = _form.name.getValue();
107 this.project.xtype = _form.xtype.getValue();
112 var pr = Builder.Provider.ProjectManager.update(this.project);
118 _new : function(self) {
122 _rendered : function()
124 this.el.add_button("OK",1 );
125 this.el.add_button("Cancel",0 );
132 set_border_width : [ 0 ],
133 set_title : [ 'Project Properties' ],
134 set_default_size: [600, 400] //,
145 packing : function(p,e) {
146 p.el.get_content_area().add(e.el)
152 packing : [ 'pack_start', false, true , 0 ],
157 packing : [ 'pack_start', false, true , 0 ],
159 label : "Project Name:"
166 packing : [ 'pack_end', true, true , 0 ],
168 _rendered : function(self) {
173 setValue : function(v) {
176 getValue : function()
178 return this.el.get_text();
188 packing : [ 'pack_start', false, true , 0 ],
193 packing : [ 'pack_start', false, true , 0 ],
195 label : "Project Type:"
203 packing : [ 'pack_end', true, true , 0 ],
205 // set_text_column : [1]
206 //set_size_request : [150,-1]
210 setValue : function(v)
214 Roo.each(this.model.data, function(n, ix) {
221 getValue : function()
223 var ix = this.el.get_active();
227 return this.model.data[ix].xtype;
229 var iter = new Gtk.TreeIter();
230 if (this.el.get_active_iter(iter)) {
233 var value = new GObject.Value('');
234 this.model.el.get_value(iter, 0, value);
247 _rendered : function ()
251 this.el.add_attribute(this.items[0].el , 'markup', 1 );
252 //this.el.add_attribute(this.items[0].el , 'popup', 2 );
264 xtype : 'CellRendererText',
265 packing : ['pack_start'],
272 packing : [ 'set_model' ],
280 _rendered : function ()
283 this.el.set_column_types ( 2, [
284 GObject.TYPE_STRING, // real key
285 GObject.TYPE_STRING // real type
291 { xtype: 'Roo', desc : "Roo Project" },
292 { xtype: 'Gtk', desc : "Gtk Project" },
293 //{ xtype: 'JS', desc : "Javascript Class" }
296 this.loadData(this.data);
307 loadData : function (data) {
309 var iter = new Gtk.TreeIter();
311 Roo.each(data, function(p) {
316 el.set_value(iter, 0, p.xtype);
317 el.set_value(iter, 1, p.desc);
336 packing : [ 'pack_end', true, true , 0 ],
350 //_win = XN.xnew(create());