WindowTiler 2.1b - 6/25/92 by Doug Dyer 100% PD and freely distributable The Complete Funola for the whole family! Folks, thought Id update the old commodity with a version that I never put on aminet. I updated my contact information as well. Ignore the "New" in "What's New" :) Also, REFUSESCREEN works but does not pass on the commodity event to the screen. So if you were using TERM and wanted a key equivalent (say F1) that was being used by windowtiler to do a term specific thing, pressing F1 would not arrange the windows, but term wouldn't know about the F1 press. To work around this, you'll just have to pick your key equivalents well. bye, Doug --------------------------- What's New? I have addressed almost all known problems and finally added virtual screen support. Everything is now "solidified" and I can spend more time playing with a cute GUI for it. New tooltypes since v2.0 are: VISIBLE, VISIBLETOGGLE. In general, everything works better and safer than v2.0. The only known bug that irks me is the fact that you can "zipwindow" the workbench screen as if it is a window. I've tried comparing this and that flags for both the workbench screen and window, but no luck (I can stop the problem if I treat the wbench window AND screen as being illegal for zipping). Its best to use C='s IHELP or FKEY for this. Fixed double-clicking problems (see the history table at the end of this file for details). The "b" in 2.1b is cosmetic (see the history table at the end of this file). A quick note on "EXPLODE". This is not the cute rubber-banding of windows ala macs. It is the enlargement of a window to fill the screen (and come up front) ala turbo-c, windows environments (and others). --------------------------- What is this thing? WindowTiler is a simple commodity for os2.X users that allows you to map certain Windows3.X/TurboC++ type window management to a key combination. NOTE: if it does nothing try (using commodities exchange) disabling any commodities that conflict for the same hotkeys. Although it takes some getting used to, tiling/cascading the windows and zooming one up to work & placing it back is a great way to handle large project. --------------------------- Instructions: Select the WindowTiler icon, and then "information" in the workbench menu. Then, in the list box add or edit the tools listed to conform to keyboard equivalents you want. For instance, to set CASCADE to alt-f10, just type (with no extra spaces, and CAPITALIZATION MATTERS) CASCADE=Alt F10. Keyboard Equivalents (well, not very documented..): Alt (any alt key) RAlt LAlt Shift (any shift key) RShift LShift RCommand LCommand Control Numericpad Rbutton (mouse buttons) Lbutton A,B,... ---------------------------- CUSTOM Tool types available: CASCADE Cascades all resizeable windows. CASCADELEFT Cascades windows with right sides inset. This one also leaves a bit of space on the right side of the screen (I use that to get to my dock window). This one is also easier to use since it gives you access to the front/back gadgets. TILE Tiles windows VTILE Lists windows vertically HTILE Lists windows horizontally MINIMIZE Shrinks windows MAXIMIZE Enlarges windows REFUSEWINDOW Use cli arguments to omit windows from windowtiler such as REFUSE=~(#?shell#?) would let windowtiler only affect windows with a title with "shell" in it. Use this for windows such as "Clock", and others that you wish refused. For example, REFUSEWINDOW=(Workbench|Clock|#?shell) would not move the workbench, clock windows or any window ending in "shell". DCLICK This is a double-click feature with three options: "EXPLODE" explodes the window up to front. Pressing the zoom gadget places it back where it came from (ie: tile position). Activated by double-clicking on window TITLE BAR. "TOFRONT" brings window to front. (click anywhere) "BOTH" Clicking on the title bar performs a ZOOM and anywhere else, a FRONT. "NONE" anything else will disable this feature. NOTE: clicking on the zoom gadget in the window will place it back into its tiled or cascaded place. EXPLODE Same as DCLICK's EXPLODE, but allows for a keyboard equivalent. ZOOMTOGGLE Same as pressing the window ZOOM gadget. TOFRONT Same as DCLICK's TOFRONT, but allows for a keyboard equivalent. TOBACK Keyboard equivalent for sending a window to the very back. REFUSESCREEN Another DOS pattern string, this one allows windowtiler to decide whether it should do anything for a given screen. For instance, to have it do nothing when you are using prowrite, you might try REFUSESCREEN=ProW#? NOHEIGHT For high resolution screens, it is annoying for cascading to give huge windows. This tooltype will let windowtiler only change the height of the window when needed (TRUE or FALSE) NOWIDTH Same as NOHEIGHT except for window width (TRUE or FALSE) SHOWTITLE All arranged windows will display the screen title when this is TRUE (even zooming windows). STEPDOWN Now you can control the distance windows are "stepped" for cascading. This is for the downward step. STEPLEFT Same as above except stepping left. CASCADEHEIGHT Fix the height of windows when they are cascaded. NOHEIGHT overrides this. CASCADEWIDTH Fix the width of windows when they are cascaded. NOWIDTH overrides this. VISIBLE This is for VIRTUAL screens. If VISIBLE is set to TRUE or YES, all arranged screens do so within the current visible screen area. Otherwise, the virtual screen is used. VISIBLETOGGLE This is for VIRTUAL screens. You can toggle the default option you selected with VISIBLE with a keyboard equivalent. ---------------------------- Furthermore... If you place this tool in your wbstartup drawer, don't forget the DONOTWAIT (it should already be there). I find the most useful setup IHELP's cycle and zoom on f1, f2 and tile, cascadeleft on f3,f4 along with DCLICK=BOTH (actually, set DCLICK to EXPLODE and use C='s click-to-front utility, its faster). If you are a keyboard nut, get WindowShuffle by Stefan Sticht. Nice to step through cascaded windows :) The REFUSESCREEN is set to ~(#?Workbench#?), and CASCADEHEIGHT, CASCADELEFT are set to 200 and 140 respectively (NOHEIGHT and NOWIDTH are set to FALSE). Any bugs or suggestions (this is an "amiga learning" project for me) ... Thanks all who have suggested improvements or reported problems! Special thanks to Franz Schwarz for the great input! Enjoy! Doug Dyer dyer@alx.sticomet.com 5124 Observation Way Alexandria, VA 22312 USA ----------------------- Version History: 1.0 1/17/92 Inception. 1.1 1/19/92 Added CASCADELEFT tooltype. Enhanced cascading to ignore non-sizeable windows (so things like toolmanager dock are left alone). Improved depth arranging of cascading (now using MoveWindowInFrontOf). 1.2 1/25/92 Added REFUSE tooltype. Added DCLICK tooltype. Enhanced performance. Added ZOOMIT, FRONTIT tooltypes. 1.2.1 1/29/92 Fixed a bug: ZOOM did the same as BOTH. 1.3 3/21/92 Fixed a bug: seems htile and vtile were.. ah.. switched. Added REFUSESCREEN, NOHEIGHT, NOWIDTH, STEPLEFT, STEPDOWN, SHOWTITLE tooltypes. 2.0 5/30/92 Better use of LockIBases... (oops). Cleaner code and internal organization. I changed some tooltype names to make more sense. Added TOBACK, ZOOMTOGGLE, CASCADEHEIGHT and CASCADEWIDTH. Constructed a GUI for configuring it, but haven't hooked it in yet... 2.1 6/17/92 Better use of everything. Virtual screen support via new tool types VISIBLE, VISIBLETOGGLE. Double clicking on front- back gadget will not explode windows. Double clicking on drawer will not explode new window if title happens to now be under the pointer. GUI still not linked in yet, but the commodity is now "mature" and highly useable by a wide variety of tastes. 2.1.b 6/25/92 Purely cosmetic (SHOWTITLE arrangements look better).