Merge lp:~openerp-dev/openobject-client/page_tooltips into lp:~openerp-dev/openobject-client/trunk-dev-client

Proposed by Ravi Gadhia (OpenERP)
Status: Rejected
Rejected by: Naresh(OpenERP)
Proposed branch: lp:~openerp-dev/openobject-client/page_tooltips
Merge into: lp:~openerp-dev/openobject-client/trunk-dev-client
Diff against target: 170 lines (+38/-8)
4 files modified
bin/modules/gui/main.py (+5/-0)
bin/modules/gui/window/__init__.py (+2/-1)
bin/modules/gui/window/form.py (+22/-7)
bin/widget/screen/screen.py (+9/-0)
To merge this branch: bzr merge lp:~openerp-dev/openobject-client/page_tooltips
Reviewer Review Type Date Requested Status
Naresh(OpenERP) Needs Resubmitting
Review via email: mp+50717@code.launchpad.net

Description of the change

To post a comment you must log in.
1459. By Ravi Gadhia (OpenERP)

[IMP] check current_model has name field value before set tooltip

Revision history for this message
Naresh(OpenERP) (nch-openerp) wrote :

Hello,

I have tested your merge proposal,seems good but with a problem
that is it shows you the tooltip even if you are in the list view with the value of the name field of current_model. Same is the case for Calendar view,graph view. Here it should only show the view title.

Thanks

review: Needs Fixing
Revision history for this message
Naresh(OpenERP) (nch-openerp) :
review: Needs Resubmitting

Unmerged revisions

1459. By Ravi Gadhia (OpenERP)

[IMP] check current_model has name field value before set tooltip

1458. By Ravi Gadhia (OpenERP)

[IMP] Refectore code of set tooltips on page header (remove set_data from VBox)

1457. By Ravi Gadhia (OpenERP)

