| Icon repository for the applications |
| |
| All of the icons, separated by themes are included in this |
| directory. These icons are built into .zip files, and re-ordered / |
| packed for efficiency reasons based on our UI configuration by the |
| postprocess/CustomTarget_images.mk. |
| |
| An icon theme does not need to contain all images, since these can be |
| layered one on top of another. |
| |
| In general the layering is done like this: |
| |
| <leaf theme> |
| tango |
| industrial |
| galaxy |
| |
| The classic theme is left primarily for historical interest, rather |
| than intended to be packaged. |
| |
| |
| How to add a new image set: |
| --------------------------- |
| |
| - Create a directory for it here (let's call it e.g. new_set) |
| |
| FIXME: It is important to use an underscore '_' to delimit more words. |
| scp2 compilation crashes when using a dash '-'. |
| It evidently splits the name into two strings. |
| ^ It's probably not true anymore with filelists. |
| |
| - Add its name (new_set) to WITH_THEMES variable in configure.ac |
| |
| - Add a vcl constant for it in vcl/inc/vcl/settings.hxx, e.g. |
| #define STYLE_SYMBOLS_NEW_SET ((ULONG)5) |
| |
| - Map the vcl constant to its real name in |
| ::rtl::OUString StyleSettings::ImplSymbolsStyleToName( sal_uLong nStyle ) const |
| and |
| sal_uLong StyleSettings::ImplNameToSymbolsStyle( const ::rtl::OUString &rName ) const |
| both in vcl/source/app/settings.cxx, e.g. |
| case STYLE_SYMBOLS_NEW_SET: return ::rtl::OUString( "new_set" ); |
| and |
| else if ( rName == "new_set" ) |
| return STYLE_SYMBOLS_NEW_SET; |
| |
| - Add localized item names to 'ListBox LB_ICONSTYLE' to |
| 'StringList [ de ]' |
| and 'StringList [ en-US ]', e.g. |
| < "New set" ; > ; |
| both in cui/source/options/optgdlg.src |
| |
| - Add the new_set to 'SymbolsStyle' property |
| in officecfg/registry/schema/org/openoffice/Office/Common.xcs. |
| |
| - The default theme for various desktops (KDE, GNOME, ...) is defined in |
| ULONG StyleSettings::GetCurrentSymbolsStyle() const in |
| vcl/source/app/settings.cxx |
| |
| - The fallback for particular icons is defined be packimages_CUSTOM_FALLBACK_1 |
| in packimages/CustomTarget_images.mk |
| |
| |
| How to add a new icon for a new command: |
| ---------------------------------------- |
| |
| - Assume you defined a dispatch command in officecfg like the following: |
| |
| in officecfg/registry/data/org/openoffice/Office/UI/CalcCommands.xcu |
| |
| <node oor:name=".uno:OpenFromCalc" oor:op="replace"> |
| <prop oor:name="Label" oor:type="xs:string"> |
| <value xml:lang="en-US">~Open...</value> |
| </prop> |
| <prop oor:name="Properties" oor:type="xs:int"> |
| <value>1</value> |
| </prop> |
| </node> |
| |
| Here, you need to define a property named "Properties", with its value set |
| to 1 so that the icons show up. |
| |
| - Now, you need to add 2 new icon images under icon-themes/galaxy/cmd/, one |
| for the large size and one for the smaller size. The name of each image |
| must be lc_<command name>.png and sc_<command name>.png. Here, the command |
| name is the name given in the above .xcu file without the ".uno:" prefix and |
| all its letters lower-cased. In this example, the file names will be |
| lc_openfromcalc.png and sc_openfromcalc.png. Note that you need to add new |
| images to the galaxy theme for them to show up in any themes at all. |