On Oct 20, 2010, at 11:24 PM, Sergiu Dumitriu wrote:
> On 10/20/2010 10:21 AM, Vincent Massol wrote:
>> Hi,
>>
>> In order to implement support for icons/symbols in the rendering (see ), we
>> need to add an API to return an icon URL based on the icon name.
>>
>> public interface SkinAccessBridge
>> {
>> ...
>> /**
>> * @param iconName the standard name of an icon (it's not the name of
>> the file on the filesystem, it's a generic
>> * name, for example "success" for a success icon
>> * @return the URL to the icon resource
>> * @since 2.6M1
>> */
>> String getIconURL(String iconName);
>> }
>>
>> +1 from me.
>
> I don't think this is enough. We currently have only one implementation
> for this component, which uses only the current skin (as taken from the
> XWiki Context). This means that it won't support multiple icon sets.
>
> I'd rather introduce another component for IconTheme, which use the
> existing SkinAccessBridge#getSkinFile(full path to the icon). There will
> be several implementations for the IconTheme, the one active by default
> being based on silk/gif. We'll have to find a way to select the desired
> IconTheme to use (could be customized for each wiki in a farm, for each
> skin, for each user?).
>
> Each IconTheme would have a basePath ("resources/icons/silk/"), and by
> default each icon is mapped to the same filename, plus an extension. A
> custom mapping from icon names to filenames could be provided in a
> configuration file (standard .properties). If this is loaded as a
> ResourceBundle, there's no need to even code the default, since
> ResourceBundle.get("key") returns the unchanged key for undefined values.
>
> WDYT?
I generally agree about what you said.
It seems you're talking about the core skin module I've been thinking about for
a long time already. I've always postponed implementing it for lack of time and
more urgent things. I won't have time to work on it anytime soon unfortunately.
Thanks
-Vincent
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs