Home Page The Club Computers News Links Glossary EYAWTK
Before Amiga Background ICS OCS ECS AGA ??? PPC
U-Boot SLB Linux Amiga OS Dual Boot Motherboards Peripherals Other
Initialisation Installation OS4 Updates About OS4 File Systems Networking Printing Other
Introduction File System Workbench Preferences Commands Error Msgs Miscellaneous

AmigaOS 4.0 - About OS4 - Preferences

SCREENS Preferences Editor
The Screens preferences editor has several purposes:
  • It allows to define individual GUI and Palette preferences for any screen other than the Workbench one, even when the program opening the screen is unaware of the Release 4 Intuition extensions.
  • It also allows to define a "default" set of preferences which will be used for screens lacking own settings.
  • It can be used (to a limited extent) as a screen promoter, to force selected screens to open with a particular font or display mode.
  • It offers the basic features of a public screen manager, keeping a database of screen definitions Intuition can directly access. This makes it possible for applications to be transparently retargeted to any public screen known to the system; Intuition automatically takes care of opening and closing screens as needed.
  • For the near future, it is envisioned that any application will be able to register its screen's name with the system, and also to invoke the Screens editor (through an API call) and present it to the user as the standard means to configure all aspects of its screen's user interface.
(This document will be revised to include more information on this additional functionality as soon as it is fully implemented.)

Requirements and limitations
The Screens preferences editor requires the Release 4 intuition.library, IPrefs, GUI and Palette editors to work correctly. Also, since it needs to run the GUI and Palette editors, it must know their path. By default, Screens tries to launch "SYS:Prefs/GUI" and "SYS:Prefs/Palette"; if you keep these editors elsewhere, you can specify their full path with the GUIPATH and PALETTEPATH parameters (or tool types).

For the time being, the Screens editor cannot be used to configure any settings of the Workbench screen. This is done as usual by way of the ScreenMode, Font, Palette and GUI preferences editors.

Usage

The Screens preferences editor maintains a repository of configuration files for defined screens, located in the ENV(ARC):Screens directory. If this directory doesn't exist on your system, the editor will offer you to create it automatically the first time you run it.

Using the Screens editor's user interface you can create new screen definitions, clone or delete them, and insert definitions for existing screens, which you will then be able to customize. You can only insert a definition for an existing screen while that screen is open; once the new definition has been saved to disk, however, you no longer need to have the original screen open in order to edit its preferences.

To insert a definition for an existing (open) screen, click on the "Insert existing screen..." button and select the screen name from the requester that will show up.

If no screen is open, or those which are already reside in the screen database, the "Insert existing screen..." button will be disabled.

For each screen definition it is possible to edit the display mode, font, GUI and palette of the screen. In the case of GUI and palette, the relevant preferences editor will open on the original screen if it is public (and still open); failing that, the editor will open on a custom screen resembling the original one as much as possible.

For many configuration items, the Screens editor offers the choice of how exactly to apply their settings. The typical options are:

Never - this means Intuition will simply ignore the user's settings, and only use those provided by the screen's parent application (or default settings if it provides none).
As default - this means Intuition will apply the user's settings, but the screen's parent application can still override them by explicitly specifying different ones.
Always - this means Intuition will apply the user's settings, and those specified by the screen's parent application will be ignored.
"As default" is usually a good and safe choice, but the screens of some particular (typically old or misbehaving) programs might need a different approach, and some experimenting.

When an existing screen is first inserted in the screen database, "Never" is automatically selected for its display mode and font settings, as it is usually not needed to perform this kind of screen promotion.

In fact, in most cases you won't need to alter the display mode, font or palette of an inserted existing screen, although sometimes it can be useful to define more entries in the palette in order to have a wider choice of colors for GUI pens. The palette of an inserted screen does initially only contain those colors the original screen was using for its GUI (DrawInfo) pens at the time of insertion.

Other options are also available to further refine the way some specific settings are to be used. It is possible that a few odd screens might require a certain amount of finetuning to achieve the desired configuration results.

For each public screen in the database, you also have the option of letting Intuition automatically open it as soon as an application tries to obtain a lock on it, and close it once it has no more locks pending. To enable this option, use the "Open/close automatically" checkbox at the bottom of the "Display" screen properties page. Note: this option is turned on by default when you create a new screen from scratch, whereas it is initially turned off when you insert an existing screen. This is because the application owning that screen might not be aware of this feature, and could require some adjustments in its own settings to be able to work properly with it (typically, switching from "open own screen" to "use named public screen").

GUI settings

You can select Use defaults for a screen's GUI preferences (just a handy shortcut to get the default settings without having to start the GUI Preferences editor), or you can select Custom which allows you to actually edit the settings. In this context "default settings" means "internal Intuition default settings" (very basic ones, without any fancy special effects) and NOT "same settings as Workbench screen"! However, you can also select Like Workbench which will indeed make the screen adopt the same settings as used by the Workbench screen.

