Author: eallen
Date: 2008-11-04 14:38:32 -0500 (Tue, 04 Nov 2008)
New Revision: 2733
Modified:
mgmt/trunk/cumin/python/cumin/widgets.py
Log:
Removing individual form fields that all have two radio button options and replacing them
with a more general class.
Modified: mgmt/trunk/cumin/python/cumin/widgets.py
===================================================================
--- mgmt/trunk/cumin/python/cumin/widgets.py 2008-11-04 19:37:02 UTC (rev 2732)
+++ mgmt/trunk/cumin/python/cumin/widgets.py 2008-11-04 19:38:32 UTC (rev 2733)
@@ -978,105 +978,45 @@
def get_message(self, session):
return "An item with this %s already exists" % self.__field
-class DurabilityField(RadioField):
- def __init__(self, app, name):
- super(DurabilityField, self).__init__(app, name, None)
+class TwoOptionRadioField(RadioField):
+ def __init__(self, app, name, option1="option1",
option2="option2"):
+ super(TwoOptionRadioField, self).__init__(app, name, None)
self.param = Parameter(app, "param")
- self.param.default = "durable"
+ self.param.default = option1
self.add_parameter(self.param)
- option = self.Durable(app, "durable", self.param)
- option.set_value(self.param.default)
+ option = self.Option1(app, option1, self.param)
self.add_option(option)
- option = self.Transient(app, "transient", self.param)
- option.set_value("transient")
+ option = self.Option2(app, option2, self.param)
self.add_option(option)
- def render_title(self, session):
- return "Durable?"
-
- class Durable(RadioFieldOption):
- def render_value(self, session):
- return "durable"
-
- def render_title(self, session):
- return "Durable"
-
- class Transient(RadioFieldOption):
- def render_value(self, session):
- return "transient"
-
- def render_title(self, session):
- return "Transient"
-
-class SavedField(RadioField):
- def __init__(self, app, name):
- super(SavedField, self).__init__(app, name, None)
-
- self.param = Parameter(app, "param")
- self.param.default = "notsaved"
- self.add_parameter(self.param)
-
- option = self.Saved(app, "saved", self.param)
- option.set_value("saved")
- self.add_option(option)
+ self.option1_value = option1
+ self.option2_value = option2
+ self.option1_title = option1
+ self.option2_title = option2
- option = self.NotSaved(app, "notsaved", self.param)
- option.set_value("notsaved")
- self.add_option(option)
-
def render_title(self, session):
- return "Restore if broker restarts?"
+ return "Pick an option"
- class Saved(RadioFieldOption):
+ class Option1(RadioFieldOption):
def render_value(self, session):
- return "saved"
+ return self.parent.option1_value
def render_title(self, session):
- return "Yes, restore if broker restarts"
+ return self.parent.option1_title
- class NotSaved(RadioFieldOption):
- def render_value(self, session):
- return "notsaved"
-
- def render_title(self, session):
- return "No, do not restore if broker restarts"
-
-class ExclusivityField(RadioField):
- def __init__(self, app, name):
- super(ExclusivityField, self).__init__(app, name)
-
- self.param = Parameter(app, "param")
- self.param.default = "exclusive"
- self.add_parameter(self.param)
-
- option = self.Exclusive(app, "exclusive")
- option.set_value(self.param.default)
- self.add_option(option)
+ def render_radio_class(self, session):
+ return "class=\"two_options\""
- option = self.NonExclusive(app, "non-exclusive")
- option.set_value("non-exclusive")
- self.add_option(option)
-
- def render_title(self, session):
- return "Exclusive?"
-
- class Exclusive(RadioFieldOption):
+ class Option2(RadioFieldOption):
def render_value(self, session):
- return "exclusive"
+ return self.parent.option2_value
def render_title(self, session):
- return "Exclusive"
+ return self.parent.option2_title
- class NonExclusive(RadioFieldOption):
- def render_value(self, session):
- return "non-exclusive"
-
- def render_title(self, session):
- return "Non-exclusive"
-
class MultiplicityField(RadioField):
def __init__(self, app, name):
super(MultiplicityField, self).__init__(app, name, None)
@@ -1129,39 +1069,6 @@
def render_title(self, session):
return
-class AutoDeleteField(RadioField):
- def __init__(self, app, name):
- super(AutoDeleteField, self).__init__(app, name, None)
-
- self.param = Parameter(app, "param")
- self.param.default = "autodel"
- self.add_parameter(self.param)
-
- option = self.AutoDel(app, "autodel", self.param)
- option.set_value(self.param.default)
- self.add_option(option)
-
- option = self.Preserve(app, "preserve", self.param)
- option.set_value("preserve")
- self.add_option(option)
-
- def render_title(self, session):
- return "Auto-Delete?"
-
- class AutoDel(RadioFieldOption):
- def render_value(self, session):
- return "autodel"
-
- def render_title(self, session):
- return "Auto-Delete"
-
- class Preserve(RadioFieldOption):
- def render_value(self, session):
- return "preserve"
-
- def render_title(self, session):
- return "Preserve"
-
class AjaxField(Widget):
def render_script(self, session):
script = """