Page 1 of 1

Window manipulations

Posted: Mon Jan 15, 2024 1:21 pm
by mrupp
Hi there

I'm implementing an Arexx port for my RapaGUI based "SonosController" and am trying to follow these guidelines here:
https://wiki.amigaos.net/wiki/UI_Style_ ... x_Commands

Just to make sure that I'm not missing something, could you please confirm that the following analysis is correct:

MOVEWINDOW --> not possbile, Window.Left and .Top are readonly
SIZEWINDOW --> not possbile, window.Width and .Height are readonly
CHANGEWINDOW --> not possbile, same reasons
WINDOWTOFRONT --> not possible (or is it?)
WINDOWTOBACK --> not possible (or is it?)
ACTIVATEWINDOW --> possible: moai.Set("mainWindow", "activate", True)
ZOOMWINDOW --> not possible (or is it?)
UNZOOMWINDOWS --> not possible (or is it?)

Also there are no means to iconify or uniconify a window, correct?

Thanks for your help,
Michael

Re: Window manipulations

Posted: Sat Jan 20, 2024 11:18 pm
by airsoftsoftwair
mrupp wrote: Mon Jan 15, 2024 1:21 pm MOVEWINDOW --> not possbile, Window.Left and .Top are readonly
Yes, but it's on my to do list, see here: viewtopic.php?t=3742
mrupp wrote: Mon Jan 15, 2024 1:21 pm SIZEWINDOW --> not possbile, window.Width and .Height are readonly
CHANGEWINDOW --> not possbile, same reasons
WINDOWTOFRONT --> not possible (or is it?)
WINDOWTOBACK --> not possible (or is it?)
ZOOMWINDOW --> not possible (or is it?)
UNZOOMWINDOWS --> not possible (or is it?)

Also there are no means to iconify or uniconify a window, correct?
Yes, looks like those aren't possible. Feel free to file feature requests :)

Re: Window manipulations

Posted: Sun Jan 21, 2024 12:50 pm
by mrupp
Yes, looks like those aren't possible. Feel free to file feature requests :)
Yes, please consider this a feature request to allow the following window manipulations for some next version of RapaGUI:

- make Window.Left, .Top, .Width and .Height settable
- method to bring a window to the front
- method to send a window to the back
- method to zoom a window (like clicking a window's zoom gadget)
- method to unzoom a window (like clicking a window's zoom gadget once more)
- method to get a window's zoom state (not sure if there exists something like this)
- method to iconify a window
- method to uniconify a window
- method to get a window's iconification state

Sidenote: most of these methods are needed to create proper default functions when implementing an ARexx port according to these guidelines:
https://wiki.amigaos.net/wiki/UI_Style_ ... x_Commands

Cheers,
Michael

Re: Window manipulations

Posted: Sun Jan 28, 2024 12:51 pm
by airsoftsoftwair
Ok, I'll see what I can do.

Re: Window manipulations

Posted: Tue Aug 13, 2024 9:54 pm
by airsoftsoftwair
Is that enough?

Code: Select all

- New: Added Window.ToFront() and Window.ToBack() methods to move a window to the front or to the back of
  the window stack
- New [Amiga]: Added Window.Zoom [SG] attribute; this can be used to programmatically (un)zoom a window 
  and you can also query the current zoom state; additionally, there are the new attributes Window.AltLeft,
  Window.AltTop, Window.AltWidth, and Window.AltHeight (applicability for them all is IG) that allow you
  to set the alternate dimensions and position for the window when it is in zoomed state 
- New: Added Window.Move [N] attribute; you can use this attribute to get notified whenever the user moves
  a window
- New: Added Window.Minimize [SGN] attribute; this allows you to programmatically minimize (iconify) your
  window or restore it from minimized state 
- New [Windows/macOS/Linux]: Added Window.Maximize [SGN] attribute; this allows you to programmatically
  (de)maximize a window, query the maximize state and get notified when a window is maximized
- New: The Window.Left, Window.Top, Window.Width, and Window.Height attributes can now also be set so the
  applicability of them is ISG now; note that if you set those attributes, you must always specify a
  numeric value; the special values like "Centered" are only supported at initialization time