If you select Custom as settings type, you can then modify the GUI preferences using the GUI Preferences Editor simply by clicking on Edit settings.... This will run the editor and start performing your changes. The editor will normally open displaying the GUI settings currently in use; however, if you hold [Shift] while clicking on Edit settings..., the editor will open with the last saved settings. This is useful as a shortcut for the longer operation of starting the editor and then selecting Last Saved from its menu.

When you're done editing your GUI preferences, you should select Save (or Use) in both the relevant editor and the Screens editor if you want the new settings to be used by Intuition. This is because IPrefs only rescans the screen database when the Screens preferences themselves are saved (or used). Also note that, as of Update#4, if you change the settings for an open screen you need to close and reopen it to see the new settings take effect. This might change in future Intuition versions.

For the GUI preferences you can specify a custom name to be used for the settings file. This can be useful (for instance) to keep the settings of a screen in the same place as the application the screen belongs to. If you don't do this, the file will be stored in ENVARC:Screens with an unique name chosen by the Screens editor. Temporary settings files (of the "Use" type) are always stored in ENV:Screens, even when a custom name is used for the permanent file.

Note: if you specify a custom settings file, you still need to load it with the relevant editor and select Use to make it take effect before the next reboot! A quick way to do this is selecting Edit settings... while holding [Shift], and then Use in the editor.

Palette settings

You can select Use defaults for a screen's Palette preferences (just a handy shortcut to get the default settings without having to start the Palette Preferences editor), or you can select Custom which allows you to actually edit the settings. In this context "default settings" means "internal Intuition default settings" (very basic ones, without any fancy special effects) and NOT "same settings as Workbench screen"! However, you can also select Like Workbench which will indeed make the screen adopt the same settings as used by the Workbench screen.

If you select Custom as settings type, you can then modify the Palette preferences using the Palette Preferences Editor simply by clicking on Edit settings.... This will run the editor and start performing your changes. The editor will normally open displaying the Palette settings currently in use; however, if you hold [Shift] while clicking on Edit settings..., the editor will open with the last saved settings. This is useful as a shortcut for the longer operation of starting the editor and then selecting Last Saved from its menu.

When you're done editing your Palette preferences, you should select Save (or Use) in both the relevant editor and the Screens editor if you want the new settings to be used by Intuition. This is because IPrefs only rescans the screen database when the Screens preferences themselves are saved (or used). Also note that, as of Update#4, if you change the settings for an open screen you need to close and reopen it to see the new settings take effect. This might change in future Intuition versions.

For the Palette preferences you can specify a custom name to be used for the settings file. This can be useful (for instance) to keep the settings of a screen in the same place as the application the screen belongs to. If you don't do this, the file will be stored in ENVARC:Screens with an unique name chosen by the Screens editor. Temporary settings files (of the "Use" type) are always stored in ENV:Screens, even when a custom name is used for the permanent file.

Note: if you specify a custom settings file, you still need to load it with the relevant editor and select Use to make it take effect before the next reboot! A quick way to do this is selecting Edit settings... while holding [Shift], and then Use in the editor.

Screen names, titles and types

The Screens editor, IPrefs and Intuition key off the public name of a screen in order to match it with a screen definition. Thus, each definition in the screen database is identified by a name. There is no uniqueness enforced by the Screens editor on the screen names, but any duplicate name is simply ignored.

You can also add "#?" (without quotes) at the end of a screen name, to tell Intuition to accept only a partial match of that name. This can be useful to match several screens belonging to the same application, as they might all have the same name with only a trailing number to differentiate them. Note that this is NOT real pattern matching; the "#?" wildcard is only recognized when it's located at the end of the screen name.

Custom (non public) screens are a special case: you can't define them directly with the Screens editor, but it is still possible to insert a definition for an existing custom screen as described above. Such a definition will have less configuration possibilities than a public screen definition, namely the screen name and title will not be editable. This is because Intuition uses the title (rather than the public name) to match a custom screen with a screen definition in the screen database.

There is one special screen definition, named "«Default»" (unless otherwise translated...) which can't be deleted and applies to any screen which doesn't have an own definition in the screen database. This is useful to avoid having to explicitly configure all screens. It is recommended that you keep the GUI and Palette settings for this screen definition reasonably simple, as it needs to remain usable with a (potentially) large variety of screen resolutions and color depths, and compatible with as many old programs as possible.

Also, you shouldn't use anything other than "Never" for the display mode and font settings of the "«Default»" screen definition, unless you intend to perform some kind of global font and mode promotion.

You can double-click on an entry in the screen listbrowser to disable the associated screen definition; the screen name will become recessed to show its disabled state. This is useful to inhibit usage of a screen definition without actually deleting it from the database; it will still be saved to disk as usual, but Intuition will ignore it. To re-enable the screen definition, just double-click on it again.

Disabling the "«Default»" screen definition is equivalent to setting all of its preferences to default values.


Return to Preferences Selection

Disclaimer: Amiga Auckland have prepared the above information for the use of its members based on our experiences and as such is subject to revision at any time. Amiga Auckland cannot guarantee any of the information and cannot be held accountable for any issues that may result from using it.


Copyright © 2006 Amiga Auckland Inc. All rights reserved.
Revised: February 9, 2006.