common/mixins.py
branchtls-sprint
changeset 696 2a5a19185288
parent 692 800592b8d39b
child 728 a95b284150d1
equal deleted inserted replaced
695:356da23c57f1 696:2a5a19185288
     7 """
     7 """
     8 __docformat__ = "restructuredtext en"
     8 __docformat__ = "restructuredtext en"
     9 
     9 
    10 from logilab.common.decorators import cached
    10 from logilab.common.decorators import cached
    11 
    11 
    12 from cubicweb.common.selectors import implement_interface
    12 from cubicweb.selectors import implements
    13 from cubicweb.interfaces import IWorkflowable, IEmailable, ITree
    13 from cubicweb.interfaces import IWorkflowable, IEmailable, ITree
    14 
    14 
    15 
    15 
    16 class TreeMixIn(object):
    16 class TreeMixIn(object):
    17     """base tree-mixin providing the tree interface
    17     """base tree-mixin providing the tree interface
   313 
   313 
   314 class TreeViewMixIn(object):
   314 class TreeViewMixIn(object):
   315     """a recursive tree view"""
   315     """a recursive tree view"""
   316     id = 'tree'
   316     id = 'tree'
   317     item_vid = 'treeitem'
   317     item_vid = 'treeitem'
   318     __selectors__ = (implement_interface,)
   318     __selectors__ = implements(ITree)
   319     accepts_interfaces = (ITree,)
       
   320 
   319 
   321     def call(self, done=None, **kwargs):
   320     def call(self, done=None, **kwargs):
   322         if done is None:
   321         if done is None:
   323             done = set()
   322             done = set()
   324         super(TreeViewMixIn, self).call(done=done, **kwargs)
   323         super(TreeViewMixIn, self).call(done=done, **kwargs)