diff --git a/share/pixmaps/tryton/tryton-mail-message.svg b/share/pixmaps/tryton/tryton-mail-message.svg new file mode 100644 index 0000000000..79c758f069 --- /dev/null +++ b/share/pixmaps/tryton/tryton-mail-message.svg @@ -0,0 +1,451 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + Mail New + + + Jakub Steiner + + + + + Andreas Nilsson, Steven Garrity + + + + + + mail + e-mail + MUA + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tryton/gui/main.py b/tryton/gui/main.py index 13a8c24061..dbd7f51498 100644 --- a/tryton/gui/main.py +++ b/tryton/gui/main.py @@ -270,36 +270,6 @@ class Main(object): self.sb_username.set_has_resize_grip(False) self.status_hbox.pack_start(self.sb_username, True, True) - if not update: - self.sb_requests = gtk.Statusbar() - self.sb_requests.set_size_request(130, -1) - self.sb_requests.set_has_resize_grip(False) - self.status_hbox.pack_start(self.sb_requests, True, True) - - if not update: - button_request_new = gtk.Button() - self.button_request_new = button_request_new - image = gtk.Image() - image.set_from_stock('tryton-mail-message-new', gtk.ICON_SIZE_MENU) - button_request_new.set_image(image) - button_request_new.set_relief(gtk.RELIEF_NONE) - button_request_new.connect('clicked', self.sig_request_new) - button_request_new.set_sensitive(False) - self.status_hbox.pack_start(button_request_new, False, True) - self.tooltips.set_tip(self.button_request_new, _('Send a new request')) - - if not update: - button_request_search = gtk.Button() - self.button_request_search = button_request_search - image = gtk.Image() - image.set_from_stock('tryton-find', gtk.ICON_SIZE_MENU) - button_request_search.set_image(image) - button_request_search.set_relief(gtk.RELIEF_NONE) - button_request_search.connect('clicked', self.sig_request_open) - button_request_search.set_sensitive(False) - self.status_hbox.pack_start(button_request_search, False, True) - self.tooltips.set_tip(self.button_request_search, _('Read my Requests')) - if not update: self.secure_img = gtk.Image() self.secure_img.set_from_stock('tryton-lock', gtk.ICON_SIZE_MENU) @@ -407,7 +377,7 @@ class Main(object): imagemenuitem_open_request = gtk.ImageMenuItem(_('_Read my Requests')) image = gtk.Image() - image.set_from_stock('tryton-find', gtk.ICON_SIZE_MENU) + image.set_from_stock('tryton-mail-message', gtk.ICON_SIZE_MENU) imagemenuitem_open_request.set_image(image) imagemenuitem_open_request.connect('activate', self.sig_request_open) imagemenuitem_open_request.set_accel_path('/User/Read my Requests') @@ -871,6 +841,14 @@ class Main(object): toolbutton_attach.connect('clicked', self._sig_child_call, 'but_attach') self.buttons['but_attach'] = toolbutton_attach + self.toolbar.insert(gtk.SeparatorToolItem(), -1) + + toolbutton_request = gtk.ToolButton('tryton-mail-message') + self.toolbutton_request = toolbutton_request + self.toolbar.insert(toolbutton_request, -1) + toolbutton_request.connect('clicked', self.sig_request_open) + self.buttons['but_request'] = toolbutton_request + def set_toolbar_label(self): labels = { 'but_new': _('_New'), @@ -885,6 +863,7 @@ class Main(object): 'but_action': _('Action'), 'but_print': _('Print'), 'but_attach': _('Attachment(0)'), + 'but_request': _('Request'), } tooltips = { 'but_new': _('Create a new record'), @@ -899,6 +878,7 @@ class Main(object): 'but_action': _('Action'), 'but_print': _('Print'), 'but_attach': _('Add an attachment to the record'), + 'but_request': _('Read my Requests'), } for i in self.buttons: self.buttons[i].set_label(labels[i]) @@ -1052,20 +1032,13 @@ class Main(object): ids, ids2 = res else: ids, ids2 = rpc.execute('model', 'res.request', 'request_get') - if len(ids): - if len(ids) == 1: - message = _('%s request') % len(ids) - else: - message = _('%s requests') % len(ids) + self.buttons['but_request'].set_label(_('Requests (%s/%s)') \ + % (len(ids), len(ids2))) + if not ids: + self.buttons['but_request'].set_stock_id('tryton-mail-message') else: - message = _('No request') - if len(ids2): - if len(ids2) == 1: - message += _(' - %s request sent') % len(ids2) - else: - message += _(' - %s requests sent') % len(ids2) - sb_id = self.sb_requests.get_context_id('message') - self.sb_requests.push(sb_id, message) + self.buttons['but_request'].set_stock_id( + 'tryton-mail-message-new') return (ids, ids2) except: if exception: @@ -1123,11 +1096,10 @@ class Main(object): if not self.menuitem_shortcut.get_property('sensitive'): self.shortcut_set() self.toolbutton_menu.set_sensitive(True) + self.toolbutton_request.set_sensitive(True) self.menuitem_user.set_sensitive(True) self.menuitem_form.set_sensitive(True) self.menuitem_plugins.set_sensitive(True) - self.button_request_new.set_sensitive(True) - self.button_request_search.set_sensitive(True) self.notebook.grab_focus() return True @@ -1143,19 +1115,17 @@ class Main(object): res = self._win_del() else: res = False - sb_id = self.sb_requests.get_context_id('message') - self.sb_requests.push(sb_id, '') sb_id = self.sb_username.get_context_id('message') self.sb_username.push(sb_id, _('Not logged!')) sb_id = self.sb_servername.get_context_id('message') self.sb_servername.push(sb_id, _('Press Ctrl+O to login')) self.shortcut_unset() self.toolbutton_menu.set_sensitive(False) + self.toolbutton_request.set_sensitive(False) + self.toolbutton_request.set_label(_('Requests')) self.menuitem_user.set_sensitive(False) self.menuitem_form.set_sensitive(False) self.menuitem_plugins.set_sensitive(False) - self.button_request_new.set_sensitive(False) - self.button_request_search.set_sensitive(False) if disconnect: rpc.logout() self.refresh_ssl() @@ -1324,7 +1294,7 @@ class Main(object): if not view: view = self._wid_get() for i in self.buttons: - if i == 'but_menu': + if i in ('but_menu', 'but_request'): continue if self.buttons[i]: self.buttons[i].set_sensitive(