office-gobmx/icon-themes
Alexander Wilms 3fad87a2df Added Tango icons
Change-Id: I383a631961e2db1e0eb92e78995c9e8c4b232264
2012-09-15 23:33:31 +02:00
..
classic
crystal
galaxy
hicontrast
human
industrial
oxygen
tango
tango_testing Added Tango icons 2012-09-15 23:33:31 +02:00
README

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
packimages/ module.

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.

- Add its name (new_set) to WITH_THEMES variable in configure.in

- Add its gid to the Files section of gid_Module_Root_Brand in
  scp2/source/ooo/module_hidden_ooo.scp and add a corresponding File entry
  to scp2/source/ooo/file_ooo.scp (see for example
  gid_Brand_File_ImagesCrystal_Zip)

- 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::createFromAscii( "new_set" );
  and 
    else if ( rName == ::rtl::OUString::createFromAscii( "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

- FIXME: is this step still needed?
  Add all known localizations of the new item to svx/source/dialog/localize.sdf, e.g.
    svx	source\dialog\optgdlg.src	0	stringlist	OFA_TP_VIEW.LB_ICONSTYLE	6			0	cs	New set				2002-02-02 02:02:02
  the check box item will not be visible in the other localizations otherwise, see http://www.openoffice.org/issues/show_bug.cgi?id=74982

- 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.  (TODO: Check if this step is still necessary.)

- 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.