Classname isn't a private variable - anyone could find it by exploring
in the debugger. Can we deprecate before we remove it? Also, having a
classname on the instance sounds useful to me...
-Max
P T Withington wrote:
Ah. classname is no longer in the instance. It needs to be replaced
with constructor.classname. I did this in the LFC, but I guess it did
not occur to me that this was used externally to the LFC. What exactly
is grid trying to do? (That is, perhaps there is a better way than
using classname.)
I think it is an error that there is a classname on the instance. I'll
remove that.
On 2006-10-24, at 17:22 EDT, Philip Romanik wrote:
Hi Tucker,
I tracked down a grid problem involving the classname variable in
LzNode. In legals, classname is always 'Object' (see Class.lzs). In
trunk classname is the correct classname. Here's some code that shows
classname is wrong. At first I thought this was an initialization
issue, but the classname never changes.
Phil
<canvas>
<view name="view">
<method name="init">
super.init();
Debug.write("view::init", this.classname);
</method>
<method event="oninit">
Debug.write("view::oninit", this.classname);
</method>
</view>
<class name="testclass" extends="text">
<method name="init">
super.init();
Debug.write("testclass::init", this.classname);
</method>
<view name="nested_view">
<method name="init">
super.init();
Debug.write("nested_view::init", this.classname);
</method>
<method event="oninit">
Debug.write("nested_view::oninit called", this.classname);
</method>
</view>
</class>
<testclass/>
</canvas>