Data slots in parents not cloning?
Jeremy Cowgar
jeremy at cowgar.com
Tue Aug 25 16:40:42 UTC 2009
Here are just the important snippets of code. The problem is that all my
buttons contain the same "handle"...
//===========================================
// control.li
Section Header
+ name := CONTROL;
Section Private
+ handle:POINTER;
- set_handle h:POINTER <-
(
handle := h;
);
//===========================================
// button.li
Section Header
+ name := BUTTON;
Section Inherit
+ parent:CONTROL := CONTROL;
Section Public
- make title:ABSTRACT_STRING <-
( + result:BUTTON;
+ h:POINTER;
+ n_title:NATIVE_ARRAY(CHARACTER);
n_title := title.to_external;
h := `IupButton(@n_title)`:POINTER;
result := BUTTON.clone;
result.set_handle h;
result
);
//===========================================
// example.li
Section Header
+ name := EXAMPLE;
Section Public
- main <-
( + b1, b2:BUTTON;
b1 := BUTTON.make "Hello";
b1.handle.println;
b2 := BUTTON.make "Goodbye";
b2.handle.println;
"Buttons after all have been created:".println;
b1.handle.println;
b2.handle.println;
);
//===========================================
The output is something like:
13990D8
14209A3
Buttons after all have been created:
14209A3
14209A3
Any thoughts on this?
--
Jeremy Cowgar <jeremy at cowgar.com>
More information about the Lisaac-devel
mailing list