OmniDesk
By Richard G. Hallas

Have you ever wished you had a collection of some of your most useful
desktop utilities all rolled into one application? Such an application
would have to be economical in memory usage, attractively presented
and unobtrusive in operation, while also being extremely flexible,
fully customisable and capable of being expanded by any conceivable
function.

If you have wished for such a utility, then look no further: here is
OmniDesk. It is a totally modular collection of utilities, each of
which can be run separately or used as part of the program as a whole.
If used together, the utilities become integrated components of the
OmniDesk suite: the final utility is more than the sum its constituent
parts.

Using the OmniDesk Suite
------------------------
OmniDesk is very straightforward to operate. Without any of the
additional utilities which can be incorporated into the suite,
OmniDesk itself provides five basic utilities as described below. When
you copy extra utilities into the suite, they are added to the list of
available utilities completely automatically.

To load OmniDesk, double-click on its icon in the normal way. While it
is loading, a small status window appears in the centre of the screen
detailing the version number of the software. This window also shows
the name of each utility in the suite as OmniDesk adds it to its list.

Once loaded, OmniDesk places an icon on the right hand side of the
iconbar. If you have RISC OS 3, the icon will appear to the left of
the Palette utility and any screen mode software you may be using.
Whilst getting to know OmniDesk, it's a good idea to use interactive
help, as the utilities present extensive help on everything (including
menus in RISC OS 3).

To begin with, click Menu over the OmniDesk icon. This will bring up a
simple menu with just four items. 'Info' and 'Quit' operate in the
same way as in other RISC OS applications. Moving the pointer right
over 'Utilities' leads to a submenu of all the utilities OmniDesk
knows about. Simply choose any utility from the menu to run it.

The other item on the main menu, 'Preferences...', leads to the
configuration window. This very important window controls the entire
operation of the utility. It is important that if you change anything
in this window, you must click on the 'Set' button for the changes to
take effect. (The 'Save' button does the same thing, but also saves
your choices for future use.) If you close the window without clicking
'Set', your modifications will be ignored.

The area of the configuration window labelled 'Utilities setup
options' is the important part. Each utility is listed in this area,
and alongside each name is a selection of switches. The column
labelled 'Load' is the most complicated: see later. The other three
columns of switches, labelled 'iconbar effects', allow you to choose
which utilities are activated when you click Select or Adjust on the
OmniDesk icon, or when you drag a file onto it. Many of the utilities
do not accept dragged files, and you can only select those which are
capable of receiving them. If you wish, you can cause the same utility
to be activated by both Select- and Adjust-clicks, and by a drag if
applicable. Of course, it is not possible to have more than one
utility at once started by one particular kind of click, but if you
want to disable one kind of click (an Adjust-click, for example),
simply make sure none of the switches in the 'Adjust' column is
selected.

The built-in utilities
----------------------
Looking at the configuration window, you will have already noticed
that the top area is labelled 'Caret blinking options'. This utility
will flash the caret (the red vertical line which marks where text is
inserted in programs such as Edit) at a user-defined rate. Simply
enter the on and off periods in tenths of a second and make sure the
switch at the left is selected. Note: some programs (for example,
Impression) can blink the caret themselves. If you use such a program,
you should turn off its caret-flashing option and use OmniDesk's in
preference, as the two will probably conflict.

A 'hidden' utility provided by OmniDesk is the ability to use the
cursor keys to move the pointer. The cursor keys on their own will
move the pointer in steps of one pixel for fine positioning, whilst
pressing SHIFT, CTRL or CTRL-SHIFT at the same time will increase the
speed. Do note that if any program is accepting keypresses, some or
all of these key combinations may fail to work.

The other utilities built into OmniDesk itself are presented at the
top of the Utilities menu:

"Locate caret" will cause any window containing the caret to be
brought to the front of all the other windows, and the pointer will
then zoom towards the caret. If the caret is not active, the computer
will beep. If the caret is outside the visible area displayed in the
window, the window will first scroll until it is visible. Please note
that a few programs use 'composite windows', where the main window you
see is actually made up of several smaller windows. The operation of
the "Locate caret" utility (in particular its window-scrolling
facility) is not guaranteed with such programs, and may produce odd
effects. (This is particularly true with Impression, and you are not
recommended to use "Locate caret"with that program.)

Choosing "Display sprite" from the Utilities menu will open a small
window. Dragging sprite files to it results in their being displayed
on the screen, which is useful for previewing artwork or taking
screen-shots. Click the mouse or press a key to return to the desktop.
Note: some programs from Clares Micro Supplies save files in a
compressed format provided by a software module called "Xarc". If you
have this module loaded, you can also use "Display sprite"to view
these files.

Choosing the "Turn caret off" utility has the very simple effect of
causing whatever program 'owns' the caret to give it up. This provides
an easy means of re-enabling the facility provided by OmniDesk for
moving the pointer with the cursor keys.

Extra Utilities
---------------
The prime feature of OmniDesk is its ability to be extended by other
utilities which all have a common presentation. Looking at OmniDesk
within a disc directory viewer, if you double-click on the !OmniDesk
icon with SHIFT held down in order to 'open up' the application
directory, you will see it contains a further directory called
'Utilities'. It is within this directory that extra utilities are
stored (although it is permissible for this directory to be empty, in
which case only the utilities so far described will be available). You
are perfectly free to run these utilities independently of OmniDesk by
double-clicking on them: if you do so, they will install their icons
on the iconbar as normal, and will not be affected by OmniDesk in any
way. However, if chosen from the OmniDesk Utilities menu (or if
configured to work from the OmniDesk icon) they will be operated under
the control of OmniDesk. See the individual help files of the
utilities for details.

