======================================================== PROP3D -------------------------------------------------------- Version 40.95 (15 February 1996) by Massimo Tantignone ======================================================== This program patches some system library functions to improve the look of the GadTools proportional gadgets, namely sliders and scrollers. Their knob is currently the only element of the Amiga GUI that still appears "flat": Prop3D gives them a full three-dimensional look just like the rest of the system gadgets, and adds a dithered pattern to their container's background. Furthermore, Prop3D can force the arrow buttons of scrollers to always be perfectly square, and/or modify their look as well. Note that Prop3D only modifies GadTools gadgets, any other custom proportional gadget is left untouched. To use Prop3D you just have to add the following line at the beginning of your User-startup: Run > NIL: Prop3D after copying Prop3D into a directory that is in the system path (for example SYS:C or SYS:Utilities). It is important to start Prop3D before any program that uses the gadtools.library, so put the above command among the very first lines of your User-startup. Alternatively you can simply copy Prop3D along with its icon into your WBStartup drawer and forget about it. Do not remove the "DONOTWAIT" tooltype. To remove Prop3D you can run it a second time or send a CTRL-C to its process. By doing this the program restores the original library functions and exits. Make sure that no programs are using the gadtools.library while you remove Prop3D, or else there could be spectacular system crashes. Starting from version 40.85, the look of the proportional gadgets is somewhat configurable. You can control various aspects of their appearance by setting some environment variables. For instance, the command "SetEnv Prop3D/KnobStyle XEN" (without quotes) tells Prop3D to create its proportional gadgets with a special XEN-style knob. In addition, you can also put all your settings into a single ASCII file, which must be called "ENV:Prop3D/Settings", using the standard tooltype format and writing each entry on a separate line without spaces. An example of a typical entry could be "KnobStyle=XEN". However, keep in mind that the environment variables always override the contents of the Settings file. The program reads these settings when it is launched; if you change them later, you have to make it re-read them by running it a second time, for instance by typing "Prop3D" in a Shell window. If any of the settings was changed, Prop3D will continue to work using the new values, else it will remove itself, as already said. The variables currently recognized, along with their possible values, are the following: ----------------------+---------------+----------------------------------- Variable name | Value | Meaning ----------------------+---------------+----------------------------------- Prop3D/KnobFrame | GADTOOLS | Knob with classic GadTools frame | SIMPLE | Knob with simple 3D border ----------------------+---------------+----------------------------------- Prop3D/KnobStyle | CLEAN | For a "clean" knob | XEN | For the XEN-style knob ----------------------+---------------+----------------------------------- Prop3D/KnobHiMethod | DITHER | Highlight knob with dithering | SOLID | Highlight knob with solid color ----------------------+---------------+----------------------------------- Prop3D/KnobHiPen | SHINEPEN | Highlight knob with SHINEPEN | FILLPEN | Highlight knob with FILLPEN | BACKGROUNDPEN | Don't highlight knob ----------------------+---------------+----------------------------------- Prop3D/KnobHiLook | RAISED | Knob raised when selected | RECESSED | Knob recessed when selected ----------------------+---------------+----------------------------------- Prop3D/ContainerFrame | GADTOOLS | Container with GadTools frame | SIMPLE | Container with simple 3D border ----------------------+---------------+----------------------------------- Prop3D/BackFill | DITHER | Container with dithered background | SOLID | Container with solid background ----------------------+---------------+----------------------------------- Prop3D/ButtonAspect | IGNORE | Leave arrow buttons as they are | SQUARE | Force arrow buttons to be square ----------------------+---------------+----------------------------------- Prop3D/ButtonStyle | NORMAL | Arrow buttons with normal look | XEN | Arrow buttons with XEN-style look ----------------------+---------------+----------------------------------- Prop3D/ButtonHiPen | FILLPEN | Highlight buttons with FILLPEN | BACKGROUNDPEN | Don't highlight buttons ----------------------+---------------+----------------------------------- Prop3D/ButtonPlace | NORMAL | Place buttons the usual way | SIDES | Place buttons at opposite sides ----------------------+---------------+----------------------------------- Prop3D/PressedLook | NORMAL | Press items the normal way | SHIFTED | Press items shifting them ----------------------+---------------+----------------------------------- Note 1: the first value for each variable is always the default one. Note 2: "ContainerFrame" only works with AmigaOS 3.0 or higher. Note 3: "ButtonHiPen" and "PressedLook", for arrow buttons, work only if "ButtonStyle" is NOT set to NORMAL; "PressedLook", for the knob image, requires "KnobHiLook" to be set to RECESSED. Note 4: "ContainerFrame" also controls the frame of the arrow buttons, but only if "ButtonStyle" is NOT set to NORMAL. Then again, "ContainerFrame" only really makes sense if you're also using some patch that makes "thin" all other GadTools frames, such as "MagicFrames" by Luke Elliott, so this shouldn't be a big issue. Prop3D was tested with AmigaOS 2.04/3.0/3.1 and Enforcer. It shouldn't have any serious bug, but I can't by any means guarantee that it will work with future releases of AmigaOS (hopefully there will be no need of it). Furthermore under AmigaOS 2.x it works, but the look of the gadgets is slightly less attractive. So please buy and install AmigaOS 3.1. You won't regret it. ============================================================================ Changes from version 40.91 to version 40.95: · Now you can also configure the arrow buttons of scrollers · Slightly enhanced the look of gadgets with ContainerFrame=SIMPLE ---------------------------------------------------------------------------- Changes from version 40.85 to version 40.91: · Some people complained because Prop3D did read its ENV: variables every time a proportional gadget was created. Now it reads them only when it's launched, but you have to manually re-run it when you change its settings to make it recognize them · Added the option of using a single settings file to save memory ---------------------------------------------------------------------------- Changes from version 40.63 to version 40.85: · Now at last the look of the proportional gadgets is configurable [Note: this version can only be found on the IPISA '95 CD-ROM] ---------------------------------------------------------------------------- Changes from version 40.27 to version 40.63: · No more Enforcer hits when KingCON opens its requester for filename completion · Now Prop3D can be run after PatchControl without crashing the system · Enhanced overall compatibility with other programs ---------------------------------------------------------------------------- Changes from version 40.14 to version 40.27: · Fixed the bug that caused a lot of gadget flashing · Now Prop3D correctly uses BACKGROUNDPEN instead of color 0 · The gadgets that are only 12 pixels high (or less) get a slightly different look that makes it easier to use them · Fixed a really obscure bug that caused a memory loss each time a program freed its gadgets ============================================================================ For any comments, suggestions, questions, bug reports, etc. contact me at the following address: Massimo Tantignone Via Campagnoli, 4 28100 Novara (NO) ITALY Fidonet: 2:331/126.6 E-mail: tanti@intercom.it