home *** CD-ROM | disk | FTP | other *** search
-
- ---------------------
- "MouseAide" History
- ---------------------
-
- Changes for: v9.75a.08.03.93 (Rel.7b)
-
- 07.20.93 Added the ability to 'EzDrag' windows that have there own custom
- drag gadget, such as 'ToolManager' has with its 'Docks'
-
- 07.27.93 Added the automatic adjustment to systems who generate a Middle
- Mouse Button Qualifier, but do NOT have a MMB!
-
- 08.02.93 Fixed a small bug in the 'EzDate' building code, that would NOT
- generate a correct 'Formated' date!
-
- 08.03.93 Added the ability to ignore a qualifier when defining a 'Hot Key'
- by prefixing it with a: '-' character. For example:
-
- lalt -lshift t
-
- would ignore the 'Left Shift' qualifier when checking for the
- 'Left Alt t' sequence! Another example:
-
- lamiga -capslock -lshift -rshift esc
-
- Would ignore the 'Caps Lock', 'Left Shift' & 'Right Shift'
- qualifiers when scaning for the 'Left Amiga Esc' sequence!
-
- Changes for: v9.76a.08.20.93 (Rel.7c)
-
- 08.20.93 Fixed a bug in the 'Workbench to Front' function, that could at
- min. cause a 'Enforcer' hit, and at max. cause a system lockup
- & a system guru! The problem was two fold: One, I relied on
- the 'input.device' as a easy timmer, NOT smart because calls
- to 'intuition' can freeze the 'input.device'!!! Two, my find
- 'Workbench' window routine could return a invaild pointer, if
- the 'Workbench' process is bog down!
-
- Add a small delay to the 'Auto-Activate' function when the
- right mouse button is released (Menu up) to give 'Workbench'
- time to use the last activate window in any of its functions,
- before a new window is activated! This allows function such
- as 'Snapshot' to 'Snapshot' the correct window, not the window
- that the pointer ends up over after releasing the menu button!
-
- 08.21.93 Fixed a tiny bug that was releasing one-byte-short on the user
- 'Hot Key' definations, on shutdown
-
- During 'Screen Blanking' I now check for, at the rate set for
- 'Mouse Blanking', for an un-blanking state and re-blank if
- needed! This is needed when a program opens a new screen, or
- brings their screen to the front, while we are trying to show
- are 'Blanking' screen.
-
- Changes for: v9.77a.08.20.93 (Rel.7d)
-
- 09.12.93 Fixed a small, but insidious bug in which I search for one more
- entry in the: 'Hot Key functions'/'Macros' array then are defined!
- If the memory just passed the code array table if just right (or
- should I say just wrong) POP BANG GURU!!!!
-
- Changes for: v9.78a.08.20.93
-
- 09.14.93 Add 'Enlarge/Shrink Window' function, that will adjust a windows
- size to its max./min. values & adjusting its position if needed!
- (will work even with a custom 'size' gadget, nice eh?)
-
- If the mouse pointer is blanked (from key, or timeout) I NO longer
- look for the window under the mouse pointer for any of the 'Window'
- functions! This allows the active window to be 'Key Closed',
- 'Enlarged', 'Shrunk', etc... without having to move the pointer
- over the window, nice touch if you are a keyboard user!
-
- Changes for: v9.79a.09.17.93
-
- 09.20.93 Added a 'Zip Window' function that will invoke the 'Zoom' function
- of a window if it has a 'Zoom' gadget! But, I did not stop there
- I also created a 'Zip-Cache' for windows without a 'Zoom' gadget!
- I did this for two reasons: One, I would like to have alternate
- position for all windows that can be dragged, not just ones with
- a 'Zoom' gadget! Two, for people with older machines that do NOT
- have the 'Zooming' ability, this function will create it! I
- decided to use a 'cache' to hold the window's 'alternate' size/
- position, instead of patching into 'intuition' this method is
- safer, and requires less coding, with in turn produces less bugs.
- As of this version I use: a 32-unit (Windows) cache, that is
- allocate when this fuction is invoked. I also bubble up the
- last called unit (window) which makes it easier to find on the
- next call, and protects it from being replaced if there is more
- than the 32-unit being 'Zipped'
-
- Changes for: v9.80a.09.27.93 (Rel.8)
-
- 09.25.93 I now allow qualifier keys to do key-blanking & key-activating!
-
- 09.26.93 Fixed a small bug in how I detected when the 'input.device' was
- locked up, causing a deadlock! My old routine would sometimes
- abort the 'dragging' process when the 'input.device' was NOT
- locked up!
-
- 09.27.93 Added a 'Upstroke' Qualifier to the 'Hot-Key' parser, which will
- allow the user to trigger any hot key function by having: a key
- pressed down (default), released (upstroke), or both (-upstroke)
- I added this ability because of toggle functions such as 'EzDrag'
- which work better when toggled on by the downstroke, and toggled
- off by the upstroke!
-
- Changed the default 'Hot Key' sequence for 'EzDrag' to use the
- new 'Upstroke' qualifier (-upstroke)
-
- I now remove 'Repeat' hot-key events. I did this because some
- programs (bad coding) do NOT like to receive repeat events when
- they did not receive the first event!
-
- I now abort the 'EzDrag' mode if the active screen changes. No
- more hidden dragging!
-
- 09.28.93 Added 'Freeze Mouse-X' & 'Freeze Mouse-Y' functions that allows
- the user to user to freeze the Mouse movement in either the X,
- or Y direction, nice for moving Icons or in drawing programs!
- This function was suggested to me about a year ago, but it did
- NOT become easy to implement until I added the '-Upstroke'
- qualifier!
-
- Added the 'Un-Accelerate Mouse' function that allows the user to
- toggle, on and off, the 'Acceleration' function. Nice function
- to have for making very small mouse movements! This function was
- suggested to me by a new user, and also became easy to implement
- because of the '-Upstroke' qualifier!
-
- Changes for: v9.81a.03.07.94 (Rel.9)
-
- 01.13.94 Added the ability to define a 'Hot-Key' for either of the double
- qualifier keys! So by using the follow qualifier keywords:
-
- AMIGA for the LAMIGA or RAMIGA
- ALT for the LALT or RALT
- SHIFT for the LSHIFT or RSHIFT
- CAPS for the LSHIFT or RSHIFT or CAPSLOCK
-
- you can define a 'Hot-Key' sequence that will function on more
- the one sequence. You also can also use the above keywords to
- ignore both the 'Right' & 'Left' qualifiers by prefixing it with
- a: '-' character. Here are a few examples:
-
- alt t
-
- would define a 'Hot Key' sequence that is triggered either the
- 'Left Alt t', 'Right Alt t', or the 'Right Alt Left Alt t'
- sequence!
-
- amiga shift -alt j
-
- would define a 'Hot Key' sequence that is triggered by all of the
- following sequences:
-
- 'LAmiga LShift j'
- 'LAmiga RShift j'
- 'RAmiga LShift j'
- 'RAmiga RShift j'
- 'LAmiga RAmiga LShift j'
- 'LAmiga LShift RShift j'
- 'LAmiga RAmiga LShift Rshift j'
-
-
- 'LAmiga LShift RAlt j'
- 'LAmiga RShift RAlt j'
- 'RAmiga LShift RAlt j'
- 'RAmiga RShift RAlt j'
- 'LAmiga RAmiga LShift RAlt j'
- 'LAmiga LShift RShift RAlt j'
- 'LAmiga RAmiga LShift Rshift RAlt j'
-
- 'LAmiga LShift LAlt j'
- 'LAmiga RShift LAlt j'
- 'RAmiga LShift LAlt j'
- 'RAmiga RShift LAlt j'
- 'LAmiga RAmiga LShift LAlt j'
- 'LAmiga LShift RShift LAlt j'
- 'LAmiga RAmiga LShift Rshift LAlt j'
-
-
- 'LAmiga LShift RAlt LAlt j'
- 'LAmiga RShift RAlt LAlt j'
- 'RAmiga LShift RAlt LAlt j'
- 'RAmiga RShift RAlt LAlt j'
- 'LAmiga RAmiga RAlt LAlt LShift j'
- 'LAmiga LShift RAlt LAlt RShift j'
- 'LAmiga RAmiga RAlt LAlt LShift Rshift j'
-
- Nice, eh?
-
- 01.19.94 Fixed a problem between the 'Freeze Mouse-X' & 'Freeze Mouse-Y'
- functions and the 'Un-Accelerate Mouse' function that would NOT
- allow both to be used at the same time (this showed up when I
- defined the 'Un-Accelerate Mouse' function to toggle on/off with
- the 'F1' key, but then was NOT able to have the 'Freeze Mouse-X'
- & 'Freeze Mouse-Y' functions work at all!) Both are compatible
- now!
-
- 02.03.94 Added the ability to define a 'Hot-Key' on the numeric key pad
- with the 'NUMPAD' qualifier. For example:
-
- numpad 9
-
- would define a 'Hot-Key' to the '9' key on the numeric key pad!
- Nice eh?
-
-
- Fixed a small bug with would NOT allow the user to define a 'Hot-
- Key' to the '-' key (because of the pre-qual. modifier). If the
- '-' key is the last character on the definition I will now allow
- the key to be defined. Note: the 'commodities.library' has the
- same bug, neat eh?
-
- 02.04.94 Added the following alternate keywords:
-
- CONTROL for CTRL key
- LCOMMAND for Left AMIGA key
- RCOMMAND for Right AMIGA key
- NUMERICPAD for qualifier for keys on numeric key pad
- MIDBUTTON for middle mouse button
- LEFTBUTTON for left mouse button
- COMMAND for left | right AMIGA key
- RIGHTBUTTON for right mouse button
-
- I did this to make it easier for 'commodities' users. I almost
- have compatible system in place now!
-
- 02.18.94 Added an 'EzSize' function that allow allow the user to size a
- window without using the 'sizing' gadget, but with a user defined
- 'Hot-Key' sequence, NO need to lock on the 'sizing' gadget any
- more! I also improved the process, by allow the user to use any
- of the four corners for the sizing. NO more having to first move
- a window you want to re-size, just place the pointer over the
- corner that is open for adjustment, and activate the 'EzSize'
- function! If you only want to re-size one axis, I also allow the
- user to lock the other axis by placing the pointer in the middle
- of axis you wish to lock. For example, if you want to move the
- top of a window down a bit, but do NOT want to change the width,
- just place the pointer pointer at the top of the window and in
- between the left & right sides of the window, and activate the
- 'EzSize' function. You can now adjust the height of the window
- without effecting the width! Now a real clever person should be
- saying 'what about the middle of the window, where both the X & Y
- axis could be locked?' Well I do NOT waste that area either!
- When activated in the middle of a window I default to the 'EzDrag'
- function, which allows you to drag the window! You now can size
- and drag a window with one easy to use function!!! nice eh?
-
- Here are how the actions of the 'EzSize' function are determined:
-
-
- <- 1/4 -> <- 1/2 -> <- 1/4 ->
-
-
- --> +--------+----------------+--------+
- | X & Y | Y | X & Y |
- 1/4 | | | |
- | Sizing | Sizing | Sizing |
- --> +--------+----------------+--------+
- | | | |
- | X | EzDragging | X |
- 1/2 | | | |
- | Sizing | Zone | Sizing |
- | | | |
- | | | |
- --> +--------+----------------+--------+
- | X & Y | Y | X & Y |
- 1/4 | | | |
- | Sizing | Sizing | Sizing |
- --> +--------+----------------+--------+
-
-
- ( X & Y Sizing is from the corner that the pointer was over when
- the 'EzSize' function was activated)
-
- 02.22.94 When in the sizing/dragging mode I now use my own copy of the
- screen's "RastPort", borrowing the screen's is NOT a very smart
- thing to do!
-
- 02.26.94 I stopped sending the 'un-blanking' command every time that the
- mouse is moved! Now I check the current state of the 'Mouse' to
- see if it is required to send the command, the old method was a
- big waste of CPU time!
-
- 02.28.94 Added a 'Version' string so that you can use the "Version" command
- to identify what version of "MouseAide" you have without having to
- start it up!
-
- 02.28.94 The 'Auto Activation' function would NOT activate a screen (make
- the screen under the pointer the active one) if the pointer was
- NOT over a window. For example, if you were turning screens
- with the pointer over the title bars, "MouseAide" would NOT try
- to activate the new screen, because the pointer was NOT over a
- window! This flaw was created because there is NO intuition
- function to activate a screen, it is done when a window on a
- screen is activated! This small flaw becomes a pain when after
- you turn to a new window, and then try to access the menus, NO
- menus, until you get the new screen active! To fix this problem
- I now activate the first window on an screen when the pointer is
- NOT under a window, and NOT over an activte screen! I hope this
- will work ok!
-
- Also, make the screen turning function activate the first window
- on the new screen that is in the front. The old method was to
- get the top most layer and hope it was a window. The new method
- should work better!
-
- 03.04.94 Did a little work on 'timer' routines. Since I started using the
- timer for more than one function I thought I better make the
- timer routines more general purpose in use!
-
-
-
-
-
-
-