Code

Extensions. New context support in extensions (enum attribute only), should fix Bug...
authorJazzyNico <nicoduf@yahoo.fr>
Sat, 2 Oct 2010 15:51:34 +0000 (17:51 +0200)
committerJazzyNico <nicoduf@yahoo.fr>
Sat, 2 Oct 2010 15:51:34 +0000 (17:51 +0200)
po/inkscape.pot
share/extensions/split.inx
src/extension/param/enum.cpp

index ab8629e40b22b763fb5c9991a443df28676e5117..a2de67bed3ec388f0eb5a885da16cd614f81a1fe 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: inkscape-devel@lists.sourceforge.net\n"
-"POT-Creation-Date: 2010-10-02 11:32+0200\n"
+"POT-Creation-Date: 2010-10-02 17:43+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -258,7 +258,7 @@ msgstr ""
 #: ../share/extensions/pathalongpath.inx.h:7
 #: ../share/extensions/pathscatter.inx.h:10
 #: ../share/extensions/radiusrand.inx.h:6 ../share/extensions/scour.inx.h:11
-#: ../share/extensions/split.inx.h:4
+#: ../share/extensions/split.inx.h:2
 #: ../share/extensions/webslicer_create_group.inx.h:7
 #: ../share/extensions/webslicer_export.inx.h:6
 #: ../share/extensions/web-set-att.inx.h:6
@@ -874,7 +874,7 @@ msgstr ""
 msgid "Generate from Path"
 msgstr ""
 
-#: ../share/extensions/extrude.inx.h:3 ../share/extensions/split.inx.h:3
+#: ../share/extensions/extrude.inx.h:3
 msgid "Lines"
 msgstr ""
 
@@ -2212,7 +2212,7 @@ msgstr ""
 #. this->AddNewObjectsStyle(_page_lpetool, "/tools/lpetool");
 #. Text
 #: ../share/extensions/lorem_ipsum.inx.h:7
-#: ../share/extensions/replace_font.inx.h:10 ../share/extensions/split.inx.h:8
+#: ../share/extensions/replace_font.inx.h:10 ../share/extensions/split.inx.h:6
 #: ../share/extensions/text_braille.inx.h:2
 #: ../share/extensions/text_flipcase.inx.h:1
 #: ../share/extensions/text_lowercase.inx.h:1
@@ -3253,27 +3253,34 @@ msgstr ""
 msgid "r - Gear Radius (px):"
 msgstr ""
 
-#: ../share/extensions/split.inx.h:2
-msgid "Letters"
-msgstr ""
-
-#: ../share/extensions/split.inx.h:5
+#: ../share/extensions/split.inx.h:3
 msgid "Preserve original text"
 msgstr ""
 
-#: ../share/extensions/split.inx.h:6
+#: ../share/extensions/split.inx.h:4
 msgid "Split text"
 msgstr ""
 
-#: ../share/extensions/split.inx.h:7
+#: ../share/extensions/split.inx.h:5
 msgid "Split:"
 msgstr ""
 
-#: ../share/extensions/split.inx.h:9
+#: ../share/extensions/split.inx.h:7
 msgid "This effect splits texts into different lines, words or letters."
 msgstr ""
 
+#: ../share/extensions/split.inx.h:8
+msgctxt "split"
+msgid "Letters"
+msgstr ""
+
+#: ../share/extensions/split.inx.h:9
+msgctxt "split"
+msgid "Lines"
+msgstr ""
+
 #: ../share/extensions/split.inx.h:10
+msgctxt "split"
 msgid "Words"
 msgstr ""
 
index 63e0fd6ca57b4c5260f36dd485f1fd7417770f05..12e44301124ce89a6b0fe4468588f70a65e011c7 100644 (file)
@@ -7,9 +7,9 @@
        <param name="tab" type="notebook">
         <page name="Options" _gui-text="Options">
                <param name="splittype" type="enum" _gui-text="Split:">
-                       <_item value="line">Lines</_item>
-                       <_item value="word">Words</_item>
-                       <_item value="letter">Letters</_item>
+                       <_item msgctxt="split" value="line">Lines</_item>
+                       <_item msgctxt="split"  value="word">Words</_item>
+                       <_item msgctxt="split"  value="letter">Letters</_item>
                </param>
                <param name="preserve" type="boolean" _gui-text="Preserve original text">true</param>
         </page>
index 03c1f839b99c5a81deb39273f2504f84784cbf26..9ed5aac16b67b2bc1a7e55c9c8e84f2a0b64cb13 100644 (file)
@@ -63,12 +63,20 @@ ParamComboBox::ParamComboBox (const gchar * name, const gchar * guitext, const g
                 Glib::ustring newguitext, newvalue;
                 const char * contents = NULL;
                 if (node->firstChild()) contents = node->firstChild()->content();
-                if (contents != NULL)
+                if (contents != NULL) {
                     // don't translate when 'item' but do translate when '_item'
                        // NOTE: internal extensions use build_from_mem and don't need _item but
                        //       still need to include if are to be localized
-                     newguitext = !strcmp(chname, INKSCAPE_EXTENSION_NS "_item") ? _(contents) : contents;
-                else
+                    if (!strcmp(chname, INKSCAPE_EXTENSION_NS "_item")) {
+                        if (node->attribute("msgctxt") != NULL) {
+                            newguitext =  g_dpgettext2(NULL, node->attribute("msgctxt"), contents);
+                        } else {
+                            newguitext =  _(contents);
+                        }
+                    } else {
+                        newguitext =  contents;
+                    }
+                } else
                     continue;
 
                 const char * val = node->attribute("value");