From 2d8d2976d8dba26159f42d10152715160c0c1770 Mon Sep 17 00:00:00 2001 From: Thierry Parmentelat Date: Tue, 9 Apr 2013 08:43:09 +0200 Subject: [PATCH] default for 'togglable' can be defined on a per-class basis --- unfold/plugin.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/unfold/plugin.py b/unfold/plugin.py index cc2eaeba..f9e1ea41 100644 --- a/unfold/plugin.py +++ b/unfold/plugin.py @@ -66,7 +66,7 @@ class Plugin: # which will result in 'foo' being accessible to the template engine # def __init__ (self, page, title, domid=None, - visible=True, togglable=True, toggled=None, **settings): + visible=True, togglable=None, toggled=None, **settings): self.page = page self.title=title # callers can provide their domid for css'ing @@ -75,9 +75,10 @@ class Plugin: self.classname=self._py_classname() self.plugin_classname=self._js_classname() self.visible=visible - self.togglable=togglable - if toggled is not None: self.toggled=toggled - else: self.toggled=self.default_toggled() + if togglable is None: self.togglable=self.default_togglable() + else: self.togglable=togglable + if toggled is None: self.toggled=self.default_toggled() + else: self.toggled=toggled # what comes from subclasses for (k,v) in settings.iteritems(): setattr(self,k,v) @@ -250,6 +251,7 @@ class Plugin: def template_file (self): return "undefined_template" def template_env (self, request): return {} + def default_togglable (self): return True def default_toggled (self): return 'persistent' # # tell the framework about requirements (for the document
) -- 2.43.0