VisualPrefs - The Damage Control Edition
Release 1.5n (30.5.2021) [see below for the latest changes]
This is a maintenance update to VisualPrefs 1.5k, whose main purpose is
to make the program compatible with the new AmigaOS 3.2. That's because
the 1.5k release doesn't quite get along with all the changes Intuition
underwent in V47. Which was to be expected, since VP is a hack :)
This release does not contain any new functionality, other than support
for certain new OS 3.2 features. It _does_ contain some minor bug-fixes
and optimizations. Still, if you don't use OS 3.2 and you're happy with
VP 1.5k, there's probably no great benefit for you in switching.
Anyway, a change log is included, so you can decide for yourself.
Both VisualPrefs and the GUI editor are now working without limitations
and therefore don't require a keyfile anymore.
Please don't take this emergency release as a sign that the development
of VisualPrefs has resumed. It has not, and very likely never will, for
a number of reasons that can be summed up by "life goes on". As much as
I'd like to, I no longer have the amount of spare time it would take to
regularly maintain (let alone support) a project of this extent.
(Not to mention that, as an OS developer, I'm really uncomfortable with
the hacks the thing performs... I'd much rather keep updating Intuition
to make more and more of its features possible in a clean way. AmigaOS
3.2 is actually a first step towards that.)
So this is just a special "thank you" to all people who appreciated VP
and stuck with it throughout the years, even when other more modern and
powerful solutions became available. They were definitely owed a chance
to continue using it even under OS 3.2, if they so wished.
That said, of course I'll do my best to fix any new bugs in this update
as quickly as I can. But please don't send new feature requests; that's
simply not an option at this time, sorry.
Besides, now the goal should no longer be to improve VisualPrefs... but
rather to make it obsolete :-)
Beware: even in this somewhat "fixed" version, VisualPrefs is still the
same hack it's always been. Which means "use it at your own risk" -- or
even better, don't use it at all ;)
Also, while I will read and attempt to address every bug report sent my
way, I may not be able to reply to all of them due to time constraints.
I apologize in advance for that; be sure you will NOT be ignored.
Just rename the VisualPrefs and GUI executables best suited for the CPU
of your Amiga, and copy them over your existing versions, then reboot.
Make sure to back up the older executables before overwriting them with
the new ones, in case you experience trouble and need to roll back.
As this is only a quick fix package, you'll have to download the latest
release archive (util/wb/VisualPrefs.lha) to get the full documentation.
Huge thanks to Mikhail Malyshev, for his invaluable help in discovering
VisualPrefs issues and testing my fixes during AmigaOS 3.2 development.
This update would not have been possible without his assistance!
Release 1.5n (30.5.2021)
- All of the Workbench screen's DrawInfo pens were being set to zero if the
program was started with no gui.prefs file already present in ENVARC:Sys.
Now fixed. Thanks to George Sokianos for making me aware of this bug! :)
- Not exactly a bug-fix, but added the missing "(NOPALETTEPREFS)" tool type
to the GUI editor's icon; you can remove the brackets to enable it.
Its functionality was already implemented in release 1.5m (see changelog).
Release 1.5m (13.5.2021)
- Fixed a bug due to which a non-GimmeZeroZero window could open with wrong
values in its GZZWidth and/or GZZHeight fields if its right or top border
was made thinner after calling the original OpenWindowTagList().
- The internal "tbiclass" title bar image class didn't work on ignored (i.e.
unpatched) screens. Now fixed.
- No longer shifts horizontally the leftmost menu title in the screen title
bar when a SBarLogo bitmap is used. It could happen with a few hand-built
menu strips such as the one generated by Redit.
- Changing the color of the Menu Background pen with the Palette editor can
no longer cause menu images (e.g. checkmark, Amiga key symbol...) to have
an incorrect background color; now the operation has no effect (just like
changing any other pen with the Palette editor while VP is running).
- Fixed a bug in the GUI editor's gadget setup which was triggering the new
grid layout feature of V47 GadTools accidentally, with random ill effects.
- Fixed screen title bar's horizontal offset when a SBarLogo bitmap is used
under AmigaOS 3.2 or higher.
- Dropped all code dealing with keyfile checking. VisualPrefs is officially
freeware since many years, so that isn't needed anymore.
- Added flag 0x400 (1024) to "VisualPrefs/Special" environment variable, to
have bright edges of XEN frames drawn in SHINEPEN instead of HALFSHINEPEN.
- No longer tries to modify a screen title bar's height if it is already of
the desired height to begin with.
- As a result of empirical observations, "VisualPrefs/SafetyLevel" does now
default to "2" (highest protection against stack overflows).
- Reworked and simplified the code so that CloseWindow() no longer needs to
- No longer adjusts the aspect ratio of GadTools gadgets on RTG screens; an
aspect ratio of 1:1 (aquare pixels) is now always assumed in that case.
- BOOPSI scrollers in window borders had their recessed 3D frame needlessly
drawn twice upon window refresh; now fixed.
- No longer leaves an useless invisible (0 x 0) gadget in a window's gadget
list after its opening.
- Made some minor cosmetic touch-ups to the GUI editor. Most notably, it is
now placing its sizing gadget in the bottom border. To put it back in the
right border, use the tool type (or command line argument) SIZEBBOTTOM=NO.
- The "Absolute"/"Relative" cycle gadget in the GUI editor is now disabled
for the first and last four palette colors when editing the settings for
the Workbench screen; Intuition keeps those eight colors in place at all
times, so the user never needs to decide how to remap pens that use them.
- Added new NOPALETTEPREFS switch to the GUI editor, telling it not to read
or write ENV(ARC):Sys/palette.prefs in any circumstance. Try this in case
of conflicts when using GUI together with the system Palette editor.
Changes for AmigaOS 3.2:
- Added support for sysiclass' new ICONIFYIMAGE under AmigaOS 3.2 or higher.
- Added support for the new FRAMEF_MINIMAL flag in frameiclass' IM_FRAMEBOX
method under AmigaOS 3.2 or higher.
- Added support for the new FRAME_PROPBORDER, FRAME_PROPKNOB, FRAME_DISPLAY
and FRAME_CONTEXT image types of frameiclass under AmigaOS 3.2 or higher.
- MXIMAGE glyphs of sysiclass now support IA_EraseBackground. If FALSE, the
pixels around the rounded corners won't be overwritten with BACKGROUNDPEN.
- Even non-BOOPSI window scrollbars (like those used by Workbench) can now
display a small recessed "hole" when running under AmigaOS 3.2 or higher.
- Now uses a system-friendly mechanism, rather than a hack, to increase the
height of screen title bars when running under AmigaOS 3.2 or higher.
- Now tries to honor IControl's per-program GUI exception settings as much
as possible when running under AmigaOS 3.2 or higher.
- The formerly custom "Bar Contour" pen is now translated to the new system
BARCONTOURPEN when running under AmigaOS 3.2 or higher.
- The GUI editor now displays a different description for the "Bar Contour"
and "Bar Trim" pens when running under AmigaOS 3.2 or higher.
- The GUI editor does no longer specify "(BOOPSI only)" in the "Put hole in
window scrollbars" option when running under AmigaOS 3.2 or higher.
Hope this helps. Or at least it doesn't ruin your day too much... ;)