Hi Neil,

I have used `change-children` on a Win32 GUI and the widgets that are 
switched in and out keep all their state, including the scroll position, 
unless, of course, if you change this state from the program.    This 
means, for example, that if you have a list-box% and you remove it from a 
panel than later add it back in, the list-box% will keep its scroll 
position.

As for whether `change-children` it is a good way to switch between 
widgets, I am not aware of any other option...

Alex.

On Wednesday, August 8, 2018 at 3:43:47 AM UTC+8, Neil Van Dyke wrote:
>
> Two questions, as I'm trying to extend the Racket `gui` widgets just a 
> little, for small touchscreens, while remaining cross-platform and 
> desktop friendly: 
>
> 1. For all the platforms supported by Racket `gui` widgets, is 
> `change-children` a good way to frequently switch among subtrees of 
> widgets?  (Like currently for `tab-panel%`, but also for a 
> smartphone-like app's dynamic stack of UI pages.) 
>
> 2. If `change-children` is a good way, is any noteworthy state of a 
> widget tree *not* preserved between hiding and unhiding this way, 
> assuming that the parent container widget geometry hasn't changed in the 
> meantime?  (Offhand, I'm especially interested in whether the current 
> scroll position of panels is retained between hiding and unhiding, by 
> default, such as when user is going through a big hierarchy of 
> Android-style scrolling lists of settings, and not wanting to lose their 
> scrolling place when they back up to the big top level.  You could also 
> see such page stacks be used for things like what might be modal popup 
> windows in a traditional desktop GUI.) 
>
> (Reason for asking: I can't tell from the documentation, and this seems 
> like a time to ask.  Although I can test&tweak behavior with GTK2 and 
> GTK3 on GNU/Linux handhelds and desktops, I'd prefer to use an an 
> approach that should also work well on all the other Racket `gui` 
> platforms (current and future), without expending time&money right now 
> to test&tweak on all the current ones. One idea for this handhelds 
> unfunded side project (which might not go anywhere) is that 
> handheld-oriented apps people make for Racket-on-Linux might also turn 
> out to work well for whatever desktop/laptop platform Racketeers use.  
> For example, a straightforward set of traditional handheld 
> email/IRC/monitoring/etc. apps, but in tiled windows on your desktop 
> side monitor or laptop workspace, might work pretty well.  Well enough 
> to inspire more such cross-handheld/desktop apps to be written, whatever 
> platform the initial developer targets initially.) 
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to