Kbase P63654: SmartFolder tab colors change after applying new settings with USE statement
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  24/02/2006 |
|
Status: Unverified
FACT(s) (Environment):
Progress 9.1D
OpenEdge 10.0A
SYMPTOM(s):
SmartFolder tab colors change after applying new settings with USE statement
Applying new .INI settings to the Progress session with LOAD and USE
Using code similar to the following:
LOAD "newProgress.ini".
USE "newProgress.ini".
RUN smartFolders.w.
UNLOAD "newProgress.ini".
Background color of the SmartFolder tab changes to white or black after USE
If USE is not applied, color change does not occur
Settings in .INI file do not have to be different to the default .INI file to cause the problem
Problem did not occur with 9.1C
CAUSE:
The smart folder adds three dynamic colors to the color table. This happens in initWinColors in adm2/visual.p. When a new ini file is loaded and used, Progress creates a new color table. The new color table does not have the dynamic entries.
FIX:
Option #1
Force dynamic entries to be created by adding the following line in the example:
LOAD "newProgress.ini".
USE "newProgress.ini".
RUN initWinColors IN TARGET-PROCEDURE. /* ADD THIS LINE */
RUN smartFolders.w.
UNLOAD "newProgress.ini".
Option #2
Add the color definitions to the INI file. The definitions would have to be consistent in the old and the new file. The ADM color number definitions are added to a specific INI section:
---------------
[ADM]
Color3DFace=45
Color3DHighLight=46
Color3DShadow=47
---------------
They are added to the current INI file AFTER ADM has started in order to make sure that Progress does not add new colors to the color-table for each Progress restart. But they can also be defined in the INI beforehand to ensure that a specific number is used, as would be the case if two INI files need to be swapped at runtime. To support the swapping the corresponding colors also need to be defined in the [Colors] section as dynamic colors with the appropriate color.