Author: remi
Date: 2009-09-28 01:37:12 +0200 (Mon, 28 Sep 2009)
New Revision: 5505

Modified:
   
software_suite_v3/smart-core/smart-server/trunk/util/applicationserver/gadget/Gadget.py
   
software_suite_v3/smart-core/smart-server/trunk/util/applicationserver/plugin/PluginParameter.py
Log:
* Added translation overriding for gadgets

Modified: 
software_suite_v3/smart-core/smart-server/trunk/util/applicationserver/gadget/Gadget.py
===================================================================
--- 
software_suite_v3/smart-core/smart-server/trunk/util/applicationserver/gadget/Gadget.py
     2009-09-27 23:28:42 UTC (rev 5504)
+++ 
software_suite_v3/smart-core/smart-server/trunk/util/applicationserver/gadget/Gadget.py
     2009-09-27 23:37:12 UTC (rev 5505)
@@ -60,6 +60,8 @@
                 else:
                     if os.name == "nt":
                         gadgetParameter.setVisible('false')
+            # Set gadget as parent for translations
+            gadgetParameter.setParentForTranslations(self)
             self.__parameters.append(gadgetParameter)
         # Set the default value and visibility of the parameters
         if dictionary.has_key('parameters'):
@@ -435,9 +437,12 @@
             SUPPORTED_LANGUAGES_LIST.append(language)
         for language in SUPPORTED_LANGUAGES_LIST:
             i18n = I18n()
-            i18n.setPoDirectory(self.__workingPath)
             i18n.setLocale(language)
+            
i18n.setPoDirectory(os.path.join(self.__parentPlugin.getWorkingPath(),
+                "resources"))
             i18n.update()
+            i18n.setPoDirectory(self.__workingPath)
+            i18n.update()
             self.__i18nList[language] = i18n
 
     # 
--------------------------------------------------------------------------

Modified: 
software_suite_v3/smart-core/smart-server/trunk/util/applicationserver/plugin/PluginParameter.py
===================================================================
--- 
software_suite_v3/smart-core/smart-server/trunk/util/applicationserver/plugin/PluginParameter.py
    2009-09-27 23:28:42 UTC (rev 5504)
+++ 
software_suite_v3/smart-core/smart-server/trunk/util/applicationserver/plugin/PluginParameter.py
    2009-09-27 23:37:12 UTC (rev 5505)
@@ -26,6 +26,7 @@
         @param dictionary: Parameter as dictionary.
         """
         self.__parent = parent
+        self.__parentForTranslations = parent
         self.__dictionary = dictionary
         self.__name = None
         self.__type = None
@@ -105,6 +106,15 @@
         return self.__parent
 
     # 
--------------------------------------------------------------------------
+    # Set the parent object for translations.
+    # 
--------------------------------------------------------------------------
+    def setParentForTranslations(self, parent):
+        """Set the parent object for translations.
+        @param parent: Gadget or Plugin object.
+        """
+        self.__parentForTranslations = parent
+
+    # 
--------------------------------------------------------------------------
     # Get the parameter data as dictionary.
     # 
--------------------------------------------------------------------------
     def getDictionary(self):
@@ -143,7 +153,7 @@
         if language == None:
             return self.__defaultValue
         else:
-            return self.__parent.tr2(language, self.__defaultValue)
+            return self.__parentForTranslations.tr2(language, 
self.__defaultValue)
 
     # 
--------------------------------------------------------------------------
     # Set the default value.
@@ -162,9 +172,9 @@
         @return: A string.
         """
         if language == None:
-            return self.__parent.tr(self.__description)
+            return self.__parentForTranslations.tr(self.__description)
         else:
-            return self.__parent.tr2(language, self.__description)
+            return self.__parentForTranslations.tr2(language, 
self.__description)
 
     # 
--------------------------------------------------------------------------
     # Get the translated name.
@@ -174,9 +184,9 @@
         @return: A string.
         """
         if language == None:
-            return self.__parent.tr(self.__name)
+            return self.__parentForTranslations.tr(self.__name)
         else:
-            return self.__parent.tr2(language, self.__name)
+            return self.__parentForTranslations.tr2(language, self.__name)
 
     # 
--------------------------------------------------------------------------
     # Get the category.
@@ -195,9 +205,9 @@
         @return: A string.
         """
         if language == None:
-            return self.__parent.tr(self.__enumValues)
+            return self.__parentForTranslations.tr(self.__enumValues)
         else:
-            return self.__parent.tr2(language, self.__enumValues)
+            return self.__parentForTranslations.tr2(language, 
self.__enumValues)
 
     # 
--------------------------------------------------------------------------
     # Get the untranslated value of an enumerated value.
@@ -214,9 +224,13 @@
                 idx = i
                 break
         if idx != -1:
-            return self.__enumValuesList[idx]
+            try:
+                result = self.__enumValuesList[idx]
+            except:
+                result = translatedValue
+            return result
         else:
-            return self.__enumValuesList[0]
+            return translatedValue
 
     # 
--------------------------------------------------------------------------
     # Get the minimal value.


------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
Tux-droid-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tux-droid-svn

Reply via email to