home *** CD-ROM | disk | FTP | other *** search
- ***************************************************************************
-
- WizKey
-
- Copyright 1992 by Jörg von Frantzius
-
- ***************************************************************************
-
- WizKey is SHAREWARE, see end of this document for details.
-
- ***************************************************************************
-
- AGREEMENT: By using WizKey you agree that the author will not be
- responsible for any damages resulting from malfunction or wrong
- documentation of WizKey.
-
-
- What is WizKey?
- ---------------
-
- WizKey is just another commodity, intended to speed up working with windows
- and screens. This is accomplished by letting the user manipulate that stuff
- via the keyboard instead of having to:
- 1. grab your mouse (i.e. get your fingers off the keyboard...)
- 2. look for gadgets
- 3. aim at these gadgets and click
- 4. search for windows in huge window-piles etc.
-
- Anything you can do with system gadgets becomes accessible via keyboard
- using WizKey, plus some additional comfort (it's a commodity!).
- A windowlist pops up on hotkey invocation, showing a list of all windows
- available on the active screen and letting you pick a window with the mouse
- or the keyboard (available on public screens only).
- The hotkey definitions are free configurable (using any text editor),
- allowing you to extend WizKey's functionality to your special needs in
- combination with its complete AREXX port. Any Arexx-script may be mapped
- to any key combination using normal commodities conventions (those
- provided by commodities.library).
- You may for example map a script to the hotkey "lcommand e", which will pop
- up your editor's window and screen and activate it, no matter on which
- screen you have been working on.
-
-
- Installation
- ------------
-
- As it is a commodity, WizKey needs at least OS 2.0.
- Workbench: place WizKey into your Wbstartup drawer to start WizKey with
- every boot-up, or double-click on it everytime you want to use it.
- If you have installed WizKey in your WBstartup-drawer, I suggest you
- install its Preference file in your environment, so that WizKey will
- find it on boot-up:
- Double-click on "InstallPrefs" to copy WizKey's preference file to
- "env:WizKey/WizKey.prefs"
- and
- "envarc:WizKey/WizKey.prefs"
- The preference file contains some hotkey definitions that can't be used
- if WizKey can't find its preference file.
-
- Shell: put something like "run >NIL: WizKey" into your user-startup script,
- if you really don't like the wbstartup drawer.
- See "The preference file" for some locations where WizKey can find its
- preference file.
- I'm not sure how much stack exactly WizKey needs, but 4096 is definitely
- not enough. I suggest about 10000 bytes, if you encounter problems (Wizkey
- should report that) raise the stack.
-
-
- The preference file + Arexx Port
- --------------------------------
-
- WizKey's Arexx host port is named "WizKey" (case sensitive).
- WizKey tries to locate a preference file following the rules given in the
- user interface style guide, or at least my interpretation of these. Using
- tooltypes or commandline parameters you may specify a certain preference
- file to be used by WizKey, or a directory containing the file
- "WizKey.prefs".
-
- Tooltype example: "SETTINGS=Work:stuff/WizKey.prefs"
- commandline example: "run WizKey settings=Work:stuff/WizKey.prefs"
-
- If no preference file is specified, WizKey will look for it in its program
- directory, if it can't be found there it will look for
- "ENV:WizKey/WizKey.prefs" in the last place. If no preference file at all
- could be found, WizKey uses its built-in defaults.
-
- The preference file is a plain ascii file editable with any ascii-editor.
- It consists of hotkey-definitions using the template:
-
- commandName = hokey definition
- e.g.: WindowList = lcommand help
-
- The example given will open the windowlist by pressing the keys left amiga +
- help key (which is the built-in default for this command, btw).
- Hotkey definitions using plain command names like the example above will
- override WizKey's built-in hotkey defaults. Anything else WizKey does not
- "know" will be considered being some kind of arexx script, i.e. string file
- or physical file.
- If a line does not contain a "=" or no valid Input Description String, it
- will be completely ignored.
-
- Small Arexx-Scripts may be put into the preference file using so-called
- string files, e.g.:
-
- "ActivateWindow 'Shell'; WinToFront; ScrToFront" = lcommand s
-
- Pressing left amiga+"s", this example will activate the first window
- containing the string "Shell", pop it to front and pop its screen to front.
- Note that in string files you do not need to say "Address 'WizKey'" to have
- access to WizKey's arexx-commands, since these string files will be
- executed from within Wizkey. String files are always surrounded by
- quotemarks.
- As well a filename may be specified, which WizKey will try to execute as an
- Arexx-script., e.g:
-
- rexx:doSomeThing.wiz = lalt s
-
- WizKey will try to execute the file "rexx:doSomeThing.wiz" as an
- Arexx-Script. Filenames do not need to be surrounded by quotemarks.
-
- WizKey's built-in hotkey defaults use some combinations of keys that are
- not accessible through input description strings, e.g. WinToFront's hotkey
- would be something like "lcommand lshift", which is not a valid input
- description string. I'm sorry about that, but commodities.library does not
- support that (yet?); if somebody needs to define hotkeys like that himself,
- I might add something non-standard to accomplish that.
-
-
- WizKey's commands in detail
- ---------------------------
-
- Following is a list of WizKey's functions, including their arexx command
- names and default hotkeys.
-
-
- NAME: Quit, lcommand x
- WizKey removes itself from memory. You'll never use this one, anyway ;-)
-
-
- Windowlist stuff:
-
- NAME: WindowList, lcommand help
- If the active screen is a public screen, a window is opened containing the
- titles of every window on the screen. Click on a title to pop a window to
- the front and activate it; the active window is marked with a "*".
- To activate the windowlist, which is not activated when opened, press the
- hotkey again, then cursor up and down to scroll through the windowlist.
- The default preference file conains some little arexx-scripts enabling
- you to pick windows with the keys lcommand + F1-F10 and "1"-"0", according
- to the numbers displayed in the windowlist.
-
- NAME: ToggleTitles, lcommand t
- By default the windowlist displays the windows' titles, with this command
- the display can be switched to the windows's screentitles and back. Very
- useful for my texteditor :-)
-
- NAME: CloseList, lcommand delete
- Closes the windowlist.
-
-
- Activation stuff + shuffling::
-
- NAME: NextWin, lcommand tab
- Activates the next window in the windowlist, allowing you to activate any
- window on screen.
-
- NAME: PrecedingWin, lcommand ` (the key above tab)
- Activates the window preceding the active window in the windowlist.
-
- NAME: TopWinToBottom, lcommand up (i.e. cursor up)
- The window on top of the active screen's window pile is dropped to the
- bottom, the window now on top is activated.
- Handy to shuffle through the window pile.
-
- NAME: BottomWinToFront, lcommand down (i.e. cursor down)
- The bottom window of the window pile is brought to the top and is
- activated.
-
- NAME: WinToFront, lcommand lshift
- The active window is brought to the front.
-
- NAME: WinToBack, lcommand rshift
- The active window is dropped to the bottom.
-
- NAME: CloseWindow, lcommand q
- If the active window contains a close gadget, WizKey tries to close the
- window (of course I don't just call Intuition's CloseWindow...)
-
-
- Window sizin'n'movin':
- (any change of size and position performed through WizKey may be taken back
- one time for each window, see "RestoreWindow")
-
- NAME: ReduceWindow, lcommand r
- The active window is sized to its minimum.
-
- NAME: FullSize, lcommand f
- The active window is sized to its maximum.
-
- NAME: Zip, lcommand z
- Just like clicking on the active window's zip gadget.
-
- NAME: MoveTop, rcommand numpad 8
- MoveBottom, rcommand numpad 2
- MoveRight, rcommand numpad 6
- MoveLeft, rcommand numpad 4
- MoveXCenter, lcommand numpad 5
- MoveYCenter, rcommand numpad 5
- The active window is moved to different positions relative to its
- screen's borders..
-
- NAME: ExpandTop, lcommand numpad 8
- ExpandBottom, lcommand numpad 2
- ExpandRight, lcommand numpad 6
- ExpandLeft, lcommand numpad 4
- ExpandLeftTop, lcommand numpad 7
- ExpandRightTop, lcommand numpad 9
- ExpandLeftBottom, lcommand numpad 1
- ExpandRightBottom,lcommand numpad 3
- The active window's borders are expanded to its screen's borders.
-
- NAME: RestoreWindow, lcommand backspace
- The window's last change of position and/or size done with WizKey is
- taken back. Even "RestoreWindow" itself can be taken back.
-
-
- Screen shuffling:
-
- NAME: ScreenToBack, rcommand up
- The active screen is dropped behind any other screen, the screen's active
- window is remembered. If WizKey can remember an active window on the next
- screen, the window is activated, else the window covering the screen's
- centre is activated or the screen's first window is activated.
-
- NAME: BackScreenToFront,rcommand down
- The bottom screen is popped to the front, activation of its window is the
- same as in "ScreenToBack".
-
-
- Arexx only commands:
- Instead of programming some stub procedures and mapping them to default
- hotkeys, I implemented a few commands as Arexx only commands that accept
- some input. These commands can be found in the preference file, where they
- are used in some Arexx-stringfiles that are mapped to hotkeys.
-
- NAME: ActivateWindow <windowtitle>
- WizKey searches through every window on any screen for a window title
- that contains (!) the title given as an argument, and activates it if it
- finds one. "ActivateWindow 'rkben'" for example will activate the window
- 'Workbench', if there is one. The search is case sensitive.
-
- NAME: GetWinTitle
- Requiring "options result" before invocation, this function returns the
- title of the active window. Example (to type in the shell):
- rx "address 'WizKey'; options results; GetWinTitle; say result"
- this will print the name of the shell window in the shell.
-
- NAME: PickWindow <number>
- The window at the position <number> in the windowlist will be activated
- and popped to the front. See preference file for examples.
-
- NAME: ScrToFront <screentitle> (optional)
- If provided with a screentitle argument, this command will pop the first
- screen containing <screentitle> in its title to the front. Without any
- argument, this will bring the active window's screen to front.
-
- NAME: Shrink <numerator> <denominator> <boolX> <boolY>
- The active window is shrinked (or maybe even grown) in size to a fraction
- of its screen size. <boolX> and <boolY> determine whether this affects
- only the window's width, only the window's height, or both. Example:
- "Shrink 5 7 1 1" will size the active window both in width and height to
- 5/7 of its screen's size.
- "Shrink 1 2 0 1" will size the active window only in height to 1/2 (one
- half) of its screen's height.
- Oops, I just notice that "FullSize" is almost obsolete...
-
-
- Future Enhancements
- -------------------
-
- WizKey will take care of the window's screen display clip (the position and
- size of the screen's visible portion - autoscroll screens) if it is told to
- do so. I didn't yet find the time to do that, I could work on WizKey for
- all of my life without one single public release ;-)
- If you have some ideas of new features or corrections then please tell me
- about it, maybe I will implement it.
- There might especially be some useful Arexx-commands I did not think of.
- Of course I'd appreciate any bug report very much, too, the more detailed
- the better.
-
-
- SHAREWARE
- ---------
-
- If you use WizKey frequently then feel free to send me a donation of 20$ or
- 20 DM. If you can't afford that much money or if you think that WizKey is
- worth less, feel free to send less money, that's ok.
- If you think that WizKey is worth much more than 20$, don't hesitate to send
- much more than 20$.
- If you do not like WizKey or do not have any computer at all, and you don't
- know how to get rid off your money, this might be a reason to send some
- money to me, too, you are welcome.
- My address is:
- Jörg von Frantzius
- Neue Königstr 61
- 5040 Brühl
- Germany
-
- My bank account is: BLZ 37010050, number 04199 53-507
- Postgiroamt Köln
-
- Email: NOVALIS@DARKNESS.ZER - this will change soon
-
-
-
-