Reviewers: ,


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

Affected files:
  M tryton/gui/window/view_form/view/form_gtk/many2many.py
  M tryton/gui/window/view_form/view/form_gtk/many2one.py
  M tryton/gui/window/view_form/view/form_gtk/one2many.py
  M tryton/gui/window/win_form.py
  M tryton/gui/window/win_search.py


Index: tryton/gui/window/view_form/view/form_gtk/many2many.py
===================================================================

--- a/tryton/gui/window/view_form/view/form_gtk/many2many.py
+++ b/tryton/gui/window/view_form/view/form_gtk/many2many.py
@@ -71,8 +71,9 @@
         frame.set_shadow_type(gtk.SHADOW_OUT)
         self.widget.pack_start(frame, expand=False, fill=True)

-        self.screen = Screen(attrs['relation'], mode=['tree'],
-            views_preload=attrs.get('views', {}),
+        self.screen = Screen(attrs['relation'],
+            view_ids=attrs.get('view_ids').split(','),
+            mode=['tree'], views_preload=attrs.get('views', {}),
             row_activate=self._on_activate)
         self.screen.signal_connect(self, 'record-message', self._sig_label)

@@ -145,8 +146,9 @@
             self.wid_text.set_text('')
         if len(ids) != 1 or not value:
             WinSearch(self.attrs['relation'], callback, sel_multi=True,
-                    ids=ids, context=context, domain=domain,
-                    views_preload=self.attrs.get('views', {}))
+                ids=ids, context=context, domain=domain,
+                views_ids=self.attrs.get('views_ids').split(','),
+                views_preload=self.attrs.get('views', {}))
         else:
             callback(ids)


Index: tryton/gui/window/view_form/view/form_gtk/many2one.py
===================================================================

--- a/tryton/gui/window/view_form/view/form_gtk/many2one.py
+++ b/tryton/gui/window/view_form/view/form_gtk/many2one.py
@@ -133,6 +133,7 @@

WinSearch(self.attrs['relation'], callback, sel_multi=False,
                     ids=ids, context=context, domain=domain,
+                    view_ids=self.attrs.get('view_ids').split(','),
                     views_preload=self.attrs.get('views', {}))
                 return
         self.focus_out = True
@@ -144,8 +145,8 @@
         domain = self.field.domain_get(self.record)
         context = self.field.context_get(self.record)
return Screen(self.attrs['relation'], domain=domain, context=context,
-            mode=['form'], views_preload=self.attrs.get('views', {}),
-            readonly=self._readonly)
+            mode=['form'], view_ids=self.attrs.get('view_ids').split(','),
+ views_preload=self.attrs.get('views', {}), readonly=self._readonly)

     def sig_new(self, *args):
         self.focus_out = False
@@ -216,6 +217,7 @@
                 self.changed = True
             WinSearch(self.attrs['relation'], callback, sel_multi=False,
                 ids=ids, context=context, domain=domain,
+                view_ids=self.attrs.get('view_ids').split(','),
                 views_preload=self.attrs.get('views', {}))
             return
         self.focus_out = True

Index: tryton/gui/window/view_form/view/form_gtk/one2many.py
===================================================================

--- a/tryton/gui/window/view_form/view/form_gtk/one2many.py
+++ b/tryton/gui/window/view_form/view/form_gtk/one2many.py
@@ -156,6 +156,7 @@

         self.screen = Screen(attrs['relation'],
             mode=attrs.get('mode', 'tree,form').split(','),
+            view_ids=attrs.get('view_ids', '').split(','),
             views_preload=attrs.get('views', {}),
             row_activate=self._on_activate,
             exclude_field=attrs.get('relation_field', None))
@@ -324,6 +325,7 @@
         if len(ids) != 1:
             WinSearch(self.attrs['relation'], callback, sel_multi=True,
                 ids=ids, context=context, domain=domain,
+                view_ids=self.attrs.get('view_ids', '').split(','),
                 views_preload=self.attrs.get('views', {}))
         else:
             callback(ids)

Index: tryton/gui/window/win_form.py
===================================================================

--- a/tryton/gui/window/win_form.py
+++ b/tryton/gui/window/win_form.py
@@ -276,6 +276,7 @@
         if len(ids) != 1:
             WinSearch(self.attrs['relation'], callback, sel_multi=True,
                 ids=ids, context=context, domain=domain,
+                view_ids=self.attrs.get('view_ids').split(','),
                 views_preload=self.attrs.get('views', {}))
         else:
             callback(ids)

Index: tryton/gui/window/win_search.py
===================================================================

--- a/tryton/gui/window/win_search.py
+++ b/tryton/gui/window/win_search.py
@@ -15,7 +15,7 @@
 class WinSearch(NoModal):

def __init__(self, model, callback, sel_multi=True, ids=None, context=None,
-            domain=None, views_preload=None):
+            domain=None, view_ids=None, views_preload=None):
         NoModal.__init__(self)
         if views_preload is None:
             views_preload = {}
@@ -50,7 +50,7 @@
         self.win.vbox.pack_start(scrollwindow, expand=True, fill=True)

         self.screen = Screen(model, domain=domain, mode=['tree'],
-            context=context, views_preload=views_preload,
+ context=context, view_ids=view_ids, views_preload=views_preload,
             row_activate=self.sig_activate)
         self.view = self.screen.current_view
         self.view.unset_editable()



--
[email protected] mailing list

Reply via email to