[IMP] set model name field's value as page tooltips'

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'bin/modules/gui/main.py'
2--- bin/modules/gui/main.py 2011-01-27 06:31:03 +0000
3+++ bin/modules/gui/main.py 2011-02-23 12:31:44 +0000
4@@ -1206,6 +1206,7 @@
5 return True
6 return False
7 return True
8+
9
10 def win_add(self, win, datas):
11 """
12@@ -1226,6 +1227,10 @@
13 closebtn.unset_flags(gtk.CAN_FOCUS)
14
15 box_label = gtk.Label(win.name)
16+ box_label.set_tooltip_text(win.name)
17+ win.page_label = box_label
18+
19+
20 event_box = gtk.EventBox()
21 event_box.add(box_label)
22 event_box.set_visible_window(False)
23
24=== modified file 'bin/modules/gui/window/__init__.py'
25--- bin/modules/gui/window/__init__.py 2010-12-21 05:18:43 +0000
26+++ bin/modules/gui/window/__init__.py 2011-02-23 12:31:44 +0000
27@@ -40,7 +40,6 @@
28 if context is None:
29 context = {}
30 context.update(rpc.session.context)
31-
32 if view_type=='form':
33 mode = (mode or 'form,tree').split(',')
34 win = form.form(model, res_id, domain, view_type=mode,
35@@ -49,6 +48,8 @@
36 auto_refresh=auto_refresh, auto_search=auto_search, search_view=search_view)
37 spool = service.LocalService('spool')
38 spool.publish('gui.window', win, {})
39+ if win.screen.current_model:
40+ win.page_label.set_tooltip_text(win.screen.current_model.value.get('name',''))
41 elif view_type=='tree':
42 if view_ids and view_ids[0]:
43 view_base = rpc.session.rpc_exec_auth('/object', 'execute',
44
45=== modified file 'bin/modules/gui/window/form.py'
46--- bin/modules/gui/window/form.py 2011-01-27 10:49:17 +0000
47+++ bin/modules/gui/window/form.py 2011-02-23 12:31:44 +0000
48@@ -67,6 +67,7 @@
49 self.fields = fields
50 self.domain = domain
51 self.context = context
52+ self.page_label = None
53 self.screen = Screen(self.model, view_type=view_type,
54 context=self.context, view_ids=view_ids, domain=domain,help=help,
55 hastoolbar=options.options['form.toolbar'], hassubmenu=options.options['form.submenu'],
56@@ -136,7 +137,15 @@
57
58 if auto_refresh and int(auto_refresh):
59 gobject.timeout_add(int(auto_refresh) * 1000, self.sig_reload)
60-
61+
62+ def set_tooltips(fn):
63+ def _decorate(self, *args, **kws):
64+ result = fn(self, *args, **kws)
65+ tooltips = self.screen.current_model and self.screen.current_model.value.get('name') or self.name
66+ self.page_label.set_tooltip_text(tooltips)
67+ return result
68+ return _decorate
69+
70 def sig_switch_diagram(self, widget=None):
71 return self.sig_switch(widget, 'diagram')
72
73@@ -229,7 +238,7 @@
74 else:
75 self.message_state(_('No record selected ! You can only attach to existing record.'), color='red')
76 return True
77-
78+
79 def sig_switch(self, widget=None, mode=None):
80 if not self.modified_save():
81 return
82@@ -262,7 +271,8 @@
83 message+=val+': '+str(line[key] or '/')+'\n'
84 common.message(message)
85 return True
86-
87+
88+ @set_tooltips
89 def sig_remove(self, widget=None):
90 if not self.id_get():
91 msg = _('Record is not saved ! \n Do you want to clear current record ?')
92@@ -286,7 +296,7 @@
93 screen_fields = copy.deepcopy(self.screen.fields)
94 win = win_import.win_import(self.model, screen_fields, fields, parent=self.window,local_context= self.screen.context)
95 res = win.go()
96-
97+
98 def sig_save_as(self, widget=None):
99 fields = []
100 while(self.screen.view_to_load):
101@@ -294,7 +304,7 @@
102 screen_fields = copy.deepcopy(self.screen.fields)
103 win = win_export.win_export(self.model, self.screen.ids_get(), screen_fields, fields, parent=self.window, context=self.context)
104 res = win.go()
105-
106+
107 def sig_new(self, widget=None, autosave=True):
108 if autosave:
109 if not self.modified_save():
110@@ -303,6 +313,8 @@
111 return
112 self.screen.new()
113 self.message_state('')
114+ self.page_label and self.page_label.set_tooltip_text(self.name)
115+
116
117 def sig_copy(self, *args):
118 if not self.modified_save():
119@@ -319,7 +331,8 @@
120
121 def _form_save(self, auto_continue=True):
122 pass
123-
124+
125+ @set_tooltips
126 def sig_save(self, widget=None, sig_new=True, auto_continue=True):
127 res = self.screen.save_current()
128 warning = False
129@@ -337,12 +350,14 @@
130 common.warning(warning,_('Warning !'), parent=self.screen.current_view.window)
131 return bool(id)
132
133+ @set_tooltips
134 def sig_previous(self, widget=None):
135 if not self.modified_save():
136 return
137 self.screen.display_prev()
138 self.message_state('')
139-
140+
141+ @set_tooltips
142 def sig_next(self, widget=None):
143 if not self.modified_save():
144 return
145
146=== modified file 'bin/widget/screen/screen.py'
147--- bin/widget/screen/screen.py 2011-01-27 12:43:03 +0000
148+++ bin/widget/screen/screen.py 2011-02-23 12:31:44 +0000
149@@ -498,6 +498,13 @@
150 del self.win_search
151 del self.win_search_callback
152 del self.window
153+
154+ def set_tooltips(self):
155+ terp_main = service.LocalService('gui.main')
156+ page_id= terp_main.notebook.get_current_page()
157+ form_ojb = terp_main.pages[page_id]
158+ tooltips = self.current_model and self.current_model.value.get('name') or form_ojb.name
159+ form_ojb.page_label.set_tooltip_text(tooltips)
160
161 # mode: False = next view, value = open this view
162 def switch_view(self, screen=None, mode=False):
163@@ -546,6 +553,8 @@
164 self.current_view.set_cursor()
165
166 main = service.LocalService('gui.main')
167+ if mode:
168+ self.set_tooltips()
169 if main:
170 main.sb_set()
171

Subscribers

People subscribed via source and target branches