I think Henry's suggesting you change

delete_button.del = new LzDelegate( delete_button, "test2");
       to
delete_button.del = new LzDelegate( canvas, "test2");


The first parameter tells the delegate on which object it should run "test2". Obviously lz.button doesn't have one of those...your canvas does.


Cary

Kenneth Miller wrote:
Why does it have to be defined "on" the button, it's defined in the source, which you can view here. Thanks for your time.

http://github.com/xkenneth/buildoutbuilder/tree/master/buildoutbuilder.laszlo/src

buildoutbuilder.lzx is the file you're looking for.

Thanks again!

Regards,
Ken

On Jul 21, 2008, at 3:18 PM, Henry Minsky wrote:

Do you have a "test2" method defined on button? It would seem to me
that you don't, because you're instantiating
it right there, and there is no test2 method defined in the lz button
component class, that I know of..


On Mon, Jul 21, 2008 at 4:06 PM, Kenneth Miller <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:
All,
   Here's the error: ERROR @lz/button.lzx#35: Invalid delegate: button
text=Delete.test2 => «undefined» (must be a Function)
Regards,
Ken
On Jul 21, 2008, at 2:00 PM, Henry Minsky wrote:

You can call a method on another object,  using a delegate, but you'd
have to create the delegate to point to your object

e.g.,

new LzDelegate(yourinstance, "test2")

Your delegate was created to call the test2 method on your button instance.
...



On Mon, Jul 21, 2008 at 2:59 PM, Henry Minsky <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
wrote:

What is the error? Your test2 method is never getting called? Where is

the "test2" method being declared on

the button class?  Don't you need a subclass of button, in order to

define your method on it?


On Mon, Jul 21, 2008 at 2:40 PM, Kenneth Miller <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

I'm trying to create a new button here and attach an event to it, can anyone

tell me what I'm doing wrong?

function create_part() {

 //get the part name

 part_name =

canvas.main_tabs.buildout_editor.buildout_toolbar.toolbar_slider.parts_tab.new_part_field.text

 //add the part to the dom

 buildout_dp.addNode(part_name)

 //add it to the tab slider

 canvas.main_tabs.buildout_editor.buildout_ts.addItem(part_name)

 //wipe out the text field

canvas.main_tabs.buildout_editor.buildout_toolbar.toolbar_slider.parts_tab.new_part_field.text

= ''"

 //create the delete button

 var delete_button = new

lz.button(canvas.main_tabs.buildout_editor.buildout_ts.getItem(part_name))

 delete_button.setAttribute('text','Delete')

 //create the delegate

 if ( typeof delete_button.del == "undefined" ) {

 delete_button.del = new LzDelegate( delete_button, "test2");

 }

 //assign the event

 delete_button.del.register( delete_button, "onclick" );

 }

Regards,

Ken





--

Henry Minsky

Software Architect

[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>




--
Henry Minsky
Software Architect
[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>





--
Henry Minsky
Software Architect
[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>

Reply via email to