summaryrefslogtreecommitdiff
path: root/GstInspector
diff options
context:
space:
mode:
authorRené Stadler <mail@renestadler.de>2009-01-02 01:08:17 +0100
committerRené Stadler <mail@renestadler.de>2009-02-07 23:07:40 +0200
commitb1cc779700568b441dface467720f95843d4a8f4 (patch)
tree6cdcf2a49072828358fcac37effa629fe3c144ac /GstInspector
parent98847b1dc72c00b4cdd473f4708f37a843486ea9 (diff)
Improve display of enum/flags values in properties page
Replaced the "Values" label with a switch between "Enum values" and "Flag values". Also show the integer constant of each enum/flag value now.
Diffstat (limited to 'GstInspector')
-rw-r--r--GstInspector/Data.py6
-rw-r--r--GstInspector/GUI/models.py16
2 files changed, 16 insertions, 6 deletions
diff --git a/GstInspector/Data.py b/GstInspector/Data.py
index 5e29e19..37316bc 100644
--- a/GstInspector/Data.py
+++ b/GstInspector/Data.py
@@ -763,6 +763,8 @@ class ValueData (DataObject):
__slots__ = ("description", "nickname", "value",)
+ value_type = None
+
def __getstate__ (self):
return (self.description, self.nickname, self.value,)
@@ -784,6 +786,8 @@ class EnumValueData (ValueData):
__slots__ = ()
+ value_type = "enum"
+
def __init__ (self, item):
value, enum = item
@@ -803,6 +807,8 @@ class FlagsValueData (ValueData):
__slots__ = ()
+ value_type = "flags"
+
def __init__ (self, item):
value, flags = item
diff --git a/GstInspector/GUI/models.py b/GstInspector/GUI/models.py
index 4a2b3a3..b66e185 100644
--- a/GstInspector/GUI/models.py
+++ b/GstInspector/GUI/models.py
@@ -213,12 +213,16 @@ class PropertiesModel (NameValueModel):
str (prop.maximum))
if prop.values:
- e_tree_iter = self.append (tree_iter)
- set_name_value (e_tree_iter, _("Values"), None)
- for data in prop.values:
- set_name_value (self.append (e_tree_iter),
- data.nickname,
- data.description)
+ value_type = prop.values[0].value_type
+ label = {"enum" : _("Enum values"),
+ "flags" : _("Flag values")}.get (value_type)
+ if label is not None:
+ e_tree_iter = self.append (tree_iter)
+ set_name_value (e_tree_iter, label, None)
+ for i, data in enumerate (prop.values):
+ set_name_value (self.append (e_tree_iter),
+ "%i: %s" % (data.value, data.nickname,),
+ data.description)
class SignalsModel (NameValueModel):