Better None-handling in convert and propertyeditor
[hooke.git] / hooke / ui / gui / panel / propertyeditor.py
index 3bd571f24b443f3071f4e43e8f2201715ef8035b..5cc44690c3c8868d74c2eba549e1c274c1143625 100644 (file)
@@ -33,7 +33,7 @@ import wx.grid
 
 from . import Panel
 from ....plugin import argument_to_setting
-from ....util.convert import ANALOGS
+from ....util.convert import ANALOGS, to_string, from_string
 
 
 def props_from_argument(argument, curves=None, playlists=None):
@@ -102,12 +102,12 @@ class Property (object):
     def string_for_value(self, value):
         """Return a string representation of `value` for loading the table.
         """
-        return str(value)
+        return to_string(value, 'string')
 
     def value_for_string(self, string):
         """Return the value represented by `string`.
         """
-        return string
+        return from_string(string, 'string')
 
 
 class StringProperty (Property):
@@ -174,7 +174,7 @@ class IntProperty (Property):
         return wx.grid.GridCellNumberRenderer()
 
     def value_for_string(self, string):
-        return int(string)
+        return from_string(string, 'int')
 
 
 class FloatProperty (Property):
@@ -191,7 +191,7 @@ class FloatProperty (Property):
         return wx.grid.GridCellFloatRenderer()
 
     def value_for_string(self, string):
-        return float(string)
+        return from_string(string, 'float')
 
 
 class ChoiceProperty (Property):