X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=Sample%2FWindow.js;h=04aaf2c7ebd30ab2d438e7522043d3bfbebdba8c;hb=119290bc3234e9ece1c64dbd72ca486d9633b5b7;hp=9eee5c500f737f626d94fa25a7fc16bdbedfc71f;hpb=0726864a9b3c3fc302f6605c96baf25f07fd6859;p=app.Builder.js diff --git a/Sample/Window.js b/Sample/Window.js index 9eee5c500..04aaf2c7e 100644 --- a/Sample/Window.js +++ b/Sample/Window.js @@ -1468,11 +1468,14 @@ Window=new XObject({ items : [ { xtype: Gtk.ComboBox, - id : "combo", - init : function() { - XObject.prototype.init.call(this); - this.el.add_attribute(this.get('render').el , 'markup', 1 ); + listeners : { + changed : function (self) { + var fn = this.getValue(); + var pm = imports.Builder.Provider.ProjectManager.ProjectManager; + this.get('/LeftProjectTree.model').loadProject(pm.getByFn(fn)) + } }, + id : "combo", getValue : function() { var ix = this.el.get_active(); if (ix < 0 ) { @@ -1484,6 +1487,10 @@ Window=new XObject({ } return data[ix].fn; }, + init : function() { + XObject.prototype.init.call(this); + this.el.add_attribute(this.get('render').el , 'markup', 1 ); + }, setValue : function(fn) { var el = this.el; @@ -1496,13 +1503,6 @@ Window=new XObject({ } }); }, - listeners : { - changed : function (self) { - var fn = this.getValue(); - var pm = imports.Builder.Provider.ProjectManager.ProjectManager; - this.get('/LeftProjectTree.model').loadProject(pm.getByFn(fn)) - } - }, items : [ { xtype: Gtk.CellRendererText, @@ -1511,6 +1511,7 @@ Window=new XObject({ }, { xtype: Gtk.ListStore, + id : "combomodel", pack : "set_model", init : function() { XObject.prototype.init.call(this); @@ -1520,6 +1521,7 @@ Window=new XObject({ ] ); + // this.el.set_sort_column_id(1,Gtk.SortType.ASCENDING); var pm = imports.Builder.Provider.ProjectManager.ProjectManager; var _this = this; pm.on('changed', function() { @@ -1544,8 +1546,7 @@ Window=new XObject({ }); this.get('/LeftProjectTree.combo').setValue(ov); - }, - id : "combomodel" + } } ] } @@ -2722,7 +2723,7 @@ Window=new XObject({ // console.log( '' + p.name +' ['+p.type+']'); //GObject.TYPE_STRING, // real key // GObject.TYPE_STRING, // real type - // GObject.TYPE_STRING, // docs ? + // GObject.TYPE_STRING, // docs ?this.el.set_value(iter, 0, p.name);et_value(iter, 0, p.name); // GObject.TYPE_STRING // func def? @@ -2739,6 +2740,7 @@ Window=new XObject({ }, { xtype: Gtk.TreeViewColumn, + pack : false, init : function() { this.el = new Gtk.TreeViewColumn(); this.parent.el.append_column(this.el); @@ -2746,7 +2748,6 @@ Window=new XObject({ XObject.prototype.init.call(this); this.el.add_attribute(this.items[0].el , 'markup', 4 ); }, - pack : false, items : [ { xtype: Gtk.CellRendererText, @@ -3306,11 +3307,13 @@ Window=new XObject({ { // does something similar to xobject.. - item.pack = (typeof(item.pack) == 'undefined') ? 'add' : item.pack; + //item.pack = (typeof(item.pack) == 'undefined') ? 'add' : item.pack; + // pack is forced to 'false' if (item.pack===false || item.pack === 'false') { // no ; return; } + print("CREATE: " + item['|xns'] + '.' + item['xtype']); @@ -3342,7 +3345,7 @@ Window=new XObject({ ) { continue; } - + // value is a function.. if (k[0] == '|' && typeof(kv) == 'string') { if (kv.match(new RegExp('function'))) { @@ -3369,17 +3372,17 @@ Window=new XObject({ } var altctr = XObject.baseXObject({ xtype: ctr} ); + var pack_m = false; if (!item.pack && altctr) { // try XObject. - item.pack = altctr.prototype.pack; + print("SETTING PACK TO XObjectBase method"); + pack_m = altctr.prototype.pack; - - } var el = new ctr(ctr_args); - + item.el = el; print("PACK" + item.pack); //console.dump(item.pack); @@ -3387,26 +3390,27 @@ Window=new XObject({ var args = []; - var pack_m = false; - if (typeof(item.pack) == 'string') { - - item.pack.split(',').forEach(function(e, i) { + if (!pack_m) { + item.pack = (typeof(item.pack) == 'undefined') ? 'add' : item.pack; + if (typeof(item.pack) == 'string') { + + item.pack.split(',').forEach(function(e, i) { + + if (e == 'false') { args.push( false); return; } + if (e == 'true') { args.push( true); return; } + if (!isNaN(parseInt(e))) { args.push( parseInt(e)); return; } + args.push(e); + }); + //print(args.join(",")); - if (e == 'false') { args.push( false); return; } - if (e == 'true') { args.push( true); return; } - if (!isNaN(parseInt(e))) { args.push( parseInt(e)); return; } - args.push(e); - }); - //print(args.join(",")); - - pack_m = args.shift(); - } else { - pack_m = item.pack.shift(); - args = item.pack; + pack_m = args.shift(); + } else { + pack_m = item.pack.shift(); + args = item.pack; + } } - // handle error. - if (pack_m && typeof(par[pack_m]) == 'undefined') { + if (typeof(pack_m) == 'string' && typeof(par[pack_m]) == 'undefined') { throw { name: "ArgumentError", message : 'pack method not available : ' + par.id + " : " + par + '.' + pack_m + @@ -3421,17 +3425,21 @@ Window=new XObject({ args.unshift(el); //if (XObject.debug) print(pack_m + '[' + args.join(',') +']'); //Seed.print('args: ' + args.length); - if (pack_m) { + if (typeof(pack_m) == 'string') { par[pack_m].apply(par, args); + } else if (pack_m) { + pack_m.call(item, par, item); } var _this = this; item.items = item.items || []; item.items.forEach(function(ch,n) { - print ("type:" + type); + print ("type:" + type); - print ("ch.pack:" + ch.pack); + print ("ch.pack:" + ch.pack); + + if (type == 'Gtk.Table' && ch.pack == 'add') { var c = n % item.n_columns; var r = Math.floor(n/item.n_columns); @@ -3459,7 +3467,7 @@ Window=new XObject({ el.signal.drag_motion.connect(XObject.createDelegate(this.widgetDragMotionEvent, this,[ item ], true)); el.signal.drag_drop.connect(XObject.createDelegate(this.widgetDragDropEvent, this, [ item ], true)); el.signal.button_press_event.connect(XObject.createDelegate(this.widgetPressEvent, this, [ item ], true )); - el.signal.button_release_event.connect(XObject.createDelegate(this.widgetReleaseEvent, this, [ item ], true )); + el.signal.button_release_event.connect(XObject.createDelegate(this.widgetReleaseEvent, this, [ item ], true )); } catch(e) { // ignore! }