Great discussion!

> On Jun 14, 2017, at 1:20 AM, Mark Waddingham via use-livecode 
> <> wrote:
> On 2017-06-14 02:18, Monte Goulding via use-livecode wrote:
>> I think this is one of those cases where the default behaviour was a
>> bad idea. Or perhaps was implemented before groups were used for much
>> other than backgrounds. Other objects we need to set to the formatted
>> width/height so why are groups special cased. Anyway, I would keep it
>> simple and use `Clips to rect` so at least it’s easy to relate to the
>> dictionary entry/property name.
> Notionally 'backgrounds' don't really need an extent - they should be card 
> sized - the difference being that controls are shared amongst several cards.
> Of course MetaCard generalized 'the background' to multiple backgrounds and 
> then groups (which aren't backgrounds) - however, as this was done 
> 'evolutionary', we've ended up with several properties for controlling them 
> which interact not-all-that-well.
> If you step back and look at the types of 'group' thing which actually get 
> used, then there are probably only three main ones:
>   1) Card sized layers which are not shared amongst cards (foreground groups, 
> if you like)
>   2) Card sized layers which are shared amongst cards (background groups, if 
> you like)
>   3) Groups with an explicit rect which are not shared amongst cards (control 
> groups, if you like)
> (Variants of these where the content rect is distinct from the visible rect 
> are also plausible - i.e. scrolling views).
> Currently (1) and (2) are catered for because groups (by default) resize to 
> the size of their controls; 'clipsToRect' caters for (3).
> I'd perhaps suggest that 'Clips to rect' or similar is a suitable name for 
> the property. Why? Because that is precisely what it does - all children are 
> clipped to the rect of the group, rather than the group's rect being resized 
> to accomodate them so they are not clipped.

As one who teaches newbies LiveCode, I am a proponent of property labels that 
are both succinct and descriptive, while not straying too far from the actual 
property name. There are obvious exceptions (destroyStack, anyone?). But in 
this case, maybe something like:

Clip child controls to rect

Strikes a good balance between similarity to the property name and giving a 
better idea of what the property does.


Devin Asay
Office of Digital Humanities
Brigham Young University

use-livecode mailing list
Please visit this url to subscribe, unsubscribe and manage your subscription 

Reply via email to