Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/03/2013, 13:13
Avatar de Neldor
Neldor
 
Fecha de Ingreso: enero-2010
Mensajes: 52
Antigüedad: 14 años, 4 meses
Puntos: 1
Click izquierdo en StatusIcon de Gtk

Me estoy haciendo un programita para notificarme los correos de gmail para practicar un poco el Gtk, por ahora he conseguido hacerlo todo más o menos, solo tengo un pequeño problema (aparte de no tener ni pajolera idea de Gtk).

Tengo el icono en el systray que me despliega un popup con los correos no leidos al pulsar con el botón derecho con el evento "popup-menu", lo que quiero es poder abrir ese mismo popup con el botón derecho (y si acaso dejar el botón derecho para el about y quit).

Os dejo un resumen del código correspondiente.

Código Python:
Ver original
  1. class SystrayIconApp:
  2.     def __init__(self):
  3.         self.tray = gtk.StatusIcon()
  4.         self.tray.set_from_stock(gtk.STOCK_ABOUT)
  5.         self.tray.connect('popup-menu', self.show_menu)
  6.         self.tray.set_tooltip(('Sample tray app'))
  7.         self.menu=gtk.Menu()
  8.        
  9.    
  10.     def show_menu(self, icon, event_button, event_time):
  11.         self.menu=gtk.Menu()
  12.        
  13.         # Separator
  14.         sep=gtk.SeparatorMenuItem()
  15.         sep.show()
  16.         self.menu.append(sep)
  17.         # show about dialog
  18.         about = gtk.MenuItem("About")
  19.         about.show()
  20.         self.menu.append(about)
  21.         about.connect('activate', self.open_mail,"a")
  22.        
  23.         self.menu.popup(None, None, gtk.status_icon_position_menu, event_button, event_time, self.tray)

He probado a cambiar el evento "popup-menu" por activate pero para eso ya no me funciona el self.menu.popup() y no tengo ni idea de por qué podría sustituirlo para que se muestre.

Amaré hasta la muerte al que pueda ayudarme