class ListTabObjDesc(widgets.WidgetDescription):
name = "Tabber List Object"
full_class_name = "mywidgets.widgets.MyTabbers.ListTabObjDesc"
for_widget = widgets.Tabber()
template="mywidgets.templates.ListObjTab"
params = ["tabbers"]
tabbers = [TabObj(title='first tab',
body=['text of first tab']),
TabObj(title='second tab',
body=['text of second tab',
widgets.forms.TableFormDesc()]),
TabObj(title=unicode('третья вкладка', 'utf-8'),
body=[unicode('текст третьей вкладки','utf-8'),
widgets.links.TabberDesc()]),
TabObj(title=unicode('четвёртая вкладка', 'utf-8'),
body=[unicode('текст четвёртой
вкладки','utf-8'),
MyTabberDesc()]),
]
def __init__(self, *args, **kw):
super(ListTabObjDesc, self).__init__(*args, **kw)
self.javascript=self.retrieve_javascript()
self.css=self.retrieve_css()
def retrieve_css(self):
list1 = self.for_widget.retrieve_css()
list1.add_all(self.rec(self.tabbers, 'retrieve_css', 'css'))
return list1
def retrieve_javascript(self):
list1 = self.for_widget.retrieve_javascript()
list1.add_all(self.rec(self.tabbers, 'retrieve_javascript',
'javascript'))
return list1
def rec(self, list1, metod_name, attr_name):
l1=setlike()
for tab in list1:
if getattr(tab, 'body', False):
for b in tab.body:
metod = getattr(b, metod_name, False)
if metod:
l1.add_all(metod())
if getattr(b, attr_name, False):
l1.add_all(getattr(b, attr_name))
if getattr(b, 'tabbers', False):
l1.add_all(self.rec(b.tabbers, metod_name,
attr_name))
return l1
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"TurboGears" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/turbogears?hl=en
-~----------~----~----~----~------~----~------~--~---