Graal Forums  

Go Back   Graal Forums > Graal V6 forums > Feature request
FAQ Members List Calendar Today's Posts

 
 
Thread Tools Search this Thread Rate Thread Display Modes
Prev Previous Post   Next Post Next
  #1  
Old 04-13-2008, 10:35 AM
zokemon zokemon is offline
That one guy...
zokemon's Avatar
Join Date: Mar 2001
Location: Sonoma County, California
Posts: 2,925
zokemon is a jewel in the roughzokemon is a jewel in the rough
Send a message via ICQ to zokemon Send a message via AIM to zokemon Send a message via MSN to zokemon Send a message via Yahoo to zokemon
External Windows Features

Here's a few features we should have added for the new client with external windows, if some aren't already added.

Displaying a Window on the Taskbar
It would be cool to have a showontaskbar variable for GuiWindowCtrl's that would display a taskbar button on Windows operating systems for GuiWindowCtrl's that have isexternal set. Double-clicking this button would call the function that is called when you click the minimize button as well as right clicking the button would show the usual right-click elements that you see when you right click on the taskbar button of another window for any given application. It would also show the equivalent for an open window on MacOS and Linux.

Displaying a Window in the System Tray
To go with the above item, a showontray variable that would the icon of the 16x16 TDrawingPanel object in an icon variable would also be nice. This icon could also be used for the taskbar buttons above.

Window Stack Priority
Having an alwaysontop variable would be very useful as well. This would display all external windows with that as true above any other Graal window regerdless of what has focus. Multiple windows with this as true would simply be given priority as normal in the window stack's position.

Making the Escape Window Scripted
The window that appears when you hit the escape key when the client is open should be changed to an external script GuiWindowCtrl.

Moving a Window
GuiWindowCtrl's should have an externalx and an externaly variable that would modify the position of the window's container when isexternal is true. They would would be initialized to (desktop's mousex - (gui width)/2) and (desktop's mousey - (gui height)/2) at the end of the new block when the gui is created if the two were not initialized already.

Desktop Variables
To go with the above one, it would help a lot then to be able to read the desktop's width and height, the desktop's mousex and mousey as well as the position and extent of the main Graal window relative to the desktop.

Allow Modifying of GUIContainer's Extent
A final thing to allow would be so that when one modifies GUIContainer.width and GUIContainer.height, it causes the main Graal window to reflect those changes and resize accordingly.

What This Would Allow
Having all of the above would allow a number of useful feature to be added such as:
  • The positioning and tiling of all of Graal's windows for scripted in-game editors, in-game windows such as IRC channels, radio station displays, etc.
  • The F2 window could be given alwaysontop priority so that it would not be placed under the client so that you could debug, read rpg messages, etc. This would also be useful for other similar scripted windows.
  • Docking of the Playerlist on the side of the graal window could be later scripted with fair ease if the Graal window's extent was modifiable and if you could read various desktop/graal container variables.
  • The escape key could be bound to do other things besides closing the client such as displaying an options screen for games on the Skills Games server.
  • The client rc would seem almost exactly like and operate almost exactly like the original external RC if you could display a button on the taskbar and an icon on the system tray
  • A bunch of other fun features that I could not think of. I'll probably post more reasons later.

Tell us all what you decide to add and when you have added it/them, Stefan!

Note: Funny thing is, I posted this on a Mac.
__________________
Do it with a DON!
Reply With Quote
 


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 07:19 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Copyright (C) 1998-2019 Toonslab All Rights Reserved.