Manage view_ids
issue2401 review221007
This commit is contained in:
1 parent
964100bc36
commit
e13d8c2ace
5 files changed
+17
-9
No files matched your search
@@ -71,8 +71,9 @@ class Many2Many(WidgetInterface):
|
||||
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)
|
||||
|
||||
@@ -150,8 +151,9 @@ class Many2Many(WidgetInterface):
|
||||
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)
|
||||
|
||||
|
||||
@@ -160,6 +160,7 @@ class Many2One(WidgetInterface):
|
||||
|
||||
WinSearch(model, 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
|
||||
@@ -171,8 +172,8 @@ class Many2One(WidgetInterface):
|
||||
domain = self.field.domain_get(self.record)
|
||||
context = self.field.context_get(self.record)
|
||||
return Screen(self.get_model(), 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
|
||||
@@ -249,6 +250,7 @@ class Many2One(WidgetInterface):
|
||||
self.changed = True
|
||||
WinSearch(model, 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
|
||||
|
||||
@@ -158,6 +158,7 @@ class One2Many(WidgetInterface):
|
||||
|
||||
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))
|
||||
@@ -332,6 +333,7 @@ class One2Many(WidgetInterface):
|
||||
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)
|
||||
|
||||
@@ -281,7 +281,9 @@ class WinForm(NoModal):
|
||||
|
||||
if len(ids) != 1:
|
||||
WinSearch(model_name, callback, sel_multi=True,
|
||||
ids=ids, context=context, domain=domain)
|
||||
ids=ids, context=context, domain=domain,
|
||||
view_ids=self.attrs.get('view_ids').split(','),
|
||||
views_preload=self.attrs.get('views', {}))
|
||||
else:
|
||||
callback(ids)
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ _ = gettext.gettext
|
||||
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 @@ class WinSearch(NoModal):
|
||||
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()
|
||||
|
||||
Reference in new issue
Block a user