[Laszlo-user] <gridtext> to create an element?
André Bargull
a.bargull at intensis.de
Sun May 4 03:03:59 PDT 2008
Hi Jesse,
I guess the far most easiest way to achieve this, is to change your
local gridtext-component (in "lps/components/lz/gridtext.lzx").
You only need to override the "updateData()"-method in the gridtext's
editbox and handle in that place your node-creation code.
For instance like that:
> @@ -106,6 +106,15 @@
> this.globalMouseDel = new LzDelegate( this,
>
> "checkMouse" );
> super.init();
> + </method>
> + <method name="updateData" >
> + var ret = super.updateData();
> +
> + if (this.datapath.p == null) {
> +
> this.datapath.context.addNode("description", ret);//for a
> "description/text()" datapath
> + }
> +
> + return ret;
> </method>
> <method name="applyData" args="d">
> //because of the monkeying with init that this
> Hello,
>
> In a databound grid, I want to use a <gridtext> for an "optional" node
> in the dataset; ie. the gridtext datapath ("Description/text()") may not
> match anything, and that's ok. It works fine if there is a match, but
> if there isn't for that row, I'd like to be able to create a node (the
> Description) when text is entered. Any clues how that can be done?
>
> Further info: in that case, when there's no matching node, trying to
> enter text prints the error "setNodeText: p is null in Datapath ...".
> I've tried doEnterDown() and various events to try to catch that and
> create a node, but they don't "fire," I think due to that error. I'm
> using 4.0.11.
>
> --
> Jesse Norell
> Kentec Communications, Inc.
> jesse at kci.net <http://www.openlaszlo.org/mailman/listinfo/laszlo-user>
More information about the Laszlo-user
mailing list