home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ARM Club 3
/
TheARMClub_PDCD3.iso
/
mag_discs
/
17
/
judith
/
!Judith
/
!Help
next >
Wrap
Text File
|
1995-05-25
|
7KB
|
190 lines
Name: !Judith
Purpose: Window iconiser
Author: Andrew Brooks (see end for addresses)
Status: FreeWare, copyright (C) 1995 Andrew Brooks
Version: 1.43 Thu May 25 17:31:29 BST 1995
!Judith is a window iconiser that takes over from Pinboard,
!Larger etc. (although they will continue to work as backdrops).
Icons for iconised windows all go into a single window rather
than ending up stuck to the backdrop so they are easier to access.
Pinboard and !Larger place icons on the backdrop where they are
difficult to access, and Pinboard even places them under the
close icon of the window. !Judith uses a window which may be
brought to the front with the press of a 'hot key'. Additionally,
windows that are iconised and reopened will use the same icon
position next time they are iconised, like X Window managers.
Usage
-----
* Iconised windows go into a single window for ease of access.
* Double click on an icon to reopen the corresponding iconised
window; the control window then goes to the back.
* Closing the window quits the program and reopens all windows.
* Hot key Shift-Ctrl-Tab brings the icon window to the front.
* Iconised windows go back into the slot they held previously
rather than the first available so you can find them easily.
* Iconised windows won't take an empty slot if the window that
was there previously is still open, in case it wants that slot
back again in the future.
* Icons may be dragged to preferred positions.
* The window can optionally resize automatically to hold its
contents comfortably.
* Clicking Menu over an icon with Shift held down opens the menu
for the corresponding iconised window.
* The options can be set using from a menu and saved for next
time.
* Menu:
Auto shrink - when ticked, the window will shrink each time
the last icon in the list is removed.
Go to back - when ticked, the window will go to the back of
the window stack each time an icon is double-
clicked.
Small icons - when ticked, icons added to the window are half
size. Toggling this entry also changes the size
of all existing icons.
Quit - reopens all iconised windows and exits.
Configuration
-------------
The definition of the hot key is stored in the !RunImage file.
It is a Wimp key number, see pages 3-122 and 3-123 in the RO3 PRMs.
The style of icons used can be altered by changing the template
icons in the !Templates file.
Notes
-----
* !Judith requires RISC OS 3 or later.
* No visible distinction can be made between windows from the same
application which have the same title, eg. $.c.foo and $.h.foo
from !Zap will both show the title 'foo' (This is a problem with
!Zap). This could have caused confusion if both were reopened and
then iconised again in a different order as they would be in
different slots. Not so with this version of !Judith though, as
windows iconise to the same slot they occupied previously.
* If the window being iconised has a window title which looks like
a pathname then the window title is used as the icon title. This
will allow you to distinguish between $.c.foo and $.h.foo
Only the last 20 characters will be used as that is the maximum
length that a title can be.
* Use in conjunction with !Sticky (Brian Brunswick) or !StickBrd
(Sergio Monesi) for a productive working environment. I wanted to
add these facilities to one or the other but one was written in
RISC_OSLib and the other came with no source!
* The WimpSlot is currently 64k, it grew from 32k when I added the
menu. It may work in less if you have a page size less then 32k.
You may have to increase it if you increase maxiconised%.
* The gap at the bottom of the window is intentionally left blank!
It can be used when dragging to make the window larger [just like
defining the sort order in !Squirrel].
* This program was greated with great help from:
o !Zap by Dominic Symes
o PRM Index by Andrew Brooks
o PRMs by Acorn Computers Ltd
o A310, 4M, 40M, standard resolution monitor
Distribution
------------
!Judith is FreeWare, not Public Domain, and comes with no warranty.
You have permission to distribute !Judith as long as the following
conditions are obeyed:
* No charge is made for the software (only reasonable medium costs).
* All copyright notices are clearly retained.
* No files are added, removed or modified.
* It is not bundled with other items for which a charge is made.
You do not have to accept these terms, but if you do not accept
them then nothing else grants you permission to own or distribute
a copy of !Judith.
Future improvements
-------------------
[ These are more likely to be implemented with some form of financial
incentive, so if you wish to see them then feel free to send me a
modest amount! ]
* Better layout, such as multiple columns when full vertically
and auto icon widths.
* Rewrite prototype in a 'proper' language and reduce memory needed.
* Icon bar icon so it doesn't quit when window closed?
* No fixed limit on number of windows that can be iconised
(ie. no arrays).
* DragASprite? I don't think it is appropriate.
* Auto scroll window when dragging.
* Shift or Adjust-double-click opens window but keeps icon
so window can be brought to the front easily.
* Auto grow window when new icons added?
* How about shading icons when reopening windows?
* Add to RISC OS 3 boot sequence at shutdown.
Hacks
-----
Returned messages have their sending task handle fixed.
Indirected data and validation string data are stored twice,
once in arrays (easy to access) and once in a buffer of which
we can take the address. If you donate code to find the address
of a string then I will use it!
Bugs
----
Hmmm, tell me about it!
* Errors loading/saving options are handled ungracefully.
* Shift-Menu doesn't work for Impression windows (typical!).
* On one occasion I iconsed filer window ADFS::Whopper.$ and it
had the title 'Stationary'!
* Filer windows lie about the size of their indirected titles
(they say 14, even though it is much longer). Thus I cannot
reliably implement a check for windows still alive.
History
-------
1.43 If window title is a pathname then use it as icon title.
1.42 Added code to get window titles, but Filer windows lie.
1.41 Removed feature added in 1.30 until title checking is implemented.
1.40 Added Shift-Menu detection.
1.30 Added check for existing windows from empty slots.
1.20 Added icon dragging.
1.13 Fixed sprite name size bug.
1.12 Added interactive icon size toggling.
1.11 Fixed redraw bug when icon size toggled.
1.10 Added menu and options file.
1.00 First version.
Why the name?
-------------
Well, we've had Sarah, Martin and Veronica to name but three, so why
not Judith? Besides, !Iconiser a bit of a boring name really… (Oh,
and I've just found out someone else has written one called just that!)
Music
-----
Black Dog, "Bytes"
DJ Shadow, "What Does Your Soul Look Like?"
Paul Dolden, "On the Threshold of Deafening Silence"
John Coltrane, "Ascension"
Diesel Kings, "Purple Rain Etc."
The Way We Live, "A Candle For Judith"
Author
------
Andrew Brooks
http://www.sat.dundee.ac.uk/~arb/
arb@sat.dundee.ac.uk
arb@ua.ndu.ac.uk
arb@comp.lancs.ac.uk
Satellite Station, Dundee University, DD1 4HN, Scotland.
Computing Department, Lancaster University, LA1 4YR, England.
7 Kennedy Close, Chester, CH2 2PL, England.