Deploying Fonts, Icons, and Images

You can specify the default location and search paths for fonts, icons, and images in Registry.dat. Custom color schemes settings and gradient canvas color settings are also set in Registry.dat.

The following sections are included:

Managing Registry.dat with Fusion Middleware Control

Use Fusion Middleware Control to change, add, or delete parameters from Registry.dat.

To access the Fonts and Icon Mapping page:

  1. Start Fusion Middleware Control.

  2. From the Forms menu list, select Font and Icon Mapping. The Font and Icon Mapping page is displayed.

    Figure -13 Font and Icon Mapping Page

    Description of Figure -13 follows
    Description of "Figure -13 Font and Icon Mapping Page"

To edit a Registry.dat parameter value:

  1. Start Fusion Middleware Control.

  2. From the Forms menu list, select Font and Icon Mapping.

  3. Select the row containing the parameter to modify and change the value(s) for it in the Value text field.

  4. Click Apply to save the changes.

To add a Registry.dat parameter and its value:

  1. From the Forms menu list, select Font and Icon Mapping.

  2. Click Add.

    The Add dialog appears.

  3. Enter the name, value, and comments for this parameter.

  4. Click Create.

  5. Click Apply to save or Revert to discard the changes.

To delete a Registry.dat parameter and its value:

  1. From the Forms menu list, select Font and Icon Mapping.
  2. Select the row containing the parameter to delete and click Delete.
  3. The parameter is deleted.
  4. Click Apply to save or Revert to discard the changes.

Creating Custom Runtime Color Scheme

Oracle Forms delivers nine predefined color schemes that are set using the applet parameter colorscheme. Beginning with Oracle Forms 12c, customized color schemes can be created in lieu of using what is provided. To enable a custom colorscheme, set customcolorscheme=<COLOR SCHEME NAME> in formsweb.cfg. The customizations are configured in Registry.dat. An example named sample is included in Registry.dat. To use this example, set customcolorscheme=sample in formsweb.cfg.

Note:

All virtual colors in the custom color scheme must have valid values representing the desired color. NULL values are considered invalid. If any entry is invalid the application will use the color scheme set in the colorscheme parameter for all colors. The only exception is desktop. The desktop value is permitted to be blank, but all others must contain valid values.

Color values can either be hexadecimal (e.g. 0xFFFFFF) or RGB sets (e.g. 255,255,255). For example:

# Sample custom color scheme, where scheme name is "sample".
colorScheme.sample.description=Sample custom color scheme
colorScheme.sample.lightest=0xFFFF33
colorScheme.sample.lighter=0xFFCC33
colorScheme.sample.light=0xCC3333
colorScheme.sample.dark=0x993333
colorScheme.sample.darker=0x660033
colorScheme.sample.darkest=0x003333
colorScheme.sample.selection=0x4169E1
colorScheme.sample.pinstripe1=0xEE82EE
colorScheme.sample.pinstripe2=0xF5DEB3
colorScheme.sample.desktop=0x5111F6
colorScheme.sample.smartBar=0xFFFFFF

Customizing Gradient Canvas Colors

Gradient canvas colors are set at design-time, but are not visible until runtime.

The starting color is based on the background color set for the canvas. If no color is set, the color implemented by the runtime colorscheme will be used. At design-time, the developer can choose the starting position from where the gradient flows (None, Left, Top, Right, or Bottom). The difference in color from its starting point to its end point is set in the runtime configuration Registry.dat using these settings:

default.gradient.redDelta 
default.gradient.greenDelta 
default.gradient.blueDelta

These settings only apply when the canvas background color has a specified value. Each specifies an integer value representing how much to add (or subtract) from the start value to reach the end color. The color range assumes a value between 0 and 255. Thus, if the start color had an RGB value of 150,150,150 and each of the Delta properties was set to 50, then the end color would be 200,200,200. Similarly, the properties can have negative values. As an example, if all were set to -50, the end color would be 100,100,100. Setting the red, green, blue Delta values to 0 or unset would result in no change to the color. However, if left unset and the canvas background color is unset (<Unspecified>) the colorscheme colors are used and the gradient will go from OLAFDark to OLAFVeryLight.