Such extra utilities all have similar presentations: from their main
windows, there will always be a menu which presents at least three
options: 'Info', 'Window position' and 'Save settings'. There may well
be other options too. However, these three will always be present:
'Info' accesses the usual information window, whilst the 'Window
position' leads to a window which lets you determine where each
utility's window appears on the screen. This corresponds to an
invisible grid, and when you change screen mode the windows will snap
to this grid. (This feature can be disabled by clicking Adjust on the
small window icon, which makes it disappear.) The other menu option,
'Save settings', saves the location of the window (and any other
settings appropriate to the utility in question) to disc for
subsequent use. Note: RISC OS 3 users will find that if they snap the
window of any utility to the right-hand edge of the screen, the main
menu will work from right to left, with submenu pointers appearing
down the left of the menu. This is simply a convenience to stop
submenus obscuring the main menu.

More about configuration
------------------------
Now we return to the 'Load' switches in the OmniDesk Configuration
window. When you choose a utility which is not built into OmniDesk, it
must first be loaded from disc; and when you have finished using it
and closed its window, it will quit until loaded again. This is
normally no problem, except for two considerations: if you have
altered any of the utility's settings (such as window position) but
not saved them, they will not be retained when you next use the
utility. Also, some utilities may take time to set themselves up
before you can use them. If you want to open and close utilities
freely in one session without either losing their settings or having
to wait for them to set themselves up again, you can select the
appropriate 'Load' switch. Any utility you have set to load
permanently in this way will continue to run, and therefore maintain
its settings, when you close it. However, this does mean that it will
be occupying memory which you may find valuable for other purposes. In
general, you should only select 'Load' for those utilities which you
use most frequently, and which take some time to load or set up. The
first three 'Load' switches in the configuration window cannot be
turned off, because they relate to utilities which are built into
OmniDesk.

Note: when you click 'Set' in the configuration window, OmniDesk will
go through all the utilities it knows about and either load or quit
them according to the settings of the 'Load' switches. It will pop up
a window to tell you of its progress while this is happening.
Obviously, the more utilities available, the longer this process
takes.

All the utilities support interactive help, and will work correctly
with the RISC OS 3 Pinboard. Icons are provided for the three RISC OS
3-specified types of screen mode, and these are updated upon a
mode-change. OmniDesk works with the RISC OS 3 desktop boot feature,
as do the extra utilities (although they only cooperate if being run
independently of OmniDesk).

Note for RISC OS 3.5
--------------------
When their windows are snapped to the right hand edge of the screen,
the OmniDesk utilities make their menus work from right to left (i.e.
with submenu pointers appearing down the left) rather than the
normal left to right arrangement. Unfortunately there is a bug in
RISC OS 3.5 (as supplied in the Risc PC) which prevents such menus
from working correctly. Moving the pointer to the left over a left-
facing submenu pointer causes the submenu to appear at the very right
of the screen rather than at its correct place in the menu tree. It
is to be hoped that this bug is cured in the next release of RISC OS.
However, with care the menus can still be used. The problem is NOT
the fault of OmniDesk.

Note for OmniDesk version 1.10
------------------------------
This revision of OmniDesk is functionally identical to the previous
version. The user interface has been redesigned to follow the Acorn
Style Guide more closely, and the internal workings have been updated
to make everything operate correctly with the Risc PC (e.g. the
graphics now look correct in 16 million colour modes).

The same comments apply to the utilities with the exception of SWI
Index, which has been updated more fully by the addition of an index
for the RISC OS 3.5 PRM (the additional volume 5) and which has had a
more extensive face-lift, with the addition of an outline font for the
SWI list when used on a Risc PC.

All known bugs have been corrected, although they were all very minor.

Note for OmniDesk version 1.20
------------------------------
Again, version 1.20 of OmniDesk is functionally identical to the
previous version; the change this time round is compatibility with
RISC OS 5, as introduced on Castle Technology Ltd's IYONIX pc.

There is (at the time of writing, at least) no RISC OS 5-compatible
version of the Interface Manager module, which OmniDesk had formerly
used to provide 3D borders on RISC OS 2 machines (on which they were
not otherwise available) as well as on RISC OS 3. If launched on a
RISC OS 5 machine, OmniDesk now uses the operating system's own
routines for drawing 3D borders, and hence does not need the
Interface Manager module.

The 'Xarc' module, which allows compressed sprites to be saved and
loaded (and which OmniDesk uses to display such sprites) is not
supported under RISC OS 5, and hence its functionality is no longer
available. But this is a very obscure feature which probably no-one
used anyway, so its absence is of no great moment.

All of the OmniDesk utilities have been updated similarly to work with
RISC OS 5 but have no functionality changes, with the exception of the
Window Flags utility, which has been slightly extended to support a
'Furniture' flag for appropriate windows under the Nested Wimp. Note
also that SWI Index now includes an index for PRM Volume 5a, and hence
has indices for all available paper-based versions of the PRM.

A minor cosmetic feature has been added: if OmniDesk is using the
Interface Manager module, its dashed menu dividers are coloured red
(as in previous versions). If Interface Manager isn't being used, they
go black (as per normal RISC OS stylistic guidelines). This behaviour
has been implemented for all the utilities in the suite, not just for
OmniDesk itself.

Copyright?
----------

OmniDesk was formerly the copyright of Acorn User magazine, but is now
distributed as freeware. Thanks to Tau Press Ltd for permitting me to
release it in this way.

Author
------
Richard Hallas
Email <mailto:Richard@Hallas.net>
Web   <http://www.hallas.net/>
Tel.  01484 460280
