[Laszlo-dev] Construct methods and attribute predicates [Was: Didn't you report a bug about _instanceAttrs and states?]

Henry Minsky hminsky at laszlosystems.com
Sun Jan 11 13:22:39 PST 2009


Oh yes, that does seem like it would be much cleaner if we get it working...



On Sun, Jan 11, 2009 at 4:15 PM, P T Withington <ptw at pobox.com> wrote:
> I think André's suggestion, which I filed as LPP-7613 is a simpler approach
> than what we were trying to do in this thread.
>
> On 2009-01-11, at 14:35EST, Henry Minsky wrote:
>
>>>> There are likely even more aspects which make clear that setAttribute
>>>> isn't a good candidate for such stuff.
>>>
>>> Yes, you are exactly right here.  So, there needs to be some other
>>> interface
>>> for removing a constraint on an attribute.
>>>
>>> It sounds like __LZhasConstraint (or something like it) should be made
>>> public.  Perhaps it should return the constraint method name when an
>>> attribute is constrained, so you can use removeConstraintMethod to remove
>>> the constraint if you want to override it?
>>
>> I think that having an API to tell if a constraint exists might be the
>> best solution for now.
>> Question, what happens if someone has two or more different
>> constraints which set the same attribute? I guess that would be an app
>> design bug, no? Or at least a bad idea?
>>
>> If you can manually remove find and remove a constraint, and can tell
>> if the user explicitly supplied an attribute value, then your class
>> can decide whether to use the default constraint or override it with a
>> constant value.
>>
>> I guess the only way to tell if an arg is supplied explicitly, is to
>> use the idiom you had where the construct() method looks for the
>> attribute name in the args list, e.g.,  args['x']?
>>
>>
>>
>> Henry Minsky
>> Software Architect
>> hminsky at laszlosystems.com
>
>



-- 
Henry Minsky
Software Architect
hminsky at laszlosystems.com



More information about the Laszlo-dev mailing list