Description of customize_gradient-png.png follows
Description of the illustration customize_gradient-png.png

Using this feature in cases where a hidden stacked canvas that is larger than the main canvas and is shown later in the session’s life is not recommended. This is because the gradient fill pattern is drawn only at initial startup. Altering the view area at runtime may result in an incomplete gradient flow. It should be noted that using a gradient in both the content and stacked canvas will result in color transitioning not being in sync with each other. This is because the coloring on one canvas is unrelated to the coloring on another. Additional usage and limitation information can be found in the Form Builder Help.

Managing Application Fonts

You can use Fusion Middleware Control to change the default font and font settings in the Registry.dat file.

All font names are Java Font names. Each of these parameters represents the default property to use when none is specified.

To change the font settings for a deployed application:

  1. Start Fusion Middleware Control.
  2. From the Forms menu list, select Font and Icon Mapping.
  3. Change any of the settings described in the following table to reflect your desired font settings:

    Table -23 Default Font Values

    Property Default Value Description
    default.fontMap.appFontnames Courier New, Courier,courier,System, Terminal,Fixedsys,Times, Times New Roman,MS Sans Serif,Arial

    Default Font Face mapping. Represents a comma delimited list of application font names.

    The number of entries in the appFontname list should match the number in the javaFontname list. The elements of the list are comma separated and all characters are taken literally; leading and trailing spaces are stripped from Face names.

    Notice that this file uses the Java 1.1 font names to handle the NLS Plane.

    default.fontMap.defaultFontname Dialog Represents the default Java fontName
    default.fontMap.defaultMapping FULL

    Values are FULL, PARTIAL, and NONE.

    • If set to FULL, the Java font mapping mechanism is used. Application specified fonts are mapped to the Java fonts.

      If a specified Java font is not found in the appFontnames (default.fontMap.appFontnames) list, then the default Java font (defined in default.fontMap.defaultFontname) is used.

    • If set to PARTIAL, the Java font mapping mechanism is used. If an application specified font is not found in the appFontnames list, Forms attempts to use the application specified font.
    • If set to NONE, the Java font mapping mechanism is not used. The application specified font name is passed directly to Java and Forms will attempt to use it.
    default.fontMap.defaultSize 900 Represents the default fontSize. Note that the size is multiplied by 100; for example, a 10pt font has a size of 1000.
    default.fontMap.defaultStyle PLAIN Represents the default fontStyle, PLAIN or ITALIC.
    default.fontMap.defaultWeight PLAIN Represents the default fontWeight, PLAIN or BOLD.
    default.fontMap.javaFontnames MonoSpaced, MonoSpaced,MonoSpaced, Dialog,MonoSpaced,Dialog, Dialog,Serif,Serif, Dialog,Sans Serif Represents a comma delimited list of Java font names.

    For example, to change your default font to Times New Roman, replace Dialog with Times New Roman.

    You can change the default font face mappings:

    default.fontMap.appFontnames=Courier New,Courier,
    courier,System,Terminal,Fixed,Fixedsys,Times,Times New Roman,
    MS Sans Serif,Arial
    default.fontMap.javaFontnames=MonoSpaced,MonoSpaced,MonoSpaced,Dialog,
    MonoSpaced,Dialog,Dialog,Serif,Serif,Dialog,SansSerif
    

    Note:

    Some fonts may not be supported in Java. For this reason you can specify (map) Java-supported fonts that appear when a non-supported font is encountered. In the previous sample, each font in default.fontMap.appFontnames corresponds to a font in default.fontMap.javaFontnames.
  4. Click Apply to save the changes.

Using User Installed Fonts

Applications that have explicitly declared font faces can take advantage of fonts installed on the user's machine that have that font installed locally.

For example, if the application has Forms objects—like text item, button, and so on—and those items have been defined by the developer to use a font named "Times New Roman" for their labels, those items will appear at runtime using that named font if they are detected on the user's machine.

