home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The CDPD Public Domain Collection for CDTV 3
/
CDPDIII.bin
/
pd
/
commodities
/
mouseblanker
/
mouseblanker.doc
< prev
next >
Wrap
Text File
|
1992-10-07
|
10KB
|
249 lines
MouseBlanker
(Commodity)
by
Stefan Sticht
This program (binary), sourcecode, documentation is
PUBLIC DOMAIN.
You may do anything with it!
Purpose of this commodity:
--------------------------
MouseBlanker is a commodity, which blanks the mouse pointer after a
specified timeout period since you moved the mouse the last time or
after pressing a specified amount of keys on the keyboard. The
pointer is restored next time you move the mouse. This is done to
prevent the mouse pointer hiding any information while you are typing
text for example.
Requirements:
-------------
This commodity requires at least Kickstart 37.* and Workbench 37.*.
Please check this out using Version in the Shell or "About" from the
Workbench's "Workbench" menu. You also need to have the
commodities.library in your libs: directory.
How to start a commodity:
-------------------------
First there are two basically different ways to start a commodity:
via Workbench or via Shell.
Starting it via Workbench is extrem simple: just doubleclick on
its icon and the commodity gets started. Perhaps you might change
some parameters of the commodity. You do this with tool types. Tool
types can be changed by clicking at the commodities icon and selecting
Information from the Workbench's Icon menu. In the window which opens
you see a listview gadget in which all tool types are listed. Please
refer to your Workbench documentation on how to change this tool
types. Which parameters you can change for this specific commodity is
described below.
Please note that another double click on the commodity's icon
forces the commodity to open its window, if it's already running.
Running two copies of MouseBlanker at the same time isn't useful and
therefore possible. Any changes in tool types aren't told the running
copy of the Mouseblanker; you have to kill the running one and start
it again.
To start a commodity via shell you type in its name. If you get
an "Unknown command ???" error message, you have misspelled the
commodity's name or the commodity isn't in your current directory or
in the current search path. The easiest way is to change your current
directory to the location of the commodity using the CD command. You
can change parameters of a commodity by command line options. The
available options are listed with ? as the first parameter:
Mouseblanker ?
gives you a list of the command line options. The explanation of each
option is below. Starting the commodity once more while it is already
running forces the commodity to open its window. No command line
option is parsed or updated if you start the commodity a second time.
If you want the commodity to be started at every boot-up, it's
best to add this line to your User-Startup file:
<path>Mouseblanker <options>
Don't forget to replace <path> by the path to the commodities's
location and <options> by the options you want to change. For example
add this line if your commodity is located in the Tools drawer of your
boot disk and if you want the pointer to be blanked after 5 seconds:
Tools/MouseBlanker SECONDS=5
Another way to start the commodity at every boot-up is to drag its
icon in the WBStartup drawer of your boot disk. Then the commodity
gets started as if you had double clicked on its icon. But you have
to add the tool type DONOTWAIT to the icon.
Using Exchange:
---------------
Exchange is the commodities controller program. With Exchange you can
control all commodities: you can kill, disable, enable, show and hide
commodities.
Start the Exchange program, which usually is in the Utilities
drawer of your boot disk, by double clicking its icon. Now you see a
list of the available commodities. Select the commodity you want to
control. The commodities title, description and status is shown now
below the listview gadget.
You can kill the commodity using the Kill gadget... If the
commodity has a window to open, in which you usually change some
parameters, you can open this window using Show. Hide closes this
window.
Changeable parameters:
----------------------
CX_Priority:
------------
You can specify the priority of the Commodity within the commodities
queue using the tool type or commandline option CX_PRIORITY=<number>,
where <number> is the decimal value for the priority. Default
priority is 0.
Seconds:
--------
With the tool type or command line option SECONDS you can specify the
initial value of the timeout period, after which the mouse pointer
will be blanked. Use SECONDS=<number>, where <number> is a positive
decimal value. Setting SECONDS=0 disables this feature. The default
timeout is 3 seconds.
After having started the commodity, you can change the timeout
value in a small pop up window, too. To open this window you need the
Exchange program or a hotkey installed. Open Exchange's window,
select the MouseBlanker, then select Show. Now the window of the
MouseBlanker has opened. There you can change the timeout value.
Using the Hide gadget the window closes and the commodity keeps
running. The Quit gadget removes the commodity.
KEYPRESSES:
-----------
With the tool type or command line option KEYPRESSES=<number> you can
specify after how many keypresses the mousepointer shall be blanked.
Please note that only releases of keys are counting. Default is 5.
KEYPRESSES=0 disables this feature. This option can be modified in
the MouseBlanker's window, too.
REBLANKTIMEOUT:
---------------
After MouseBlanker has blanked the mouse it may happen that the
pointer reappears. Unfortunatly MouseBlanker can't recognize this.
As a work-around MouseBlanker always reblanks the pointer after a
specified timeout as long it thinks the pointer should be blanked. As
this requires CPU time, you may disable this option. With the tool
type or command line option REBLANKTIMEOUT=<number> you can specify
this timeout in seconds. REBLANKTIMEOUT=0 disables this option.
Default is reblanking after 2 seconds.
CX_POPKEY:
----------
You can specify a hotkey, with which you can open the commodity's
window, using the tool type or command line option CX_POPKEY=<string>.
<string> is any input description string as explained below. If you
omit this option, no hotkey will be installed. Default is no hotkey
installed.
Examples:
CX_POPKEY=f1 (F1 opens the window)
"CX_POPKEY=lshift f1" (left shift and F1)
"CX_POPKEY=alt m" (either alt and M)
CX_POPUP:
---------
With the tool type or command line option CX_POPUP=YES|NO you can
specify wether the commodity's window shall open at startup. YES|NO
means that you have to use either YES or NO, nothing else. Default is
NO.
Input description strings
-------------------------
With input description strings you can specify almost any input
action, for example the action lshift f1, which means that pressing
the left shift and the f1 key together is the action. In this
commodity you can specify the action to open the commodity's window,
as described above.
Input description strings have the following template:
[class] (([-]qual)|syn)* [[-]upstroke] [highmap|ANSIcode]
(* means zero or more occurances of the of the expression in brackets)
class is one of the following strings:
rawkey, rawmouse, event, pointerpos, timer, newprefs,
diskremoved, diskinserted.
If not specified, the class is taken to be "rawkey".
qual is one of the strings:
lshift, rshift, capslock, control, lalt, ralt, lcommand,
rcommand, numericpad, repeat, midbutton, rbutton, leftbutton,
relativemouse
A preceding '-' means that the value of the corresponding
qualifier is to be considered irrelevant.
syn (synonym) is one of the strings: shift, caps, alt
shift means "left or right shift"
caps means "shift or capslock"
alt means "either alt key"
upstroke (literally "upstroke")
if this token is absent, only downstrokes are considered
for rawmouse (mousebuttons) and rawkey events. If it is
present alone, only upstrokes count. If it preceded by
'-' it means that both up and down strokes are included.
highmap one of the strings:
comma, space, backspace, tab, enter, return, esc, del, up,
down, right, left, help, f1, f2, f3, f4, f5, f6, f7, f8, f9,
f10, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, (, ), /, *, -, +
ansicode a single character token is interpreted as a character code,
which is looked up in the system default keymap.
Some full examples:
-------------------
MouseBlanker Seconds=10
MouseBlanker Seconds=5 "cx_popkey=ctrl 1" cx_popup=yes
MouseBlanker Seconds=15 "cx_popkey=help" keypresses=10
Version history:
----------------
V1.20 small error removed
V1.19 minor changes to reduce code size
V1.18 now window opens on the frontmost screen (via hotkey), if the
frontmost screen is a public screen; else it opens on the de-
fault public screen as usual;
removed enforcer hit under low mem condition
V1.17 internal changes
V1.16 internal changes
V1.15 Method of mouse blanking changed; blanking after certain
number of keypresses added; many small changes
V1.14 SAS/Cs cback.o changed for 68040-compatiblity; relinked
with this changed cback.o
Send bug-reports, enhancement-requests, questions, gifts(!) to:
---------------------------------------------------------------
Stefan Sticht
Bibereckerweg 40a
D-8390 Passau 18
FRG
or (better) EMail to:
sticht@edith.deg.sub.org
Fido-Net: Stefan Sticht (2:246/200.4)
Please include the version number of the commodity in every bug report
You get the version number using the Version command:
Version [<path>]<commodity>