Enable/disable Group enables/disables all children
Mark Waddingham
mark at livecode.com
Fri Apr 27 13:04:32 EDT 2018
On 2018-04-27 16:57, Bob Sneidar via use-livecode wrote:
> Darned if you do, darned if you don't. I get it. Still, looking at
> your example, it begs the question, what was the state of the enabled
> property for the individual objects before the parent group was
> disabled? The current situation is exactly what your objection
> describes. :-)
You can't tell what the state of disabled was of a child before the
owning group's disabled property is set - that's the problem.
Imagine we change this without any regard for backwards compatibility to
the preferred (correct!) model. Then when you open your stack, setting
the 'disabled' of a group to 'false' will then *only* affect the
disabled property of the group - not the children. All the children will
remain with disabled 'true' (as it won't be setting the property any
more on children).
This means that everyone would have to go through every card of every
single stack which has groups which are disabled, which contain children
which should be enabled/disabled with the group's enablement and change
those child controls disabled property to false (as they will be true at
present).
I get the feeling that a lot of people have a lot of stacks where the
group enablement behavior is fine (as they do want their child controls
to enable/disable with the group), and so they won't have scripted
anything, so they will find a lot of disabled controls!
Warmest Regards,
Mark.
P.S. The engine change (from memory) is relatively straight-forward I
think - we already have visible as a pattern - so the main issue is
migration forward - which could be a lot of work for large stacks which
might have a mixture of scripted and 'by-engine' enablement/disablement.
--
Mark Waddingham ~ mark at livecode.com ~ http://www.livecode.com/
LiveCode: Everyone can create apps
More information about the use-livecode
mailing list