[Libreoffice] Icons

Joseph Powers jpowers27 at cox.net
Mon Nov 1 21:15:51 PDT 2010


I'm a little crazy, but I want to work on the icon issues.

I'm a programmer, so I've been looking at things from the other side...

Currently the system is a mess, the top level determines if if we're in high-contrast mode or not and then requests the correct image. On top of this, we have both themed and un-themed icons; thus, I can't just kill the high-contrast checks.

From your earlier e-mails, you've said that each theme has both standard icons and high-contrast icons; this has to change. However, I'm stuck trying to figure out how the code knows which icon file it's requesting. The un-themed icons in chart2 are easy to tack since I found the mapping files; however, I'm having issues with the themed icons.

I believe all the themes should be located the /artwork directory and we'll need to create a system for building/packaging them for inclusion into the project. We'll also need to determine a directory to house the installed themes. The current system of themes being hard coded into the build system needs to change; the users should be able to just drop a theme package and have the them auto-reconized on the change theme dialog.

I'm open to suggestions from any of the other developers.

I'm also in need of guidance in under standing the current icon packaging system.

As far as I can determine the biggest savings would be to do the changes in this order:

1. Remove the High-Contrast check from the themed icons.
	a) This should cut the themes in about half.
	b) Reduce a lot of code over head.
2. Move the un-themed icons in to the default themes. 
	a) This only removes some redundant code paths for retrieving icons.
	b) Removes the last of the High-Contrast checks.
	c) Will need to verify that the missing icon fall-back code actually works.
3. Make themes discoverable.
	a) No real savings, it's mostly a coolness factor. Plus it gives the graphics designers something to do so they leave the programmers alone.

Joe P.

More information about the LibreOffice mailing list