home *** CD-ROM | disk | FTP | other *** search
/ Really Useful CD 1 / ReallyUsefulCD1.iso / extras / utilities / _keywindow / _help < prev    next >
Encoding:
Text File  |  1992-04-21  |  17.3 KB  |  462 lines

  1. Key Window (v 1.25)
  2. by Richard G. Hallas
  3.  
  4. This application is Public Domain. The author's own
  5. help text is given below.
  6. ____________________________________________________
  7.  
  8.  
  9. This program provides an on-screen function keystrip
  10. in a window. It should prove useful to owners of
  11. A3000s, A5000s and A540s who do not have keystrip
  12. holders on their keyboards, but it does more than
  13. that: you can 'press' the keys by clicking on them
  14. with the mouse, and Key Window can keep track of a
  15. list of up to 32 keystrips, opening and closing them
  16. automatically as you load, use & quit applications.
  17.  
  18. To use:
  19. -------
  20.  
  21. Load by double-clicking in the usual way. If you are
  22. in the habit of booting up a number of applications
  23. when you switch on, then you might like to include
  24. Key Window near the beginning of your boot-up
  25. sequence so that it can keep track of other
  26. applications starting up, and open keystrips for
  27. them.
  28.  
  29. Once loaded, clicking SELECT on the icon-bar icon
  30. will open a keystrip window; either the first one
  31. on the list, or the last one shown if you closed a
  32. strip which was opened automatically. (If you ignore
  33. Key Window, and load DeskEdit [for example] a
  34. keystrip will appear anyway, since DeskEdit is
  35. defined as one of the applications for which Key
  36. Window has a keystrip.) The keystrip will appear
  37. behind other windows so that it is inobtrusive, but
  38. you can easily bring it to the front by clicking
  39. its title bar in the usual way.
  40.  
  41. Pressing the hot-key combination <SHIFT-CTRL-TAB>
  42. or <CTRL-SHIFT-INSERT> will toggle the keystrip
  43. between the front and the back of the desktop.
  44. (The hot-key may not work if an application such
  45. as DeskEdit has the input focus; it is for this
  46. reason that there are two version of the same
  47. hot-key.)
  48.  
  49. In addition to opening and closing keystrips when
  50. you load and quit applications, Key Window is also
  51. 'context sensitive', and will update the contents of
  52. the keystrip window according to whichever program
  53. currently owns the caret. If a program which does
  54. not have a keystrip defined claims the caret, then
  55. the keystrip will be closed, but if the caret is
  56. turned off completely, then the last keystrip used
  57. will continue to be shown.
  58.  
  59. The icon-bar menu has the usual 'Info' and 'Quit'
  60. options, along with two others: 'Keystrips' and
  61. 'Options'. The first of these provides access to an
  62. 'Applications' submenu, and choosing an application
  63. from this menu will open a keystrip for it. By
  64. default, the following applications are provided:
  65. DeskEdit, Impression II, Draw Plus, Poster, Edit,
  66. Notate, Rhapsody, Acorn DTP, DisAssem, BASIC Editor
  67. and the Charm Editor. The BASIC Editor is configured
  68. to open with the Data Store's excellent front-end
  69. for the ARMBE BASIC Editor, but can of course do
  70. nothing more than serve as a reminder, since ARMBE
  71. is a single-tasking application which takes over the
  72. whole screen. This is also true of the Charm Editor.
  73.  
  74. The other icon-bar submenu, 'Options', governs how
  75. the keystrip window will operate. The options are as
  76. follows:
  77.  
  78. à 'Open at top': If this is ticked, the window will
  79.  always appear at the top of the screen; otherwise
  80.  it will appear just above the icon bar, or wherever
  81.  you put it last.
  82.  
  83. à 'Auto scroll': This makes the keystrip window
  84.  behave in the same way as the icon bar does when it
  85.  is full; that is, it scrolls sideways automatically
  86.  when the pointer is moved to the left and right
  87.  hand edges.
  88.  
  89. à 'Scroll bar': This toggles the horizontal scroll
  90.  bar and size icon; if 'Auto scroll' is selected,
  91.  then the scroll bar is unnecessary, but you may
  92.  wish to use it to get from one side to the other
  93.  more quickly.
  94.  
  95. It is not possible to deselect both 'Auto scroll'
  96. and 'Scroll bar' at the same time, since it would
  97. obviously then be impossible to move from one side
  98. of the keystrip to the other.
  99.  
  100. The last two options are separated from the others
  101. by a dotted line, and they govern the way the
  102. 'context switching' aspects of the program work.
  103.  
  104. à 'Sense caret': If this option is selected, the
  105.  keystrip will be fully context sensitive, and as
  106.  the input focus moves between windows, the keystrip
  107.  will change to reflect its position. (Note that for
  108.  the sake of simplicity, the program's menu refers
  109.  to the 'caret' when it actually means the 'input
  110.  focus'; there doesn't really have to be a physical
  111.  caret. A good example is of this Draw Plus, which
  112.  only shows a caret when entering text objects; the
  113.  keystrip nevertheless still applies.)
  114.  
  115. à 'Sense apps': If this option is selected, Key
  116.  Window will open and close strips as applications
  117.  are loaded and quit. Since this could potentially
  118.  interfere with the context switching option above,
  119.  then if the 'Sense caret' option is on, the 'Sense
  120.  Apps' option will only work if a keystrip is not
  121.  currently in use.
  122.  
  123. All this makes Key Window sound very complicated,
  124. but you should find it quite easy and natural to
  125. use.
  126.  
  127. Regardless of the state of these options, whenever
  128. the window is opened, or the screen mode is changed,
  129. it will appear behind the other windows, and will
  130. resize itself to fit the current width of the
  131. screen. The default settings of these options can be
  132. defined by editing the !Run file; see that file for
  133. details, and also later in this !Help file.
  134.  
  135. On to the keystrip window itself. Clicking any of
  136. the key definitions with SELECT or ADJUST will
  137. 'press' that key. If you are not using the 'context
  138. switching' features you should remember that the
  139. same key is pressed regardless of whatever strip is
  140. showing; you may for example have the keystrip for
  141. Edit on the screen, but if you are currently using 
  142. Impression, then clicking on <CTRL-F4> will bring up
  143. the Find/Replace box rather than doing an Indent
  144. Block in Edit.  This seems obvious, but it's easy to
  145. forget. They're the same keys, regardless of how
  146. they're labelled.
  147.  
  148. Since <CTRL-SHIFT-F12> is a dangerous keystroke (it
  149. normally exits the desktop), I have made the icon as
  150. difficult to click by accident as possible. To
  151. activate it, you must do a Drag-click within the
  152. icon: i.e. click the mouse, hold down the button,
  153. move the mouse a small distance within the icon,
  154. release the button and click again.
  155.  
  156. The keystrip window has its own menu so you can edit
  157. the strips and create new ones. The menu options are
  158. as follows; I shall deal with them in turn:
  159.  
  160. à Edit item: this is context-sensitive, and only
  161.  appears when you click over a key label. Enter the
  162.  contents in the submenu leaf; up to 16 characters
  163.  are allowed for each.
  164.  
  165. à Edit title: this allows you to edit the title of
  166.  the keystrip; the title will be used in the
  167.  keystrip window and in the 'Applications' menu.
  168.  
  169. à Get strip: this is the same as the 'Keystrips'
  170.  option on the icon-bar menu, and updates the window
  171.  with whichever keystrip you choose. Any unsaved
  172.  contents of the keystrip window will be lost if you
  173.  use this option. The only difference here is that
  174.  the keystrip is opened at the front, whereas it is
  175.  opened at the back when you select a strip from the
  176.  icon-bar menu. You should note that if the 'Sense
  177.  caret' option is on, then using either of these
  178.  application keystrip menus will lose the input
  179.  focus. If it didn't, then the keystrip would change
  180.  back to the one needed for the current application
  181.  as soon as you had selected a different one.
  182.  
  183. à Clear strip: this blanks the strip to give you a
  184.  fresh start. The two usual functions of F12
  185.  (Command line & Exit desktop) are entered for you
  186.  automatically, but you can delete them if you wish.
  187.  
  188. à Open with?: entering a taskname (as it appears in
  189.  the Task Display window) into this submenu will
  190.  make that strip open and close automatically when
  191.  you use a particular application. Leave the option
  192.  blank if you do not wish this to happen, but 
  193.  remember that this will disable the context switch
  194.  facilities for that particular application.
  195.  
  196. à Save strip: there are two ways of saving
  197.  keystrips, which you must choose from the submenu
  198.  (clicking on 'Save strip' alone will do nothing).
  199.  Firstly, 'Replace old' will overwrite the existing
  200.  definition with your edited version, so you can
  201.  easily add to a strip or correct it. (This option
  202.  is unavailable if you have used 'Clear strip'.)
  203.  Secondly, 'Create new' will save a totally new
  204.  keystrip and add it to the 'Applications' menu.
  205.  
  206. Notes on saving new strips
  207. --------------------------
  208.  
  209. When saving a new strip, the data is saved into a
  210. text file within the 'Data' directory in the
  211. !KeyWindow application directory. If you use the
  212. 'Create new' save option, Key Window will save the
  213. file with a numeric filename, starting at number
  214. '0'. If '0' exists, then it uses '1', and so on. If
  215. there are 32 files in the directory, then Key Window
  216. will not allow you to save a new strip, only
  217. overwrite existing ones. When Key Window starts up,
  218. it reads in the contents of all the files in the
  219. 'Data' directory, in the order in which they appear
  220. in the directory viewer; this is also the order they
  221. will appear in the 'Applications' menu. If you want
  222. a particular strip to always be first on the
  223. 'Applications' list (and therefore be the default
  224. one to use when you click on the icon-bar icon) you
  225. should make sure it is the first to appear in the
  226. directory viewer; using the name '!' should ensure
  227. this. It doesn't actually matter what you call the
  228. files; the program just uses numerics for the sake
  229. of simplicity.
  230.  
  231. If you wish to create your function key files in
  232. DeskEdit, say, and not with Key Window itself, the
  233. file format is as follows:
  234.  
  235. à The first line is the title of the application
  236.  (max. 20 characters) to appear in the window title
  237.  and 'Applications' menu.
  238.  
  239. à The second line is either blank or a taskname
  240.  (max. 19 characters) for the strip to open
  241.  automatically.
  242.  
  243. à The remainder of the file has up to 12 lines, one
  244.  for each key. If a line is blank, that key will
  245.  have no labels. Not all 12 keys need to be defined:
  246.  you use only as many lines as the keystrip
  247.  requires.
  248.  
  249.  Each line has up to four entries, separated by
  250.  commas: for the key alone, and in conjunction with
  251.  Shift, Ctrl and Ctrl-Shift. You need only enter as
  252.  many labels as necessary, so you can finish a line
  253.  before Ctrl-Shift, for example. Each line should
  254.  therefore contain 0 to 3 commas. Note that if, say,
  255.  a particular key has no function alone, but has a
  256.  function in conjunction with Shift, the definition
  257.  line should start with a comma.
  258.  
  259. Note also that although spurious commas are not
  260. necessary, they do not matter, and indeed if you
  261. save a definition file from the program, every line
  262. it produces will contain three commas.
  263.  
  264. Setting options with <KeyWindow$Flags>
  265. --------------------------------------
  266.  
  267. Key Window can be made to start up every time with a
  268. certain combination of options already in effect.
  269. You must edit the !Run file in the application
  270. directory to achieve this. Alter the number in the
  271. line 'Set KeyWindow$Flags 27' (The value of 27 is
  272. the default if you omit this line or enter an
  273. illegal value). The variable sets the default state
  274. for the five settings which can be temporarily
  275. toggled on and off in the 'Options' submenu.
  276.  
  277. The <KeyWindow$Flags> variable is a decimal number
  278. in the range 0 to 31, which is calculated from the
  279. following set of bits, which mean, when they are 
  280. set:
  281.  
  282.    Bit 0: Always open keystrip at top of screen.
  283.    Bit 1: Scroll strip when pointer reaches edges.
  284.    Bit 2: Show horizontal scroll bar, along with a
  285.           resize icon and a toggle size icon.
  286.    Bit 3: Context sensitive: applications gaining
  287.           the caret will open new strips.
  288.    Bit 4: Load sensitive: applications starting up
  289.           and quitting will open and close strips.
  290.  
  291. So, for example, if you wanted just 'Open at top' &
  292. 'Scroll bar' on by default, you would use the value
  293. 5, since you would be setting bits 0 and 2, and 5 is
  294. the decimal equivalent of binary 101.
  295.  
  296. Do note that the bits are in descending order:
  297. namely, bit 0 is the one on the right.
  298.  
  299. Note also that any values with bits one and two both
  300. set to zero are invalid, since they would mean that
  301. both the 'Auto scroll' and the 'Scroll bar' options
  302. were off, and the program will not allow this. The
  303. smallest value you may use is 2, and if you try to
  304. use an illegal value the program will automatically
  305. turn on 'Auto scroll' for you.
  306.  
  307. If you examine the !Run file further, you will find
  308. another variable, <KeyWindow$DummyMessage>. This is
  309. a message number for internal use. It should always
  310. be an unassigned message; if at some point in the
  311. future this message is assigned a use, it will be
  312. necessary to amend this variable to avoid conflicts.
  313. This is very unlikely, though.
  314.  
  315. Finally
  316. -------
  317.  
  318. So there you have it - what I hope is a useful
  319. program! This is PUBLIC DOMAIN SOFTWARE and as such
  320. may be distributed quite freely, just as long as it
  321. is not modified or tampered with in any way, and all
  322. the associated files are kept together unmodified.
  323.  
  324. The !KeyWindow directory should contain the
  325. following files:
  326.   
  327. !Boot
  328. !Help  (This file)
  329. !Run
  330. !RunImage
  331. !Sprites
  332. Data
  333. Source
  334. Sprites
  335. Templates
  336.  
  337. The Data sub-directory should contain at least the
  338. files numbered '100'-'110' for DeskEdit,
  339. Impression II, Draw Plus, Poster, Edit, Notate,
  340. Rhapsody, Acorn DTP, DisAssem, the BASIC Editor and
  341. the Charm Editor. These files may be modified if
  342. necessary, and added to as required.
  343.  
  344. (Note: The default keystrips provided are all for
  345. commercial applications, except for two public
  346. domain items: Draw Plus by Jonathan Marten and
  347. DisAssem by Henrik Pedersen. Both these applications
  348. are excellent pieces of software, and are readily
  349. available through public domain libraries.)
  350.  
  351. I hope you like this program and find it useful. If
  352. you do, send me a disc with some PD software on it,
  353. and I'll return your disc with the other PD things
  354. I've written on it, and the latest version of this
  355. program if it has been updated. Remember to let me
  356. know which version number you have, and if you find
  357. any bugs, please TELL ME! Letters, discs, bug
  358. reports and suggestions (none too rude, please!) to
  359. the following address:
  360.  
  361. Richard G. Hallas,
  362. 31 Skelton Crescent,
  363. Crosland Moor,
  364. Huddersfield,
  365. West Yorkshire,
  366. HD4 5PN
  367. ENGLAND
  368.  
  369. Version revisions:
  370. -=-=-=-=-=-=-=-=-=-
  371.  
  372. The following versions have been made available in
  373. the public domain:
  374.  
  375. Version 1.00: First release version, sent to APDL.
  376.  
  377. Version 1.06: this provides the additional hot-key
  378. <CTRL-SHIFT-INSERT> (duplicating <CTRL-SHIFT-TAB>),
  379. since DeskEdit 1.20 now uses <CTRL-SHIFT-TAB> for
  380. one of its own features. The hot-key now toggles the
  381. window between front and back, rather than just
  382. bringing it to the front as in version 1.00.
  383.  
  384. Version 1.06 also corrects a small bug which caused
  385. the window to reopen upon a mode change or return to
  386. the desktop, when it had previously been closed by
  387. the user.
  388.  
  389. Clicking on the icon with Adjust does the same as
  390. Select, but also provides a little animation! (This
  391. has always happened, but was undocumented for
  392. version 1.00.) I like these little touches!
  393.  
  394. Version 1.07: Small cosmetic changes have been made
  395. to the Keystrip menu to bring it in line with normal
  396. RISC OS standards. The two Edit submenus used to
  397. have red borders and no titles, and the Save strip
  398. submenu also used to have no title bar. Thanks to
  399. Mark Moxon of RISC Developments for his comments.
  400.  
  401. Version 1.12: There are numerous modifications in
  402. this version: the system variable <KeyWindow$Flags>
  403. replaces <KeyWindow$Top> in previous versions, and
  404. provides two more options, 'Auto scroll' and 'Scroll
  405. bar'. The 'Open at top' option on the main icon-bar
  406. menu has been replaced by, and moved onto, a new
  407. 'Options' submenu, which also contains the two other
  408. options provided by the <KeyWindow$Flags> variable.
  409.  
  410. (All the menu items are now at the correct 44 OS
  411. units height, whereas they were previously only 40
  412. units high.)
  413.  
  414. The Keystrip window itself now behaves more sensibly
  415. in that it can scroll itself when the pointer pushes
  416. up to its edges, in the same way as the icon-bar. It
  417. is meant to mimic the icon-bar, and will 'sense' the
  418. pointer at a similar horizontal position.
  419.  
  420. For this reason, the horizontal scroll bar is much
  421. less necessary, and can now be toggled on and off.
  422. In the default state, the program leaves it switched
  423. off, which looks neater and saves a little space on
  424. the desktop.
  425.  
  426. Key-combination labels have been added to the right
  427. hand edge of the window, and are identical to the
  428. ones at the left.
  429.  
  430. My thanks must go to Henrik Pedersen for his very
  431. useful and helpful suggestions, some of which are
  432. implemented in version 1.12, notably the 'Auto
  433. scroll' feature. I can't imagine why I didn't think
  434. of this myself! Other suggestions will have to wait
  435. for a later version, when I have time to think about
  436. them.
  437.  
  438. Version 1.25: Credit must once again go to Henrik
  439. Pedersen, this time for showing me how to read the
  440. taskname of the application owning the caret. It's
  441. actually very easy to do, but I had managed to miss
  442. it every time I had consulted the PRM! Version 1.25
  443. represents a completely new way of operating for Key
  444. Window, and this is the way I wanted it to work in
  445. the first instance. The facility to read the caret
  446. owner's taskname enables it to be wholly context
  447. sensitive, whereas previous versions simply opened
  448. and closed strips as applications were loaded and
  449. quit.
  450.  
  451. The <KeyWindow$Flags> system variable and the
  452. 'Options' submenu have both been extended to take
  453. account of the new context options. Also, a very
  454. small but perfectly formed bug which has been around
  455. since the first version, and which meant that the
  456. strip didn't resize upon a mode change if it was
  457. closed, has finally been killed, and a very minor
  458. deficiency (not exactly a bug) concerning reopening
  459. the same strip has been corrected from previous
  460. versions.
  461.  
  462. - R.G.H.