To enable this functionality, set the Registry.dat parameter default.fontMap.defaultMapping to one of these three possible values:

  • full: (default) The Java font mapping mechanism is used. If a specified font is not found in the appFontnames list, the default font is used (as defined by the defaultFontname parameter in Registry.dat).
  • partial: The Java font mapping mechanism is used. If a specified font is not found in the appFontnames list, the requested font is passed directly to Java and Java attempts to use the specified font (if found on the user's machine).
  • none: The Java font mapping mechanism is not used. The requested font is passed directly to Java and Java attempts to use the specified system font (if found on the user's machine).

Deploying Application Icons, Images or Audio Files

When deploying an Oracle Forms application, the icon and image files used must be in a Web-enabled format, such as JPG or GIF (GIF is the default format). The same is true of audio files. For supported Audio files formats, please refer to the Java JFX documentation at https://docs.oracle.com/javafx/2/api/javafx/scene/media/package-summary.html#SupportedMediaTypes.

By default, the icons are found relative to the DocumentBase directory. That is, DocumentBase looks for images in the directory relative to the base directory of the application start HTML file. As the start HTML file is dynamically rendered by the Forms servlet, the Forms webapp's directory becomes the document base. The Forms webapp's directory is located at $DOMAIN_HOME/servers/WLS_FORMS/tmp/_WL_user/formsapp_14.1.2/<random string>/war.

For example, if an application defines the icon location for a button with myapp/<iconname>, then the icon is looked up in the directory forms/myapp.

To change the default location, set the imageBase parameter to codebase in the Web Configuration page of Fusion Middleware Control. Alternatively, you can change the default.icons.iconpath value of the Registry.dat file in the $DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS/applications/formsapp_14.1.2/config/oracle/forms/registry directory.

Setting the imageBase parameter to codebase enables Oracle Forms to search the forms/java directory for the icon files. Use this setting if your images are stored in a JAR file. Changing the image location in the Registry.dat configuration file is useful to store images in a central location independent of any application and independent of the Oracle Forms installation.

For audio files the concept is similar to the above, however mediaBase cannot be overridden by entries in Registry.dat. For audio files stored in JAR files, set mediaBase=codeBase in formsweb.cfg.

Storing Icons, Images, or Audio Files in a Java Archive File

If an application uses custom icons, images, or audio files, it is recommended you store them in a Java archive file and set the imageBase value to codebase (and mediaBase=codeBase if including audio files). The files can be packaged into a Java archive using the jar command of any Java Development Kit (Java JDK), so long as its version is the same or older than the version expected to be used on the end-user machine. Also, JAR files must be signed with a trusted certificate. For more information on how to create a JAR file, see Creating a JAR File for Icon, Images, and Audio Files.

In order for Oracle Forms to access the icon files stored in this archive, the archive must be stored in the forms/java directory. Also, the name of the archive file must be part of the ARCHIVE parameter used in the custom application section of the Web Configuration (formsweb.cfg) file.

If the application is running with Java Web Start (JWS), you must reference custom JAR files in extensions.jnlp, which is found in the forms/java directory. JWS will not read the value of the ARCHIVE parameter. This file must be manually edited (in a text editor). Be sure to stop the Forms managed server before editing. When the initial application starts, the JAR file is downloaded and stored in cache on the client until the archive file is changed.

For information on how to create JAR files, see Custom JAR Files Containing Icons and Images, and Audio Files.

Note:

Oracle Forms default icons (for example, icons present in the default smart icon bar) do not require deployment, as they are part of the frmall.jar file.

Adding, Modifying, and Deleting Icon Mappings

Use Fusion Middleware Control to add icon changes to the Registry.dat file used by your application.

To add icon mappings:

  1. Start Fusion Middleware Control.
  2. From the Forms menu, select Font and Icon Mapping.
  3. Click Add.

    The Add dialog appears.

  4. Enter the name, value, and an optional comment.
  5. Click Create to create the mapping.

    The mapping is added to the list.

  6. Click Apply to save the changes.

To modify icon mappings:

  1. From the Font and Icon Mapping region, select the mapping you want to modify.
  2. Change the name and value of the mapping. For example,
    • Modify the iconpath parameter specifying your icon location:

      default.icons.iconpath=/mydir

      (for an absolute path)

      or

      default.icons.iconpath=mydir

      (for a relative path, starting from the DocumentBase Directory)

    • Modify the iconextension parameter:

      default.icons.iconextension=gif

      or

      default.icons.iconextension=jpg

  3. Click Apply to save and activate the changes.

To delete an icon mapping:

  1. From the Font and Icon Mapping region, select the mapping you want to delete.
  2. Click Delete.
  3. The selected icon mapping is deleted.
  4. Click Apply to save or Revert to discard the changes.

To reference the application file:

In a specific named configuration section in the Web Configuration (formsweb.cfg), modify the value of the serverApp parameter and set the value to the location and name of your application file.

For example:

[my_app]

ServerApp=http://example.com/appfile/myapp

(for an absolute path)

or

[my_app]

ServerApp=appfile/myapp

(for a relative path, relative to the CodeBase directory)

Table -24 describes the correct locations where to place your application icons:

Table -24 Icon Location Guide

Icon Location When How
DocumentBase Default. Applications with few or no custom icons. Store icons in forms webapp's directory or in a directory relative to it. The forms webapp's directory is located at $DOMAIN_HOME/servers/WLS_FORMS/tmp/_WL_user/formsapp_14.1.2/<random string>/war.
Java Archives Applications that use many custom icons. Set ImageBase to codebase, create Java archive file for icons, and add archive file to the archive parameter in formsweb.cfg.
Registry.dat

Applications with custom icons that are stored in a different location as the Oracle Forms install (can be another server).

Useful to make other changes to the Registry.dat file such as font mapping.

Copy Registry.dat and change ServerApp parameter in formsweb.cfg.

Splash screen and Background Images

When you deploy your applications, you have the ability to specify a splash screen image (displayed during the connection) and a background image file.

Those images are defined in the HTML file or you can use the Web Configuration page in Fusion Middleware Control:

<PARAM NAME="splashScreen" VALUE="splash.gif">

<PARAM NAME="background" VALUE="back.gif">

The default location for the splash screen and background image files is in the DocumentBase directory containing the baseHTML file.

Note:

Image formats for splash screens and icons are the standard formats that are supported by java.awt.Image. For information about java.awt.Image, see Java Advanced Imaging (JAI) API in http://www.oracle.com/technetwork/java/index.html.

Custom JAR Files Containing Icons and Images, and Audio Files

Each time you use an icon or an image (for a splash screen or background), an HTTP request is sent to the Web server. To reduce the HTTP round-trips between the client and the server, you have the ability to store these files in a Java archive (JAR) file. Using this technique, only one HTTP round-trip is necessary to download the JAR file.

Creating a JAR File for Icon, Images, and Audio Files

The Java JDK comes with an executable called jar. This utility enables you to store files inside a Java archive, as described in https://docs.oracle.com/javase/8/docs/technotes/tools/windows/jar.html.

For example:

jar -cvf myico.jar Splash.gif Back.gif icon1.gif

This command stores three files (Splash.gif, Back.gif, icon1.gif) in a single JAR file called myico.jar.

Note:

Java JAR files must be signed with a trusted certificate to be accessible at runtime without displaying additional security warnings. See https://docs.oracle.com/javase/tutorial/deployment/jar/signindex.html.

Using Files Within the JAR File

The default search path for the icons and images is relative to the documentBase. However, when you want to use a JAR file to store those files, the search path must be relative to the codebase directory, the directory which contains the Java applet.

To use a JAR file to store files, you must specify that the search path is relative to codebase using the imageBase parameter in the Web Configuration or HTML file.

This parameter accepts two different values:

  • documentBase The search path is relative to the documentBase directory. If no value is specified for imageBase, then the value of documentBase is used.

  • codeBase The search path is relative to the codeBase directory, which gives the ability to use JAR files.

In this example, we use a JAR file containing the icons and we specify that the search should be relative to codeBase. If the parameter imageBase is not set, the search is relative to documentBase and the icons are not retrieved from the JAR file.

For example (formsweb.cfg):

archive=frmall.jar, icons.jar

imageBase=codeBase

For audio files, set mediaBase=codeBase.

Customizing Smart Bar Size

Oracle Forms application Smart Bar size and its icons can now be customized to fit different icon sizes. This helps the tool bar icons to expand or re-size proportionally when Oracle Forms application is running on a monitor with a higher resolution or DPI.

In earlier releases, unlike other objects in a Form, you could not customize, set, or scale the default size of the Smart Bar and its icons with clientDPI.

The current default height of the Smart Bar can fit icons of 16x16 pixel size. To customize or set the height of the Smart Bar to allow larger icons, a new applet parameter smartBarHeight has been added. Use the smartBarIconScaling parameter can be used in conjunction with the smartBarHeightparameter to specify if icons (when smaller) should be scaled to fit. For more information on these parameters, refer to Web Configuration Parameters.

A value of DYNAMIC mean that the Smart Bar inherits whatever value is provided in clientDPI settings. As a result the Smart Bar and the default icons size, like other objects in a Form, scale proportionately with clientDPI settings. If clientDPI settings is specified but the parameter value of smartBarHeight is not set, Smart Bar will not scale proportionately with clientDPI, and the default small size of Smart Bar and icons will be displayed.

Note:

The icons shipped with Forms for use in default Menu or Smart Bar will not be modified. If you want to set medium or large parameter value for smartBarHeight, you have to create your own customized menu bar and icons, that is icons with large pixel size, rather than using the default menu bar and Smart Bar icons shipped with Forms.

Customizing UI Borders

You can customize the borders of some UI items such edit items, display items, poplists, combo-boxes, tlists, and images using border settings in Registry.dat.

These settings let you control which borders are displayed as well as default, rollover, and highlight color for these borders.

Setting UI Borders

Draw one or more borders for items such as edit items, display items, poplists, combo-boxes, tlists, and image when using the Oracle look-and-feel. After you set which borders you want to display, specify which fields use these values through a builder property.

Set borders in Registry.dat using these variables: default.border.right, default.border.left, default.border.top, and default.border.bottom. These variables take Boolean values. The default is TRUE. See Registry Settings for more details.

For example, to set the borders so that the item looks like an underlined field, set default.border.bottom to TRUE and set the other three to FALSE. You'll then have to set the builder property for the items which should have this appearance.

Once you've set the registry variables for an item, set a builder property to specify whether a field uses these values. If the Specified Border Sides property is set to FALSE (the default), item bevels appear normally. For example, PLAIN bevels appear as a rectangle around the field, raised or lowered bevels have three dimensional appearance, and so on.

If Specified Border Sides is set to TRUE, then the item will appear to have a PLAIN bevel on those sides that are displayed.

This property can also be set and retrieved through plsql using SET_ITEM_PROPERTY and GET_ITEM_PROPERTY. The property to be used in plsql is BORDER_SIDES.

The XML converter has also been updated so that if you run the converter with COMPAT_VERSION set to 12.2.1.4.0, the XML file that gets generated won't include this property. This means that the XML can be read by an older version of the XML converter to create an fmb file that can be properly read by an older builder.

Testing UI Borders

When testing UI border appearance, keep the following in mind:

  • Verify that each of the values takes effect as expected and that various combinations also work as expected. For example, setting left and bottom borders should show lines on the left and bottom of the field but not the top or right.
  • A missing or invalid value for any of the registry entries should be ignored and treated as TRUE.
  • This should impact items with any bevel style but only those items that have the new property turned on (either from the builder or through plsql) should get partial borders, otherwise they should continue to get the full border drawn with the specified bevel.
  • Dynamically turning this property on or off should have the expected behavior.
  • Dynamically changing the bevel to or from PLAIN should have the expected effect for items that don't have this property set. For items that do have it set, the appearance of the bevel shouldn't change.
  • This should work for edititems, display items, poplists, combo boxes, tlists and images.
  • This should work for single-line and multi-line (with or without a scroll bar) text items.
  • Because of the way borders are created as class variables rather than instance variables, if you change some of these values in Registry.dat, you'll need to close the browser or run in a new JVM on the client before you will see the changes take effect.
  • If this is used in conjunction with the new feature that allows edge-coloring to be specified, these partial borders should correctly pick up the edge coloring for fields that have that functionality specified (and use the default coloring for other fields).

Setting Border Colors

Specify a color for text-item, display-item, poplist, combobox, tlist, and image borders when using the Oracle look-and-feel.

Set the border color in Registry.dat using default.border.color. This variable takes comma-separated, RGB values such as "0,255,0". If the variable is not set or if the setting is invalid, the border color defaults to "red". See Registry Settings for more details.

If this variable is set, borders appear in the specified color rather than the default color of the current color scheme. Borders also appear to be PLAIN as opposed to whatever the specified bevel might have been.

Note:

This setting can be used in conjunction with border display variables. If border color and border display variables are set, only the displayed borders appear in the specified color. See Setting UI Borders.

Once you've set the registry variable for an item, set a builder property to specify whether a field uses this value. The Show Border Color builder property determines whether the border color is a applied to the item's borders. This property takes a Boolean value. If the property is set to TRUE, then the border appears in the specified color.

This property affects text-item, display-item, poplist, combo box, tlist, and image item types including both single and multi-line fields.

This property can also be set through SET_ITEM_PROPERTY and retrieved through GET_ITEM_PROPERTY using the pslql constant BORDER_COLOR. ER 33471569 now allows various OLAF color names to be used as well as RGB values.

The XML converter has also been updated so that if you run the converter with COMPAT_VERSION set to 12.2.1.4.0, the XML file that gets generated won't include this property. This means that the XML can be read by an older version of the XML converter to create an fmb file that can be properly read by an older builder.

Testing UI Borders

When testing border color appearance, keep the following in mind:

  • Confirm it works properly for edit items (both single and multi-line, including with or without a scroll bar) as well as display items, poplists, combo boxes, tlists and images.
  • Make sure it doesn't cause problems for any other item types
  • Make sure that this works regardless of what the bevel-style is set to, the bevel/border will appear PLAIN (but colored) if this is enabled.
  • Confirm that if partial borders are turned on, that it combines the coloring and partial borders correctly. This includes dynamically setting this value as well as dynamically setting the partial border support on/off for the item when this property is on.
  • Test that for display-items, this correctly works if the value is changed from a single-line value to a multi-line value (or vice-versa). Specifically, does the highlighted border persist when that change happens?
  • Need to confirm that the interaction between this property and the highlight border mentioned below works as expected. (For example, if I turn on highlight on an item it should use that color, and when I turn off highlight it should go back to the specified color for this (assuming border coloring is enabled).
  • Verify that the right thing happens when the window is made inactive

Setting Rollover Border Colors

Specify a color to display text-item, display-item, poplist, combobox, tlist, and image borders when the user mouses over the item.

Set the border color in Registry.dat using default.border.rolloverColor. This variable takes comma-separated, RGB values such as "0,255,0". If the variable is not set or if the setting is invalid, the border color defaults to "red". See Registry Settings for more details.

When this variable is set, the rollover border color is displayed on mouse over regardless of the BEVEL setting of the item. Only those borders that are set for display show the rollover border color.

Note:

This setting can be used in conjunction with border display variables. If rollover color and border display variables are set, only the displayed borders appear in the specified color on mouse over. See Setting UI Borders.

Once you've set the registry variable for an item, set a builder property to specify whether a field uses this value. The Rollover Border Color builder property determines whether the rollover color is a applied to the item's borders on mouse over. This property takes a Boolean value. If the property is set to TRUE, then the border appears in the specified color when the mouse is over the item.

This property affects text-item, display-item, poplist, combo box, tlist, and image item types including both single and multi-line fields.

The rollover border color only appears for items which are enabled. Disabled items don't show the rollover color. This also means that, if a modal window is shown, the rollover border coloring won't work for items not in that window, since they are effectively disabled while the modal window is visible.

This property can also be set through SET_ITEM_PROPERTY and retrieved through GET_ITEM_PROPERTY using the pslql constant BORDER_ROLLOVER. ER 33471569 now allows various OLAF color names to be used as well as RGB values.

The XML converter has also been updated so that if you run the converter with COMPAT_VERSION set to 12.2.1.4.0, the XML file that gets generated won't include this property. This means that the XML can be read by an older version of the XML converter to create an fmb file that can be properly read by an older builder.

Note:

Note that the interaction between this mechanism and the other border color related features mentioned in this document can be a little tricky (specifically if someone changes some of the properties/turns on the highlighting while the mouse is over the item). Thus, if a change is made that chat would change the appearance of the border (highlighting is turned on, the bevel is changed, etc.) that change will appear, and nothing will happen when the mouse leaves the item. The next time the mouse enters the item again, the rollover affect will happen again (assuming it is still enabled for the item).

When testing this feature, among the aspects that should be tested we need to be sure to include:

  • Confirm it works properly for edit items (both single and multi-line) and display-items, poplists, comboboxes, tlists and images. Note that when the mouse is over the scroll bar of a multi-line text-field, it will be treated as not in the item. Unfortunately, there is nothing we can do about that, so it is a minor limitation we will have to live with.
  • Make sure it doesn't cause problems for any other item types
  • Make sure that this correctly works if partial borders are enabled.
  • Need to test that for display-items, this correctly works if the value is changed from a single-line value to a multi-line value (or vice-versa). Specifically, does the highlighted border persist when that change happens?
  • Need to confirm that the interaction between this property and the other border properties works as expected, particularly when one of the properties is changed while the mouse is over the item (and thus has temporarily changed the border appearance).

Setting Border Highlight Colors

Specify a highlight color to display text-item, display-item, poplist, combobox, tlist, and image borders.

Set the highlight border color in Registry.dat using default.border.highlightColor. This variable takes comma-separated, RGB values such as "0,255,0". If the variable is not set or if the setting is invalid, the border color defaults to "red". See Registry Settings for more details.

To highlight a border, set SET_ITEM_PROPERTY(BORDER_BEVEL) and SET_ITEM_INSTANCE_PROPERTY(BORDER_BEVEL) to HIGHLIGHTED. Setting the bevel to HIGHLIGHTED instructs the client to draw the border using the default.border.highlightColor color value.

You can use this feature highlight items that have failed validation. Note that just like the normal border coloring, this coloring is maintained even if the window is made inactive, for example, if an alert or other window is raised. In the case of the window being inactive, the appearance will change slightly, but it will still be distinguishable as a highlighted field.

Note:

OLAF color names, such as "OLAFLight" and "OLAFDark", can be used as well as RGB values.

When testing this feature, among the aspects that should be tested we need to be sure to include:

  • Confirm it works properly for edit items (single and multi-line) as well as display-items, poplists, comboboxes, tlists and images.
  • Make sure it doesn't cause problems for any other item types
  • Make sure it works properly both for set_item_property and set_item_instance_property
  • Make sure that changing from one bevel to another (without ever using the HIGHLIGHTED value) still works correctly (this is because of the implementation, we need to make sure that setting the bevel to null (which we do when 'clearing' the color that we might have previously set) doesn't cause any problems.
  • Changing the Registry value and running a form again should pick up the new color appropriately without needing to restart the browser (we create a different borderpainter for each color that we try to use, as opposed to just having one 'highlighted' borderpainter.
  • Need to test that for display-items, this correctly works if the value is changed from a single-line value to a multi-line value (or vice-versa). Specifically, does the highlighted border persist when that change happens?
  • If an item (or instance) has been set to be HIGHLIGHTED, GET_ITEM_PROPERTY and GET_ITEM_INSTANCE_PROPERTY should return 'HIGHLIGHTED' as the bevel value when appropriate.

Registry Settings

This section describes Forms registry settings.

These notes apply to the following table:

  • Required: An environment variable is required if Forms requires a non-null value in order to function correctly.
  • Valid values: In a few cases, these are listed explicitly, but in most cases they can be inferred from the description.

    If the description implies that the value is Boolean (for example, it states Specifies whether), the valid values are TRUE, True, true, T, t, YES, Yes, yes, Y, y, 1, or FALSE, False, false, F, f, NO, No, no N, n, 0, (case-sensitive), unless indicated otherwise. Numeric values should be integers specified as decimal numbers, optionally followed by K, M, G, or T [powers of 1024, not 1000], unless indicated otherwise. The elements in lists of files or directories should be separated by ':' [Unix] or ';' [Windows] unless indicated otherwise.

  • Default: If specified, this is the non-null value that produces the same behavior as not specifying a value. If omitted, the implication is that the default value is null.

Table -25 Additional Registry.dat Settings

Property Default Value Description
default.tabLabel.selectedColor  

Specifies the label color of the selected tab using RGB color values; for example: 255,255,0 (yellow). Each of the R, G, or B primaries can have a value in the range from 0 to 255.

If no values are specified, or the setting is invalid, the selected tab uses the default color.

Note:

This setting is only supported when using the Oracle look-and-feel, and will be ignored when using the generic look-and-feel.
default.tabLabel.unselectedColor  

Specifies the label color of the unselected tabs using RGB color values; for example: 255,255,0 (yellow). Each of the R, G, or B primaries can have a value in the range from 0 to 255.

If no values are specified, or the setting is invalid, unselected tabs uses the default color.

Note:

This setting is only supported when using the Oracle look-and-feel, and will be ignored when using the generic look-and-feel.

default.border.right

default.border.left

default.border.top

default.border.bottom

True

Specifies whether the sides of an item (edit items, display items, poplists, combo-boxes, tlists, image items) display a border. These settings take Boolean values.

default.concealedData.character

* (asterisk)

Specifies the character to display in a conceal-data field, including the password field in the Logon dialog, to represent the hidden characters being typed.

If the value specified is longer than one character, the first character in the value is used.

For special characters, specify the Unicode character value for the character preceded by \u. For example, to use a small dot, enter \u2022. For a large dot, enter \u25cf.

If the property isn't specified in Registry.dat, or has an empty value, then * (asterisk) is used.

If you change the value in Registry.dat, you'll need to restart your browser in order to get a new JVM for the changes to take effect.

Note:

"Default" in the registry setting, default.concealedData.character refers to the application name. Specifying a different application name can allow for a different character to be used for each application.
default.fontMap.defaultMapping FULL

Controls how font handling is managed. Values are FULL, PARTIAL, and NONE.

  • If set to FULL, the fontmapping mechanism is used. If a specified font is not found in the appFontnames list, the default font is used.
  • If set to PARTIAL, the fontmapping mechanism is used. If a specified font is not found in the appFontnames list, the requested font is passed directly to Java, and Java attempts to use the specified font.
  • If set to NONE, the fontmapping mechanism is not used. The requested font is passed directly to Java, and Java attempts to use the specified font.
default.icons.style  

Specifies which set of icons and images is used by Forms.

A new set of PNG images, including for the Forms runtime smart bar and alert icons, have been included with 14.1.2.0.0. To revert to the older GIF images stored in the Forms jarfile (frmall.jar), set default.icons.style to "legacy".

In addition to new PNG files for the GIFs that are used in the Forms smart bat, new PNG files have also been provided for the Oracle logos that are provided for the menu bar, the splash screen, and the background image. Additionally, PNG files have also been provided for EWT alerts (error, warning, info) so that if the new style icons are being used, alerts will also have the new appearance.

Note:

Some icons are loaded before the registry is read. For this reason, these icons use the new PNG files even if the new registry value is set to "legacy". These include the splash screen, the logo in the menu bar, and the background image.