openerp-dev-web team mailing list archive
-
openerp-dev-web team
-
Mailing list archive
-
Message #07188
[Merge] lp:~openerp-dev/openobject-client/trunk-bug-776961-aar into lp:openobject-client
Amit Parmar (OpenERP) has proposed merging lp:~openerp-dev/openobject-client/trunk-bug-776961-aar into lp:openobject-client.
Requested reviews:
Naresh(OpenERP) (nch-openerp)
Related bugs:
Bug #776961 in OpenERP GTK Client: "dashboard:view_id provided in ir.actions.act_window.view is not taken into consideration."
https://bugs.launchpad.net/openobject-client/+bug/776961
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-client/trunk-bug-776961-aar/+merge/61929
--
https://code.launchpad.net/~openerp-dev/openobject-client/trunk-bug-776961-aar/+merge/61929
Your team OpenERP R&D Team is subscribed to branch lp:~openerp-dev/openobject-client/trunk-bug-776961-aar.
=== modified file 'bin/modules/gui/window/win_search.py'
--- bin/modules/gui/window/win_search.py 2011-02-14 12:04:15 +0000
+++ bin/modules/gui/window/win_search.py 2011-05-23 08:29:24 +0000
@@ -107,7 +107,7 @@
class win_search(object):
- def __init__(self, model, sel_multi=True, ids=[], context={}, domain = [], parent=None):
+ def __init__(self, model, sel_multi=True, ids=[], view_ids=[],context={}, domain = [], parent=None):
self.model = model
self.sel_multi = sel_multi
self.ids = ids
@@ -118,7 +118,7 @@
parent = service.LocalService('gui.main').window
self.parent = parent
self.win.set_transient_for(parent)
- self.screen = Screen(model, view_type=['tree'], show_search=True, domain=domain,
+ self.screen = Screen(model, view_ids,view_type=['tree'], show_search=True, domain=domain,
context=context, parent=self.win, win_search=True)
self.view = self.screen.current_view
if self.screen.filter_widget.focusable:
=== modified file 'bin/widget/view/form_gtk/action.py'
--- bin/widget/view/form_gtk/action.py 2011-05-06 10:52:28 +0000
+++ bin/widget/view/form_gtk/action.py 2011-05-23 08:29:24 +0000
@@ -41,11 +41,14 @@
interface.widget_interface.__init__(self, window, parent, model, attrs)
self.act_id = int(attrs['name'])
- res = rpc.session.rpc_exec_auth('/object', 'execute', 'ir.actions.actions', 'read', [self.act_id], ['type'], rpc.session.context)
- if not res:
+ self.res = rpc.session.rpc_exec_auth('/object', 'execute', 'ir.actions.actions', 'read', [self.act_id], ['type'], rpc.session.context)
+ if not self.res:
raise Exception, 'ActionNotFound'
- type = res[0]['type']
+ type = self.res[0]['type']
+ self.attrs = attrs
self.action = rpc.session.rpc_exec_auth('/object', 'execute', type, 'read', [self.act_id], False, rpc.session.context)[0]
+
+
if 'view_mode' in attrs:
self.action['view_mode'] = attrs['view_mode']
@@ -81,7 +84,18 @@
self.screen.switch_view()
def _sig_search(self, *args):
- win = win_search(self.action['res_model'], domain=self.domain, context=self.context)
+ for views in self.action['views']:
+ if views[1] == 'tree' and views[0] != False:
+
+ self.act_view = rpc.session.rpc_exec_auth('/object', 'execute', 'ir.actions.act_window.view', 'search', [('act_window_id','=',self.res[0]['id']),('view_mode','=','tree')])
+
+ self.act_view_id = rpc.session.rpc_exec_auth('/object', 'execute', 'ir.actions.act_window.view', 'read', self.act_view,['view_id'],rpc.session.context)
+
+ self.act_view_tree = rpc.session.rpc_exec_auth('/object', 'execute', 'ir.ui.view', 'search', [('name','=',self.act_view_id[0]['view_id'][1])])
+
+ else:
+ self.act_view_tree = []
+ win = win_search(self.action['res_model'], view_ids = self.act_view_tree,domain=self.domain,context=self.context)
res = win.go()
if res:
self.screen.clear()
Follow ups