mailr16397 - /branches/uf_redesign/gui/input_elements/sequence.py


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by edward on May 22, 2012 - 16:56:
Author: bugman
Date: Tue May 22 16:56:08 2012
New Revision: 16397

URL: http://svn.gna.org/viewcvs/relax?rev=16397&view=rev
Log:
The Sequence.GetValue() method now properly handles the Combo_list and single 
values.


Modified:
    branches/uf_redesign/gui/input_elements/sequence.py

Modified: branches/uf_redesign/gui/input_elements/sequence.py
URL: 
http://svn.gna.org/viewcvs/relax/branches/uf_redesign/gui/input_elements/sequence.py?rev=16397&r1=16396&r2=16397&view=diff
==============================================================================
--- branches/uf_redesign/gui/input_elements/sequence.py (original)
+++ branches/uf_redesign/gui/input_elements/sequence.py Tue May 22 16:56:08 
2012
@@ -236,27 +236,34 @@
         # The value.
         value = self._field.GetValue()
 
-        # Handle single values.
-        value_set = False
+        # Non Combo_list elements.
+        if self.element_type != 'combo_list':
+            # Handle single values.
+            value_set = False
+            if self.single_value:
+                try:
+                    value = self.convert_from_gui(value)
+                    value_set = True
+                except:
+                    pass
+
+            # Convert to a sequence, handling bad user behaviour.
+            if not value_set:
+                try:
+                    value = self.convert_from_gui_seq(value)
+                except RelaxError:
+                    if self.seq_type == 'list':
+                        value = []
+                    else:
+                        value = ()
+
+        # Convert sequences to single values as needed.
         if self.single_value:
-            try:
-                value = self.convert_from_gui(value)
-                value_set = True
-            except:
-                pass
-
-        # Convert to a sequence, handling bad user behaviour.
-        if not value_set:
-            try:
-                value = self.convert_from_gui_seq(value)
-            except RelaxError:
-                if self.seq_type == 'list':
-                    value = []
-                else:
-                    value = ()
+            if isinstance(value, list) or isinstance(value, tuple):
+                value = value[0]
 
         # Convert single values to sequences as needed.
-        if not self.single_value:
+        else:
             if self.seq_type == 'list' and not isinstance(value, list):
                 value = [value]
             elif self.seq_type == 'tuple' and not isinstance(value, tuple):




Related Messages


Powered by MHonArc, Updated Tue May 22 17:00:02 2012