Reviewers: ,


Please review this at http://codereview.tryton.org/102001/

Affected files:
  M trytond/ir/ui/view.py


Index: trytond/ir/ui/view.py
===================================================================

--- a/trytond/ir/ui/view.py
+++ b/trytond/ir/ui/view.py
@@ -431,3 +431,49 @@
                 })

 ViewTreeWidth()
+
+
+class ViewTreeExpanded(ModelSQL, ModelView):
+    _name = 'ir.ui.view_tree_expanded'
+
+    _rec_name = 'model'
+    model = fields.Char('Model', required=True, select=1)
+    domain = fields.Char('Domain', required=True, select=1)
+    nodes = fields.Char('Expanded Nodes')
+    user = fields.Many2One('res.user', 'User', required=True,
+            ondelete='CASCADE', select=1)
+
+    def __init__(self):
+        super(ViewTreeExpanded, self).__init__()
+        self._rpc.update({
+                'set_expanded': True,
+                'get_expanded': True,
+                })
+
+    def set_expanded(self, model, domain, nodes):
+        ids = self.search([
+                ('user', '=', Transaction().user),
+                ('model', '=', model),
+                ('domain', '=', domain),
+                ])
+        self.delete(ids)
+        self.create({
+                'user': Transaction().user,
+                'model': model,
+                'domain': domain,
+                'nodes': nodes,
+                })
+
+    def get_expanded(self, model, domain):
+        try:
+            expanded_info, = self.search([
+                    ('user', '=', Transaction().user),
+                    ('model', '=', model),
+                    ('domain', '=', domain),
+                    ])
+        except ValueError:
+            return '[]'
+        return self.read(expanded_info, ['nodes'])['nodes']
+
+
+ViewTreeExpanded()



--
[email protected] mailing list

Reply via email to