[rhmessaging-commits] rhmessaging commits: r2748 - mgmt/trunk/cumin/python/cumin.

rhmessaging-commits at lists.jboss.org rhmessaging-commits at lists.jboss.org
Wed Nov 5 16:35:57 EST 2008


Author: eallen
Date: 2008-11-05 16:35:57 -0500 (Wed, 05 Nov 2008)
New Revision: 2748

Modified:
   mgmt/trunk/cumin/python/cumin/widgets.py
   mgmt/trunk/cumin/python/cumin/widgets.strings
Log:
Changing the way the MoreOptions widget stores its parameter.

Modified: mgmt/trunk/cumin/python/cumin/widgets.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/widgets.py	2008-11-05 21:34:11 UTC (rev 2747)
+++ mgmt/trunk/cumin/python/cumin/widgets.py	2008-11-05 21:35:57 UTC (rev 2748)
@@ -547,7 +547,7 @@
     def get_title(self, state):
         return state in self.__titles and self.__titles[state]
 
-    def render_item_link(self, session, state, id=""):
+    def render_item_link(self, session, state, id="", bm=""):
         branch = session.branch()
         self.set(branch, state)
 
@@ -555,7 +555,7 @@
         hover = self.__hover[state]
         class_ = self.get(session) == state and "selected"
 
-        return fmt_link(branch.marshal(), title, class_, id=id, link_title=hover)
+        return fmt_link(branch.marshal(), title, class_, id=id, link_title=hover, bm=bm)
 
 class GroupSwitch(StateSwitch):
     def __init__(self, app, name):
@@ -1100,6 +1100,12 @@
         return self.name
 
 class MoreFieldSet(FieldForm, FormField):
+    def __init__(self, app, name):
+        super(MoreFieldSet, self).__init__(app, name)
+        
+        self.input = HiddenInput(app, "open")
+        self.add_child(self.input)
+
     def render_inputs(self, session, *args):
         return self.render_fields(session, *args)
 
@@ -1108,3 +1114,18 @@
     
     def render_less_text(self, session, *args):
         return "Hide Advanced Options..."
+
+    def render_state_text(self, session, *args):
+        return self.input.get(session) \
+            and self.render_less_text(session, *args) \
+            or self.render_more_text(session, *args)
+             
+    def render_open_state(self, session, *args):
+        return self.input.do_marshal(self.input.get(session))
+    
+    def render_open_path(self, session, *args):
+        return self.input.render_name(session, *args)
+    
+    def render_open_display(self, session, *args):
+        return self.input.get(session) and "block" or "none"
+    
\ No newline at end of file

Modified: mgmt/trunk/cumin/python/cumin/widgets.strings
===================================================================
--- mgmt/trunk/cumin/python/cumin/widgets.strings	2008-11-05 21:34:11 UTC (rev 2747)
+++ mgmt/trunk/cumin/python/cumin/widgets.strings	2008-11-05 21:35:57 UTC (rev 2748)
@@ -846,6 +846,9 @@
   {items}
 </ul>
 
+[StateSwitch.item_html]
+<li>{item_link}</li>
+
 [CuminEditableProperties.html]
 <table class="PropertySet Editable">
   <thead>
@@ -890,9 +893,6 @@
 [EditablePropertyRenderer.orig_html]
 <input type="hidden" name="{porig_name}" value="{porig_value}"/>
 
-[StateSwitch.item_html]
-<li>{item_link}</li>
-
 [CuminTable.css]
 table.mobjects th.setnav {
   font-size: 0.9em;
@@ -994,7 +994,6 @@
 
 [MoreFieldSet.css]
 div.more_inputs {
-	display: none;
 	margin-left: 0.5em;
 	margin-right: 0.5em;
 	padding: 0.5em;
@@ -1010,10 +1009,10 @@
 <div class="more_field_set">
 	<ul class="actions">
 		<li>
-			<a class="nav" href="#" onclick="toggle_more_fieldset(); return false;"><span id="button_{id}">{more_text}</span></a>
+			<a class="nav" href="#" onclick="toggle_more_fieldset(); return false;"><span id="button_{id}">{state_text}</span></a>
 		</li>
-	</ul>
-	<div id="{id}" class="more_inputs" style="display:none;">
+	</ul>{open}
+	<div id="{id}" class="more_inputs" style="display:{open_display};">
 		{inputs}
 	</div>
 </div><!-- end of "more_field_set" -->
@@ -1021,17 +1020,25 @@
 function toggle_more_fieldset() {
 	var oDiv = document.getElementById("{id}");
 	var oButton = document.getElementById("button_{id}");
+	var oState = document.forms[0].elements["{open_path}"];
 	if (oDiv) {
 		if (oDiv.style.display == "none") {
 			oDiv.style.display = "block";
 			if (oButton)
 				oButton.innerHTML = "{less_text}";
+			if (oState)
+				oState.value = "t";
 		} else {
 			oDiv.style.display = "none"
 			if (oButton)
 				oButton.innerHTML = "{more_text}";
+			if (oState)
+				oState.value = "f";
 		}
+		document.forms[0].submit();
+		
 	}
 }
 </script>
- 
\ No newline at end of file
+ 
+ 




More information about the rhmessaging-commits mailing list