Display the repr() of non-string dictionary values.
authorTim Potter <tpot@samba.org>
Wed, 18 Sep 2002 08:16:22 +0000 (08:16 +0000)
committerTim Potter <tpot@samba.org>
Wed, 18 Sep 2002 08:16:22 +0000 (08:16 +0000)
(This used to be commit 3c6975c711d87755f0532147f9aaecb224159f43)

source3/python/gtkdictbrowser.py

index 6d6cdb3c8aece4b72d57a5b44dba8999249f7288..dd8bed8f47874fbc939c9c57b76c6c4997399550 100755 (executable)
@@ -116,16 +116,27 @@ class GtkDictBrowser:
 
     # Set the text to appear in the right hand side of the user interface 
 
-    def set_value_text(self, text):
-        self.text.delete_text(0, self.text.get_length())
+    def set_value_text(self, item):
 
-        # The text widget has trouble inserting text containing NULL
-        # characters.
+        # Clear old old value in text window
 
-        text = string.replace(text, "\x00", ".")
+        self.text.delete_text(0, self.text.get_length())
+        
+        if type(item) == str:
 
-        self.text.insert(self.font, None, None, text)
+            # The text widget has trouble inserting text containing NULL
+            # characters.
+            
+            item = string.replace(item, "\x00", ".")
+            
+            self.text.insert(self.font, None, None, item)
 
+        else:
+
+            # A non-text item
+            
+            self.text.insert(self.font, None, None, repr(item))
+            
     # This function is called when a key is selected in the left hand side
     # of the user interface.
 
@@ -246,7 +257,7 @@ def hex_string(data):
 
 if __name__ == "__main__":
 
-    dict = {"chicken": "ham", "spam": "fun"}
+    dict = {"chicken": "ham", "spam": "fun", "subdict": {"a": "b", "c": "d"}}
 
     db = GtkDictBrowser(dict)