RGA(Open ERP) has proposed merging lp:~openerp-dev/openobject-client/ir_filters 
into lp:~openerp-dev/openobject-client/trunk-dev-client.

Requested reviews:
  OpenERP sa GTK client R&D (openerp-dev-gtk)


task id:942,
For advanced search filter use ir.filters instead of ir.act.windows.

related server branch:
lp:~openerp-dev/openobject-server/ir_filters
-- 
https://code.launchpad.net/~openerp-dev/openobject-client/ir_filters/+merge/27481
Your team OpenERP sa GTK client R&D is requested to review the proposed merge 
of lp:~openerp-dev/openobject-client/ir_filters into 
lp:~openerp-dev/openobject-client/trunk-dev-client.
=== modified file 'bin/widget/screen/screen.py'
--- bin/widget/screen/screen.py	2010-06-10 09:25:08 +0000
+++ bin/widget/screen/screen.py	2010-06-14 10:22:27 +0000
@@ -295,11 +295,11 @@
         if flag == 'mf':
             obj = service.LocalService('action.main')
             act={'name':'Manage Filters',
-                 'res_model':'ir.actions.act_window',
+                 'res_model':'ir.filters',
                  'type':'ir.actions.act_window',
                  'view_type':'form',
                  'view_mode':'tree,form',
-                 'domain':'[(\'filter\',\'=\',True),(\'res_model\',\'=\',\''+self.name+'\'),(\'default_user_ids\',\'in\',(\''+str(rpc.session.uid)+'\',))]'}
+                 'domain':'[(\'model_id\',\'=\',\''+self.name+'\'),(\'user_id\',\'=\',(\''+str(rpc.session.uid)+'\',))]'}
             value = obj._exec_action(act, {}, self.context)
 
         if flag in ['blk','mf']:
@@ -324,31 +324,19 @@
             if response == gtk.RESPONSE_OK and widget.get_text():
                 action_name = widget.get_text()
                 datas={'name':action_name,
-                       'res_model':self.name,
+                       'model_id':self.name,
                        'domain':str(self.filter_widget and self.filter_widget.value.get('domain',[])),
                        'context':str(self.filter_widget and self.filter_widget.value.get('context',{})),
-                       'search_view_id':self.search_view['view_id'],
-                       'filter':True,
-                       'default_user_ids': [[6, 0, [rpc.session.uid]]],
+                       'user_id':rpc.session.uid
                        }
-                action_id = rpc.session.rpc_exec_auth('/object', 'execute', 'ir.actions.act_window', 'create', datas)
-                self.screen_container.fill_filter_combo(self.name)
+                if flag == 'sf':
+                    action_id = rpc.session.rpc_exec_auth('/object', 'execute', 'ir.filters', 'create', datas)
+                    self.screen_container.fill_filter_combo(self.name)
                 if flag == 'sh':
-                    parent_menu_id = rpc.session.rpc_exec_auth_try('/object', 'execute', 'ir.ui.menu', 'search', [('name','=','Custom Shortcuts')])
-                    if parent_menu_id:
-                        menu_data={'name':action_name,
-                                   'sequence':20,
-                                   'action':'ir.actions.act_window,'+str(action_id),
-                                   'parent_id':parent_menu_id[0],
-                                   'icon':'STOCK_JUSTIFY_FILL',
-                                   }
-                        menu_id = rpc.session.rpc_exec_auth_try('/object', 'execute', 'ir.ui.menu', 'create', menu_data)
-                        sc_data={'name':action_name,
-                                 'sequence': 1,
-                                 'res_id': menu_id,
-                                   }
-                        shortcut_id = rpc.session.rpc_exec_auth_try('/object', 'execute', 'ir.ui.view_sc', 'create', sc_data)
-                return True
+                    datas.update({'res_model':self.name,
+                                  'search_view_id':self.search_view['view_id'],
+                                  'default_user_ids': [[6, 0, [rpc.session.uid]]]})
+                    rpc.session.rpc_exec_auth_try('/object', 'execute', 'ir.ui.menu', 'create_shortcut', datas)
         else:
             try:
                 filter_domain = flag and tools.expr_eval(flag)

=== modified file 'bin/widget/view/screen_container.py'
--- bin/widget/view/screen_container.py	2010-02-16 10:10:17 +0000
+++ bin/widget/view/screen_container.py	2010-06-14 10:22:27 +0000
@@ -47,13 +47,12 @@
 
     def fill_filter_combo(self, model):
         self.action_list.clear()
-        my_acts = rpc.session.rpc_exec_auth('/object', 'execute', 'ir.actions.act_window', 'get_filters', model)
+        my_acts = rpc.session.rpc_exec_auth('/object', 'execute', 'ir.filters', 'get_filters', model)
         filters_list=[['blk','','-- Filters --']]
         sorted_filters = [[act.get('domain',act['id']),act['context'],act['name']] for act in my_acts]
         sorted_filters.sort(lambda x, y: cmp(x[2], y[2]))
         filters_list += sorted_filters
         filters_list += [['blk','','--Actions--'],['sh','','Save as a Shortcut'],['sf','','Save as a Filter'],['mf','','Manage Filters']]
-
         for lim in filters_list:
             self.action_list.append(lim)
         self.action_combo.set_active(0)

_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help   : https://help.launchpad.net/ListHelp

Reply via email to