I want to build my own company style into my application.
How can I "expand" the predefined styles tsOfficexxxx, tsOfficeyyyy by a style tsMyCompany?
Howto define the colors, gradients, ... for this case?
Is there a decription at any manual? I found ony description howto use styles, not howto implement a new one.
You can add your own style to the AdvStyleIF.pas file:
TTMSStyle = (tsOffice2003Blue, tsOffice2003Silver, tsOffice2003Olive, tsOffice2003Classic,
tsOffice2007Luna, tsOffice2007Obsidian, tsWindowsXP, tsWhidbey, tsCustom, tsOffice2007Silver, tsWindowsVista,
tsWindows7, tsTerminal, tsOffice2010Blue, tsOffice2010Silver, tsOffice2010Black, tsMyCompany);
After this is done, each component that you wish to have a layout as the tsMyCompany layout you need to add the tsMyCompany appearance settings to the SetComponentStyle procedure inside the component. Selecting the tsMyCompany style at runtime with an advappstyler will automatically change the style of the component.
Please note that implementing and recompiling new source code results in different BPL / DCP files that could possible interfere with a clean installation. A more convenient userfriendly way of adding styles is currently on our feature request list for investigation.
I'ts a lot of work to add "SetComponentStyle" to every component on a large application.
If I can't easy add my own style, can I "patch" a predefined style?
May be I can take e.g. style "tsWhidbey" and change some colors?
At which file the properties for e.g. tsWhidbey are defined?
Each component implements own appearance settings. The properties of (for example) a listbox are not the same for a button. Therefore each component must implemented its own SetComponentStyle.
Manually adding those styles is the currently only way.
We have added this for longterm investigation, to add a single way to update styles for different components.
If you plan to make "styiling" customizable, may i suggest a way to have "category" styles? Or a style index?
As example, what i mean is:
all buttons in the app which are "action button" will need to be blue
all buttons which are just "switching pages" are gray
all panels that works as "toolbar" are blue, with shadow,
all panels that are just "containers" have a blue-white gradient....
and so on.
I hope to have been clear....