Review Request: Preconfigurable plasmoids

David Palacio dpalacio at orbitalibre.org
Thu May 5 18:22:47 CEST 2011



> On April 28, 2011, 9:19 p.m., Aaron J. Seigo wrote:
> > an interesting idea, but the configuration values should not appear in the metadata.desktop file. it not only bloats up the # of keys we have, it doesn't scale to plasmoids with more/different configuration.
> > 
> > i think this would make more sense as a .desktop + a KConfigGroup (could even be in the same file?) that holds the complete default configuration that is then copied over after the applet is created.
> 
> David Palacio wrote:
>     I am making a DBusLauncher base plasmoid to see how far this can get. It faces one issue so far: How to make some entries in the [Configuration] group  translatable? (provided by the configuration desktop file). Some data should be translated (as user facing strings) and some other must not be translated (as resources identifiers).
> 
> David Palacio wrote:
>     (Note to self, this is not a chatroom)
>     
>     In Techbase an article describes a way to extract the wanted messages:
>     http://techbase.kde.org/Development/Tutorials/Localization/i18n_Build_Systems#Translating_.desktop_Files
>     
>     Also, KLocale seems to be the way to get the translated strings, if they exist in the language of interest.
>     
>     Is there a better method?
> 
> Aaron J. Seigo wrote:
>     yes, as long as the string has been translated, then in the code you can pass the QString to i18n and it will do its magic. the trick is that the translatable strings need to go into a translation (po) file, as noted in the link you provided from techbase.
>     
>     my first question, however, is "what strings in the configuration need to be translated?"

If I want to replicate showActivityManager functionality, I need to set a tooltip for it. The tooltip text strings need to be translated.

Some solutions:
1. Initially I thought of making the DBusLauncher applet load the translations itself, by introducing an extra setting that points to an appropiate catalog.

2. Load the translations in PluginLoader and set the translated strings in the applet configuration. This solution is much simpler and general, with the downside that the strings remain the same when the user changes the language settings.


- David


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/101251/#review2950
-----------------------------------------------------------


On May 4, 2011, 12:52 a.m., David Palacio wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/101251/
> -----------------------------------------------------------
> 
> (Updated May 4, 2011, 12:52 a.m.)
> 
> 
> Review request for Plasma.
> 
> 
> Summary
> -------
> 
> There is some code duplication in that some plasmoids share very much of program logic but actually differ in just a setting. E.g. the recently made ShowActivityManager plasmoid, which just is a DBus call launcher. The Icon plasmoid is an example of this made right. I'd like to have more generic plasmoids. Even better, I'd like to have an easy way to configure them.                                                                                                                                                                                            
>                                                                                                                                                                                                            
> Let's see the code. config.patch shows a way to load a config metadata file and fill a designated plasmoid with the configuration data (metadata.desktop). We search for a X-Plasma-ConfigApplet property that defines the plasmoid to configure and load. Additional properties define the plasmoid settings. This allows us, for example, to easily provide access to any webservice without code duplication.                                                                                                                                                        
> 
> 
> Diffs
> -----
> 
>   plasma/data/servicetypes/plasma-applet.desktop 8fabddb 
>   plasma/pluginloader.cpp 43a5b7c 
>   plasma/tests/CMakeLists.txt 1d04aa5 
>   plasma/tests/plasmoidconfigtest.h PRE-CREATION 
>   plasma/tests/plasmoidconfigtest.cpp PRE-CREATION 
> 
> Diff: http://git.reviewboard.kde.org/r/101251/diff
> 
> 
> Testing
> -------
> 
> Loading of plasmoids works.
> 
> Testcase: Install these widgets:
> http://kde-look.org/content/show.php/Label?content=99881
> http://kde-look.org/content/show.php?content=141270
> 
> Add configlabel to desktop.
> 
> 
> Thanks,
> 
> David
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/plasma-devel/attachments/20110505/787de270/attachment.htm 


More information about the Plasma-devel mailing list