This discussion is archived
4 Replies Latest reply: Feb 22, 2013 12:57 AM by sank_nk RSS

Changing current visual attribute property for the entire application

sank_nk Newbie
Currently Being Moderated
Hi All.
I want to change the current visual attribute color of my form at the application level, reason being i don't want to generate all the forms again from scratch.
I know that we can change this using visual attributes but is there a way to change this through some form setting?(Oracle 10g)
  • 2. Re: Changing current visual attribute property for the entire application
    WoMo Newbie
    Currently Being Moderated
    I do not understand you question.
    You can use "JDAPI" to programmatically change the visual attribute on every form.
  • 3. Re: Changing current visual attribute property for the entire application
    CraigB Guru
    Currently Being Moderated
    I know that we can change this using visual attributes but is there a way to change this through some form setting?(Oracle 10g)
    There are two settings in the formsweb.cfg that could help, but only if all of your foreground and background color settings are set to Undefined. The settings are: lookAndFeel=Oracle and colorScheme=<Choose Scheme> where "Choose Scheme is one of the following scheme's: Teal, Titanium, Red, Khaki, Blue, BLAF, SWAN, Olive, or Purple. The default is Teal.

    The fact that you are using a Visual Attribute for your Forms application color scheme tells me that you are not using the default "Undefined" color setting so changing the *colorScheme* setting will _not_ have the effect you want.

    Since you are using Visual Attributes (VA) to define colors, you will need to change the colors in your VA and then recompile your forms for the changes in the VA to be inherited in your forms. Sorry, that is just the way Forms works. Recompiling all of your forms due to this type of change is not that uncommon and is fairly painless if you have a shell script or batch file that compiles all of your forms for you. There are numerous posts in the forum about how to write a script that will do this, so if you don't have a script yet you can search forum for more details.

    The other option would be to build your own routine that would allow you to read an environment setting or pass the setting in the URL to select a color scheme. Then create a group of Visual Attributes used by these color schemes and apply them in each Form's Pre-Form or When-New-Form-Instance triggers. This is a lot of work, but it would give you the flexibility to change your application's color scheme without having to recompile your forms.

    Having said this, it begs the question - why not just use Oracle's predefined color scheme's or use the *lookAndFeel=Generic* setting so the user's desktop color scheme is inherited by your application.

    IMHO, Visual Attributes are best used to accent an application rather than define their _full_ color scheme. For example, I use VAs to highlight the current record and current item as well as highlight required items.

    As for using "JDAPI" as *WoMo* suggests is a design-time tool - not a runtime tool. Using JDAPI would require you to know Java and you will still have to recompile all of your forms using this tool.

    Craig...
  • 4. Re: Changing current visual attribute property for the entire application
    sank_nk Newbie
    Currently Being Moderated
    Thank you very much guys for your inputs

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points