Release Notes ooDialog 4.2.3
The ooDialog 4.2.3 release is a routine update, providing some
incremental improvements and a few bug fixes.
ooDialog 4.2.3 can be installed to any ooRexx installation, 4.1.0 or
Beginning with the release of ooDialog 4.2.0, the installation of
ooDialog has been decoupled from the interpreter. ooDialog 4.2.3
installs over the top of any ooRexx installation. It replaces the
version of ooDialog in the ooRexx installation with ooDialog 4.2.3.
This type of ooDialog installation is called an "independent" ooDialog
installation to indicate the ooDialog installation is independent of an
ooRexx installation and, to a degree, the version of ooRexx installed.
ooDialog 4.2.3 requires a minimum ooRexx version of 4.1.0.
Installation is simple, done through a typical Windows installer. Pick
the installation package that matches the bitness of the ooRexx
installation. I.e., a 32-bit package for a 32-bit ooRexx and a 64-bit
package for a 64-bit ooRexx.
The installer will detect the installed ooRexx, location and version.
If the ooRexx version is less than 4.1.0, or if there is no installed
ooRexx, the installer will abort with a message explaining the problem.
Otherwise the installer will replace the current ooDialog with ooDialog
Note that the actions of the installer are dependent on the version of
ooRexx, not the version of the installed ooDialog. For instance, if the
installed ooDialog is version 4.3.0, but for some reason the user is not
happy with that version, running the ooDialog 4.2.3 installer will
replace the 4.3.0 version with the 4.2.3 version.
At the time of the installation, *all* ooDialog programs must be halted
and the ooDialog PDFs must be closed if they happen to be opened.
Changes in ooDialog 4.2.3 since the release of ooDialog 4.2.2
Bug Fixes in ooDialog:
* #1175 Incorrect super class initialization can bypass DynamicDialog
* #1176 ooDialog - the SingleSelection class has the potential of not
DocumentationBug Fixes in ooDialog:
* #201 getTextAlign(), getTextExtent(), setTextAlign() not documented
* #202 ooDialog Reference 4.2.3 - Text errors in Section 8.1 "Method
Feature Requests in ooDialog:
* #508 ooDialog - index for tree-view state images
* #537 Add FIle Open Dialog to allow more options than available with
* #540 Add a stand alone ooDialog program launcher
* #549 The setColor() method does not work well with comboboxes
* Fixed a problem detecting a ComboBox control in the .rc files
produced by some resource editors.
New Functionality in ooDialog:
An ooDialog executable, ooDialog.exe, has been added to the
distribution. The executable will run ooDialog programs in a manner
similare to rexxhide, provides command line information on the version
of ooDialog installed, and can be used to set up file types and
associations for ooDialog programs.
New dialog classes:
New utility classes:
In the Application class:
requiredOS() Checks that the current operating system is at least
the minmum specified.
In the ComboBox class:
removeFullColor() Restores the color of the combo box to its default
color if the setFullColor() method has previousl been
setFullColor() Sets the color of a combo box for all parts of the
In the DlgUtil class:
getGUID() Generates a GUID and returns it in the converntional
In the TreeView class:
getStateImage() Retrieves the state image index in the image list
for the specified item.
setStateImage() Assigns the state image index in the image list for
the specified item.
In the TreeView class:
getImageList() Enhanced to take a keyword for the type of image
list in addition to the raw number.
setImageList() Enhanced to take a keyword for the type of image
list in addition to the raw number.
Demonstrates what the 3 types of combo boxes look like. Shows how to
use the removeFullColor() and setFullColor() methods of the ComboBox
Shows how to implement an incremental search feature for the items in a
list box and over-ride the list box control's internal incremental
An example showing how to use the .DlgUtil's genGUID() method. Also
provides a simple application that can be used to generate GUIDs for any
An example showing a number of different uses of both the Open File
Dialog and the Save File Dialog. Demonstrates the most common usage
An example showing how to use the Common Item Dialog in file save mode.
This example shows 2 things. 1.) How to use a filter with the dialog.
This is done with the .ShellItemFilter class. 2.) How to connect event
notifications. This is done with the .CommonDialogEvents class.
Known Problems, "Gotchas," and Solutions with Independent Installations
The ooRexx installer creates a log of the files it installs. When the
uninstaller runs, the user can select to only uninstall files logged
during installtion. An indpendent ooDialog installation may install
some example programs, documentation files, and shortcuts not recorded
in the log file. When ooRexx is uninstalled or upgraded, these files
and shortcuts may not be deleted.
Before uninstalling ooRexx, install the independent ooDialog that
matches the ooRexx installation. I.e., if the ooRexx installation is
any 4.0.x, or 4.1.x ooRexx version, install the ooDialog 4.1.0
indpendent installation. Then when ooRexx is uninstalled, all ooDialog
files and shortcuts will be removed because the files and shortcuts
exactly match what was installed during the ooRexx installation.
After uninstalling ooRexx, manually delete any files in the old ooRexx
The independent ooDialog installation deletes the entire ooDialog
samples subdirectory tree. This will delete any personal files
that may have been put there after ooRexx was installed.
Do not put personal files in the %REXX_HOME%\samples\ooDialog
Before executing the independent ooDialog installer, move or back up
any personal files that may be in %REXX_HOME%\samples\ooDialog