WICON version 2.0 Steven Sweeting 28-August-1988 Special MegaDisc release [Ed. Note: This program is great, I find I use it all the time. If you have a CLI window going, or any other window taking up space on the screen, you can shrink it down to a small "icon" to put it out of the way without removing it. Then when you need it again, get it back with a single click! I've been running it for weeks, and it has never crashed, and has saved me a lot of time closing and opening windows. Read through the entire document to find out the little extras you can use as well - and it is a good command to put in your Startup-Sequence, as in > run c:wicon . To try it now, click this PRINTEXT window to the back using the back/front gadgets top right,double-click the WICON icon, then click once on the Printext window again to make it active, then click once with the Right mouse button - good, eh? Just don't move the mouse as you click ] NAME wicon - Window Iconifier RUNITQUICK Just type in wicon at the CLI prompt, or double click the icon to start. To quit, double click the icon again, or re-run from the CLI. The default settings for Wicon are those most people use. Make a window the active window by clicking in it with the Left Mouse Button. Now, without moving the mouse, give the Right Mouse Button a quick tap. The Window will disappear and in its place a smaller window. Now hit the Right Mouse Button again and the original window comes back up. Wicon steals that quick Right Mouse Button click. So to for example get a menu on a window, hold the button down longer until it appears, or move the mouse as you press the button. If you would like to modify the options read below: SYNOPSIS wicon [-[!]a] [-b [/|*]boxes] [-c [+|-]chars] [-[!]d] [-[!]f] [-[!]i] [-l lines ][-p [+|-]priority] [-[!]q] [-[!]r] [-[!]s] [-[!]t] [-[!]w] [-W console] [-[!]&] wicon ? ; list arguments and their defaults wicon ; close an invocation of wicon DESCRIPTION Wicon operates on only one screen at a time. The WorkBench screen is chosen unless the -f (first screen) argument is set. A Window can be `iconified', when it is `active' by hitting it with the RMB (Right Mouse Button). The specific method depends on the code, at the moment, you must not move the mouse between pressing and releasing the RMB. This must also be done within DoubleClickTime(3), ie set from Preferences. Some windows are by exempt from this iconification. Workbench windows are those that are controlled a 'loadwb' program. This was done because when a window's icon is double-clicked, that window (if already open) is brought to the front. However to iconify these windows would be an advantage to those with floppys and full directorys. Just use "WBWINDOWS=TRUE" or "-w" to be able to iconify them [Ed: this is the way it's set up on this disk - but if you don't want Workbench windows to iconify, change the Icon INFO to WBWINDOWS=FALSE]. After much experimenting, I found that I liked to iconify windows with a single Right Mouse Button (RMB) click. This causes problems on programs that do things on a RMB event : 1> To get a menu 2> To freeze a display 3> To choose something on the display The solution was, to not give the process (or active window) the RMB down and up events if they were signally Wicon to do its bit. For (1) and (2) this was Ok, because you just move the mouse a little and you don't think anythings amiss. Unfortunately for things like AMIGAP and DME, where it is nice to use short sharp clicks, this was a pain. So if RMBTRAP=FALSE (which is the default) windows that expect RMB events, (ie. Window->IDCMPFlags | RMBTRAP), can't be iconified. To be able to iconfiy them, say "RMBTRAP=TRUE" or "-r" Note: During a RMB click, the event will not reach intuition unless it is held down for DoubleClickTime(3), or the mouse is moved!. Hence, to use menus quickly move the mouse as you click the RMB. Wicon currently is installed with MacWin, which does `rubber- banding' on OpenWindow & CloseWindow (as well as Iconification). ie. Does it for all Windows in the system. To turn it off, set BOXES=0 in the Wicon.info or use -b0 on the command line. To use it on only the `Wicon' screen, turn the ALLSCREENS flag off "-!a" or "ALLSCREENS=FALSE". All of the command line options can be used from WorkBench, ie in the wicon.info, just make them ToolTypes. Also the Manx one WINDOW=CON:X/Y/W/H/name can be used as well. (for error msgs). You can also use the standard ones like `BOXES=30', ie instead of `-B30'. The Command line will accept things like: wicon -b 30 -p +5 ; \ wicon -b30 -p+5 ; > 30 boxes, increase priority by 5 wicon BoxEs=30 PRI=+5 ; / wicon -b /2 ; only use 1/2 the default boxes wicon -b0x11 ; 17 (in hex) boxes wicon -b 013 ; 11 (in octal) boxes wicon BOXES=\13 ; 11 (in octal) boxes The `-' options are all case sensitive. The string ones, e.g. 'BoXeS' aren't. -& | -!& EXECUTE=boolean If true, runs an invocation of itself. This would be used from s:startup-sequence, ie "wicon -&" doesn't return until its child is running, thus avoiding disk thrashing with the subsequent script command. It does the same thing as `runback -? wicon'. Argument checking is carried out by the parent, so the child should be Ok, but the parent exits after 10 seconds if it can't find the child -a | -!a ALLSCREENS=boolean Turns off `MacWindows' for all but the Wicon Screen. This is FALSE (-!a) by default. -b boxes BOXES=short The number of rubber-bands: each one takes one cycle, or screen update. Default is 15, ie 15/50ths of a second for PAL machines, 15/60ths for NTSC. When boxes=0, rubber banding is turned off. -c chars CHARSACROSS=short The number of characters displayed in an iconfied window's title. Default is 12. This excludes depth gadgets. (ie when DEPTHGADGETS=TRUE the window is longer) -d | -!d DEPTHGADGETS=boolean Whether the wicons (Windows impersonating icons) have depth arrangement gadgets. (They take up about 50 pixels). Default is true (-d). When STICKY=TRUE, then DEPTHGADGETS=FALSE, otherwise the wicons would dissappear. -f | -!f FIRSTSCREEN=boolean Rather than use WorkBench as your Wicon Screen, use the FirstScreen. Just move the screen you want to the front. This is FALSE by default (-!f). -i | -!i ICONIFY=boolean Whether to do the Iconification stuff at all, ie if you just want the rubber-band window opening & closing. Default is on (-i)! That means say -!i to turn it off. -l number LINES=short The number of lines of icons to stack down the bottom. (My and Tim's preferred place). Default is 1, which builds one line down the bottom, then starts building up. If Lines=0, the windows' wicons are placed where they are (parent X,Y). -p priority PRIORITY=short Changes this tasks priority. I can't imagine why this would make much difference, (and it doesn't). The default is (-p+0), which makes no change. -q | -!q QUIET=boolean If true, does not display the Copyright message. The default is on (-q). -r | -!r RMBTRAP=boolean If true, then we also iconify those windows that are receiving RMB (Right Mouse Button) events (through RMBTRAP). Default is false (-!r). -s | -!s STICKY=booelan If true, iconifed windows stick to the WorkBench window, ie behind application windows, just like a real Icon! Default is false (-!s). Depth gadgets are off by default] in this mode so that you can't inadvertently push your icon behind the WorkBench (Backdrop) Window! -t | -!t TESTING=boolean Testing, just Opens and Closes a window using MacWin. (ie Installs/Deinstalls OpenWindow & CloseWindow). Default is false (-!t) -W string WINDOW=string Based on the Manx implementation (but fully independent) a window is opened if a ToolType parsing error occurs. The default window is "CON:0/0/640/100/Error Window". Note the CAPITAL `W'. This doesn't work from CLI anyway. -w | -!w WBWINDOWS=boolean When true, WorkBench Windows ie those drawers etc that appear from double clicking icons, are also available to be iconified. Default is false (-!w). To get a list of defaults, just type "wicon ?" or "wicon \?" from shell or csh. BUGS As far as I know there is nothing wrong with wicon, however there may be some programs out there that don't like it. Symptoms are: WICONs inherit their Parent Window Titles and ScreenTitles. If these change, then Wicon doesn't know. This has never happened. Other programs that do not behave with respect to the Operating System, such as MWB, may crash when you try and exit them. Wicon will not exit if damaged in this way. i.e. it won't crash your system. AUTHOR Steven Sweeting 28-Aug-88 ACSNET: steven@kylie.oz Thanks to Andrew Smith for being a pain w.r.t. the WIconification method, and Tim Edgoose for suggesting LINES. DISCLAIMER This program is NOT in the public domain. Distribution for profit (other than by non-profit organisaitons) may not take place without consent from the Author. This notice must be included whenever this program is propagated. No guarantees expressed or implied. Portions Copyright (c) 1987 Davide P. Cervone (Input Handler) REVISION 2.0 Last Modified 28-Aug-88 (c) 1988 XXXXXXXXXXXXXXXXXXXXXXXXXXX END OF WICON.DOC XXXXXXXXXXXXXXXXXXXXXXXXXXX