}
// user defined functions
+ public void updateKey (string oldkey, string type, string key ) {
+
+
+
+ _this.model.el.foreach((mod, path, iter) => {
+
+
+
+
+ GLib.Value gvaltype, gval,kvalue;
+ mod.get_value(iter, 1 , out gval); // one is key..
+
+ mod.get_value(iter,0, out gvaltype);
+
+ mod.get_value(iter,3, out kvalue);
+
+ if (oldkey == ((string)gval) && type == ((string)gvaltype)) {
+
+ //print("update iter type=%s, key=%s value=%s\n", type, key,(string) kvalue);
+
+ this.updateIter(iter, type, key, (string)kvalue);
+ return true;
+ }
+
+
+ return false;
+ });
+
+ this.changed();
+
+
+ }
public void before_edit ()
{
}
public bool startEditingValue ( Gtk.TreePath path) {
- // ONLY return true if editing is allowed - eg. combo..
+ // ONLY return true if editing is allowed - eg. combo..
+
+ print("start editing?\n");
+ if (!this.stop_editor()) {
+ print("stop editor failed\n");
+ return false;
+ }
- print("start editing?\n");
- if (!this.stop_editor()) {
- print("stop editor failed\n");
- return false;
- }
-
- Gtk.TreeIter iter;
+ Gtk.TreeIter iter;
- var mod = this.model.el;
- mod.get_iter (out iter, path);
-
- /*
- m.set(iter,
- 0, "listener",
- 1, miter.get_key(),
- 2, "<b>" + miter.get_key() + "</b>",
- 3, miter.get_value()
- );
-
- */
- GLib.Value gval;
- mod.get_value(iter, 3 , out gval);
- var val = (string)gval;
-
- mod.get_value(iter, 1 , out gval);
- var key = (string)gval;
- var type_ar = key.split(" ");
-
- string kname, kflag, ktype;
- this.node.normalize_key(key, out kname, out kflag, out ktype);
-
-
- mod.get_value(iter, 0 , out gval);
- var type = (string)gval; // listerner or prop..
-
-
-
- var use_textarea = false;
+ var mod = this.model.el;
+ mod.get_iter (out iter, path);
+
+ /*
+ m.set(iter,
+ 0, "listener",
+ 1, miter.get_key(),
+ 2, "<b>" + miter.get_key() + "</b>",
+ 3, miter.get_value()
+ );
+
+ */
+ GLib.Value gval;
+ mod.get_value(iter, 3 , out gval);
+ var val = (string)gval;
- //------------ things that require the text editor...
-
- if (type == "listener") {
- use_textarea = true;
- }
- if (key.length > 0 && key[0] == '|') { // user defined method
- use_textarea = true;
- }
- if (key.length > 0 && key[0] == '$') { // raw string
- use_textarea = true;
- }
- if (key.length > 0 && key == "* init") {
- use_textarea = true;
- }
- if (val.length > 40) { // long value...
- use_textarea = true;
- }
-
-
-
- if (use_textarea) {
- print("Call show editor\n");
- GLib.Timeout.add_full(GLib.Priority.DEFAULT,10 , () => {
- this.view.el.get_selection().select_path(path);
-
- this.show_editor(file, node, type, key);
-
- return false;
- });
-
-
- return false;
- }
-
- var pal = Palete.factory(this.file.project.xtype);
-
- string[] opts;
- var has_opts = pal.typeOptions(this.node.fqn(), kname, ktype, out opts);
-
+ mod.get_value(iter, 1 , out gval);
+ var key = (string)gval;
+
+
+ string kname, kflag, ktype;
+ this.node.normalize_key(key, out kname, out kflag, out ktype);
+
+
+ mod.get_value(iter, 0 , out gval);
+ var type = (string)gval; // listerner or prop..
+
+
+
+ var use_textarea = false;
+
+ //------------ things that require the text editor...
+
+ if (type == "listener") {
+ use_textarea = true;
+ }
+ if (key.length > 0 && key[0] == '|') { // user defined method
+ use_textarea = true;
+ }
+ if (key.length > 0 && key[0] == '$') { // raw string
+ use_textarea = true;
+ }
+ if (key.length > 0 && key == "* init") {
+ use_textarea = true;
+ }
+ if (val.length > 40) { // long value...
+ use_textarea = true;
+ }
+
+
+
+ if (use_textarea) {
+ print("Call show editor\n");
+ GLib.Timeout.add_full(GLib.Priority.DEFAULT,10 , () => {
+ this.view.el.get_selection().select_path(path);
+ this.show_editor(file, node, type, key);
- // others... - fill in options for true/false?
- print("turn on editing %s \n" , mod.get_path(iter).to_string());
-
- print (ktype.up());
- if (has_opts) {
- print("start editing try/false)???");
- this.valrender.el.has_entry = false;
-
- this.valrender.setOptions(opts);
-
- this.valrender.el.has_entry = false;
- this.valrender.el.editable = true;
- this.allow_edit = true;
- GLib.Timeout.add_full(GLib.Priority.DEFAULT,100 , () => {
- this.view.el.set_cursor_on_cell(
- path,
- this.valcol.el,
- this.valrender.el,
- true
- );
- return false;
- });
- return true;
- }
-
- // see if type is a Enum.
-
-
-
-
-
- opts = { };
+ return false;
+ });
+
+
+ return false;
+ }
+
+ var pal = Palete.factory(this.file.project.xtype);
+
+ string[] opts;
+ var has_opts = pal.typeOptions(this.node.fqn(), kname, ktype, out opts);
+
+
+
+ // others... - fill in options for true/false?
+ print("turn on editing %s \n" , mod.get_path(iter).to_string());
+
+ print (ktype.up());
+ if (has_opts) {
+ print("start editing try/false)???");
+ this.valrender.el.has_entry = false;
+
this.valrender.setOptions(opts);
-
- GLib.Timeout.add_full(GLib.Priority.DEFAULT,10 , () => {
-
- // at this point - work out the type...
- // if its' a combo... then show the options..
- this.valrender.el.has_entry = true;
-
- this.valrender.el.editable = true;
-
- this.allow_edit = true;
-
-
-
-
-
- this.view.el.set_cursor_on_cell(
+ this.valrender.el.has_entry = false;
+ this.valrender.el.editable = true;
+ this.allow_edit = true;
+ GLib.Timeout.add_full(GLib.Priority.DEFAULT,100 , () => {
+ this.view.el.set_cursor_on_cell(
path,
this.valcol.el,
this.valrender.el,
);
return false;
});
- return false;
- }
+ return true;
+ }
+
+ // see if type is a Enum.
+
+
+
+
+
+ opts = { };
+ this.valrender.setOptions(opts);
+
+ GLib.Timeout.add_full(GLib.Priority.DEFAULT,10 , () => {
+
+ // at this point - work out the type...
+ // if its' a combo... then show the options..
+ this.valrender.el.has_entry = true;
+
+ this.valrender.el.editable = true;
+
+
+ this.allow_edit = true;
+
+
+
+
+
+ this.view.el.set_cursor_on_cell(
+ path,
+ this.valcol.el,
+ this.valrender.el,
+ true
+ );
+ return false;
+ });
+ return false;
+ }
public void load (JsRender.JsRender file, JsRender.Node? node)
{
print("load leftprops\n");
}
this.node.props.set(fkey,value);
}
-
+
// add a row???
this.load(this.file, this.node);
}
- public void updateIter (Gtk.TreeIter iter, string type, string key, string value) {
+ public void updateIter (Gtk.TreeIter iter, string type, string key, string kvalue) {
- print("update Iter %s, %s\n", key,value);
+ //print("update Iter %s, %s\n", key,kvalue);
//typeof(string), // 0 key type
//typeof(string), // 1 key
//typeof(string), // 2 key (display)
//typeof(string), // 5 both (tooltip)
//typeof(string), // 6 key (sort)
- var dl = value.strip().split("\n");
+ var dl = kvalue.strip().split("\n");
var dis_val = dl.length > 1 ? (dl[0].strip()+ "...") : dl[0];
0, type,
1, key,
2, this.keyFormat(key ,type),
- 3, value,
+ 3, kvalue,
4, dis_val,
- 5, "<tt>" + GLib.Markup.escape_text(key + " " +value) + "</tt>",
+ 5, "<tt>" + GLib.Markup.escape_text(key + " " +kvalue) + "</tt>",
6, "0 " + key
);
return;
0, "props",
1, key,
2, this.keyFormat(key , "prop"),
- 3, value,
+ 3, kvalue,
4, dis_val,
- 5, "<tt>" + GLib.Markup.escape_text(key + " " + value) + "</tt>",
+ 5, "<tt>" + GLib.Markup.escape_text(key + " " + kvalue) + "</tt>",
6, this.keySortFormat(key)
);
}
// my vars (dec)
// set gobject values
+ this.el.hexpand = true;
var child_0 = new Xcls_Box4( _this );
child_0.ref();
this.el.add ( child_0.el );
// my vars (dec)
// set gobject values
- this.el.stock = Gtk.STOCK_ADD;
+ this.el.stock = Gtk.Stock.ADD;
this.el.icon_size = Gtk.IconSize.MENU;
}
var child_3 = new Xcls_MenuItem11( _this );
child_3.ref();
this.el.append ( child_3.el );
- var child_4 = new Xcls_SeparatorMenuItem12( _this );
+ var child_4 = new Xcls_MenuItem12( _this );
child_4.ref();
- this.el.add ( child_4.el );
- var child_5 = new Xcls_MenuItem13( _this );
+ this.el.append ( child_4.el );
+ var child_5 = new Xcls_SeparatorMenuItem13( _this );
child_5.ref();
- this.el.append ( child_5.el );
+ this.el.add ( child_5.el );
var child_6 = new Xcls_MenuItem14( _this );
child_6.ref();
this.el.append ( child_6.el );
var child_7 = new Xcls_MenuItem15( _this );
child_7.ref();
this.el.append ( child_7.el );
- var child_8 = new Xcls_SeparatorMenuItem16( _this );
+ var child_8 = new Xcls_MenuItem16( _this );
child_8.ref();
- this.el.add ( child_8.el );
- var child_9 = new Xcls_MenuItem17( _this );
+ this.el.append ( child_8.el );
+ var child_9 = new Xcls_SeparatorMenuItem17( _this );
child_9.ref();
- this.el.append ( child_9.el );
+ this.el.add ( child_9.el );
var child_10 = new Xcls_MenuItem18( _this );
child_10.ref();
this.el.append ( child_10.el );
var child_11 = new Xcls_MenuItem19( _this );
child_11.ref();
this.el.append ( child_11.el );
- var child_12 = new Xcls_SeparatorMenuItem20( _this );
+ var child_12 = new Xcls_MenuItem20( _this );
child_12.ref();
- this.el.add ( child_12.el );
- var child_13 = new Xcls_MenuItem21( _this );
+ this.el.append ( child_12.el );
+ var child_13 = new Xcls_SeparatorMenuItem21( _this );
child_13.ref();
- this.el.append ( child_13.el );
+ this.el.add ( child_13.el );
var child_14 = new Xcls_MenuItem22( _this );
child_14.ref();
this.el.append ( child_14.el );
var child_15 = new Xcls_MenuItem23( _this );
child_15.ref();
this.el.append ( child_15.el );
+ var child_16 = new Xcls_MenuItem24( _this );
+ child_16.ref();
+ this.el.append ( child_16.el );
}
// user defined functions
// set gobject values
this.el.tooltip_markup = "eg. \n\nnew Clutter.Image.from_file(.....)";
- this.el.label = "ctor: Alterative to default contructor";
+ this.el.label = "ctor: Alterative to default contructor (Vala)";
//listeners
this.el.activate.connect( ( ) => {
// user defined functions
}
- public class Xcls_SeparatorMenuItem12 : Object
+ public class Xcls_MenuItem12 : Object
+ {
+ public Gtk.MenuItem el;
+ private Xcls_LeftProps _this;
+
+
+ // my vars (def)
+
+ // ctor
+ public Xcls_MenuItem12(Xcls_LeftProps _owner )
+ {
+ _this = _owner;
+ this.el = new Gtk.MenuItem();
+
+ // my vars (dec)
+
+ // set gobject values
+ this.el.tooltip_markup = "set the cms-id for this element, when converted to javascript, the html value will be wrapped with Pman.Cms.content({cms-id},{original-html})\n";
+ this.el.label = "cms-id: (Roo JS/Pman library)";
+
+ //listeners
+ this.el.activate.connect( () => {
+ _this.addProp( "prop", "cms-id", "", "string");
+ });
+ }
+
+ // user defined functions
+ }
+
+ public class Xcls_SeparatorMenuItem13 : Object
{
public Gtk.SeparatorMenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_SeparatorMenuItem12(Xcls_LeftProps _owner )
+ public Xcls_SeparatorMenuItem13(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.SeparatorMenuItem();
// user defined functions
}
- public class Xcls_MenuItem13 : Object
+ public class Xcls_MenuItem14 : Object
{
public Gtk.MenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_MenuItem13(Xcls_LeftProps _owner )
+ public Xcls_MenuItem14(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.MenuItem();
// user defined functions
}
- public class Xcls_MenuItem14 : Object
+ public class Xcls_MenuItem15 : Object
{
public Gtk.MenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_MenuItem14(Xcls_LeftProps _owner )
+ public Xcls_MenuItem15(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.MenuItem();
// user defined functions
}
- public class Xcls_MenuItem15 : Object
+ public class Xcls_MenuItem16 : Object
{
public Gtk.MenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_MenuItem15(Xcls_LeftProps _owner )
+ public Xcls_MenuItem16(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.MenuItem();
// user defined functions
}
- public class Xcls_SeparatorMenuItem16 : Object
+ public class Xcls_SeparatorMenuItem17 : Object
{
public Gtk.SeparatorMenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_SeparatorMenuItem16(Xcls_LeftProps _owner )
+ public Xcls_SeparatorMenuItem17(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.SeparatorMenuItem();
// user defined functions
}
- public class Xcls_MenuItem17 : Object
+ public class Xcls_MenuItem18 : Object
{
public Gtk.MenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_MenuItem17(Xcls_LeftProps _owner )
+ public Xcls_MenuItem18(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.MenuItem();
// user defined functions
}
- public class Xcls_MenuItem18 : Object
+ public class Xcls_MenuItem19 : Object
{
public Gtk.MenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_MenuItem18(Xcls_LeftProps _owner )
+ public Xcls_MenuItem19(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.MenuItem();
// user defined functions
}
- public class Xcls_MenuItem19 : Object
+ public class Xcls_MenuItem20 : Object
{
public Gtk.MenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_MenuItem19(Xcls_LeftProps _owner )
+ public Xcls_MenuItem20(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.MenuItem();
// user defined functions
}
- public class Xcls_SeparatorMenuItem20 : Object
+ public class Xcls_SeparatorMenuItem21 : Object
{
public Gtk.SeparatorMenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_SeparatorMenuItem20(Xcls_LeftProps _owner )
+ public Xcls_SeparatorMenuItem21(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.SeparatorMenuItem();
// user defined functions
}
- public class Xcls_MenuItem21 : Object
+ public class Xcls_MenuItem22 : Object
{
public Gtk.MenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_MenuItem21(Xcls_LeftProps _owner )
+ public Xcls_MenuItem22(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.MenuItem();
// user defined functions
}
- public class Xcls_MenuItem22 : Object
+ public class Xcls_MenuItem23 : Object
{
public Gtk.MenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_MenuItem22(Xcls_LeftProps _owner )
+ public Xcls_MenuItem23(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.MenuItem();
// user defined functions
}
- public class Xcls_MenuItem23 : Object
+ public class Xcls_MenuItem24 : Object
{
public Gtk.MenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_MenuItem23(Xcls_LeftProps _owner )
+ public Xcls_MenuItem24(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.MenuItem();
// my vars (def)
+ public Xcls_PopoverProperty popover;
// ctor
public Xcls_view(Xcls_LeftProps _owner )
this.el = new Gtk.TreeView();
// my vars (dec)
+ this.popover = null;
// set gobject values
this.el.tooltip_column = 5;
}
- // right click.
+ // double click on name..
if (ev.type == Gdk.EventType.2BUTTON_PRESS && ev.button == 1 && col.title == "Name") {
// show popup!.
+ if (this.popover == null) {
+ this.popover = new Xcls_PopoverProperty();
+ this.popover.mainwindow = _this.main_window;
+ }
+
_this.before_edit();
-
+ _this.stop_editor();
+
_this.keyrender.el.stop_editing(false);
_this.keyrender.el.editable =false;
_this.valrender.el.stop_editing(false);
_this.valrender.el.editable =false;
+ Gtk.TreeIter iter;
+ var mod = this.el.get_model();
+ mod.get_iter (out iter, path);
+
+
+ GLib.Value gvaltype, gval;
+ mod.get_value(iter, 1 , out gval); // one is key..
+
+ mod.get_value(iter,0, out gvaltype);
+
+ this.popover.show(this.el, _this.node, (string)gvaltype, (string)gval);
- _this.startEditingKey(path);
+ // _this.startEditingKey(path);
return false;
}
// my vars (dec)
// set gobject values
- var child_0 = new Xcls_MenuItem33( _this );
+ var child_0 = new Xcls_MenuItem34( _this );
child_0.ref();
this.el.append ( child_0.el );
- var child_1 = new Xcls_SeparatorMenuItem34( _this );
+ var child_1 = new Xcls_SeparatorMenuItem35( _this );
child_1.ref();
this.el.append ( child_1.el );
- var child_2 = new Xcls_MenuItem35( _this );
+ var child_2 = new Xcls_MenuItem36( _this );
child_2.ref();
this.el.append ( child_2.el );
}
// user defined functions
}
- public class Xcls_MenuItem33 : Object
+ public class Xcls_MenuItem34 : Object
{
public Gtk.MenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_MenuItem33(Xcls_LeftProps _owner )
+ public Xcls_MenuItem34(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.MenuItem();
// my vars (dec)
// set gobject values
- this.el.label = "Edit";
+ this.el.label = "Edit (double click)";
//listeners
this.el.activate.connect( ( ) =>{
var s = _this.view.el.get_selection();
Gtk.TreeIter iter;
- Gtk.TreeModel model;
- s.get_selected (out model, out iter);
- _this.startEditingKey(model.get_path(iter));
+ Gtk.TreeModel mod;
+ s.get_selected (out mod, out iter);
+
+ if (_this.view.popover == null) {
+ _this.view.popover = new Xcls_PopoverProperty();
+ _this.view.popover.mainwindow = _this.main_window;
+ }
+
+
+ _this.before_edit();
+ _this.stop_editor();
+
+ _this.keyrender.el.stop_editing(false);
+ _this.keyrender.el.editable =false;
+
+ _this.valrender.el.stop_editing(false);
+ _this.valrender.el.editable =false;
+
+
+ GLib.Value gvaltype, gval;
+ mod.get_value(iter, 1 , out gval); // one is key..
+
+ mod.get_value(iter,0, out gvaltype);
+
+ _this.view.popover.show(_this.view.el, _this.node, (string)gvaltype, (string)gval);
+
+
+
+ // _this.startEditingKey(model.get_path(iter));
});
}
// user defined functions
}
- public class Xcls_SeparatorMenuItem34 : Object
+ public class Xcls_SeparatorMenuItem35 : Object
{
public Gtk.SeparatorMenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_SeparatorMenuItem34(Xcls_LeftProps _owner )
+ public Xcls_SeparatorMenuItem35(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.SeparatorMenuItem();
// user defined functions
}
- public class Xcls_MenuItem35 : Object
+ public class Xcls_MenuItem36 : Object
{
public Gtk.MenuItem el;
private Xcls_LeftProps _this;
// my vars (def)
// ctor
- public Xcls_MenuItem35(Xcls_LeftProps _owner )
+ public Xcls_MenuItem36(Xcls_LeftProps _owner )
{
_this = _owner;
this.el = new Gtk.MenuItem();