New Function: WindowToBack()

Feature requests for future versions of Hollywood can be voiced here
Post Reply
PEB
Posts: 567
Joined: Sun Feb 21, 2010 1:28 am

New Function: WindowToBack()

Post by PEB »

Could a function be added to send a Hollywood window to the back---placing it behind other open windows?

A related request:
Would it be possible to make a Hollywood display remain in the back, so that no other window can be placed behind it?
User avatar
airsoftsoftwair
Posts: 5433
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: New Function: WindowToBack()

Post by airsoftsoftwair »

Putting a window to the back of the z-order is possible but making it remain there isn't, at least not in a platform-independent, clean way. AmigaOS has the concept of backdrop windows but on other operating systems such things aren't really supported.
PEB
Posts: 567
Joined: Sun Feb 21, 2010 1:28 am

Re: New Function: WindowToBack()

Post by PEB »

Got it.
Thanks!
User avatar
jPV
Posts: 603
Joined: Sat Mar 26, 2016 10:44 am
Location: RNO
Contact:

Re: New Function: WindowToBack()

Post by jPV »

I have somehow related issue myself, you can bring a screen to front with ShowScreen from the Amiga support library, but can you send screen to back in any way? If not, could that be added? :)

I created a custom screen depth gadget for my fullscreen borderless program, which doesn't have the standard depth gadget, and I didn't figure a way to send it back. I now bring the desktop screen to front to "simulate" the effect, but it doesn't stack the screens in the same order it would go with the system features. Now the Hollywood screen is left next to the front screen and not put to the last as it would go with the system screen gadget or command-m etc.
User avatar
airsoftsoftwair
Posts: 5433
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: New Function: WindowToBack()

Post by airsoftsoftwair »

Yes, should be possible to add this to the AmigaOS support library.
User avatar
airsoftsoftwair
Posts: 5433
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: New Function: WindowToBack()

Post by airsoftsoftwair »

Code: Select all

- New [Amiga]: Added HideScreen() command which sends a screen to the back of the display; the
  optional argument is the name of a pubscreen; if omitted, the front-most screen is sent to the
  back which is typically what you want
User avatar
jPV
Posts: 603
Joined: Sat Mar 26, 2016 10:44 am
Location: RNO
Contact:

Re: New Function: WindowToBack()

Post by jPV »

airsoftsoftwair wrote:Putting a window to the back of the z-order is possible but making it remain there isn't, at least not in a platform-independent, clean way. AmigaOS has the concept of backdrop windows but on other operating systems such things aren't really supported.
But it still would be really nice to have on Amiga platforms, for example, I would really love to have it for my widgets program ;) There are some other platform specific features already, so maybe this one too? :)

BTW. is the a way to check which screen is front on Amiga? I can check on which screen my program is running with #ATTRPUBSCREEN, but can I check is that screen on front or not? GetPubScreens() seem to return the order they were created? But not the order they're currently stacked...
User avatar
airsoftsoftwair
Posts: 5433
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: New Function: WindowToBack()

Post by airsoftsoftwair »

It should be possible to add this quite easily. I'll see if I can come up with something.
User avatar
airsoftsoftwair
Posts: 5433
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: New Function: WindowToBack()

Post by airsoftsoftwair »

Code: Select all

- New [Amiga]: HideDisplay() accepts a new optional argument now; if this argument is set to TRUE, the
  display will be hidden by moving it behind all other windows, i.e. to the bottom of the window stack
- New [Amiga]: Added GetFrontScreen() command; this will return the name of the public screen that is
  currently up front or an empty string in case a non-public screen is currently the frontmost screen;
  note that because of the multitasking environment screens managed by other programs can go away at
  any time so there is no guarantee that the screen is still there (or front) when GetFrontScreen()
  returns
Post Reply