def show_popup_menu(self, iface, bev): import bugs have_source = properties.have_source_for(self.config, iface) global menu # Fix GC problem in PyGObject menu = gtk.Menu() for label, cb in [ (_('Show Feeds'), lambda: properties.edit(self.driver, iface, self.compile)), (_('Show Versions'), lambda: properties.edit( self.driver, iface, self.compile, show_versions=True)), (_('Report a Bug...'), lambda: bugs.report_bug(self.driver, iface)) ]: item = gtk.MenuItem() item.set_label(label) if cb: item.connect('activate', lambda item, cb=cb: cb()) else: item.set_sensitive(False) item.show() menu.append(item) item = gtk.MenuItem() item.set_label(_('Compile')) item.show() menu.append(item) if have_source: compile_menu = gtk.Menu() item.set_submenu(compile_menu) item = gtk.MenuItem() item.set_label(_('Automatic')) item.connect('activate', lambda item: self.compile(iface, autocompile=True)) item.show() compile_menu.append(item) item = gtk.MenuItem() item.set_label(_('Manual...')) item.connect('activate', lambda item: self.compile(iface, autocompile=False)) item.show() compile_menu.append(item) else: item.set_sensitive(False) if gtk.pygtk_version >= (2, 90): menu.popup(None, None, None, None, bev.button, bev.time) else: menu.popup(None, None, None, bev.button, bev.time)
def show_popup_menu(self, iface, bev): import bugs have_source = properties.have_source_for(self.config, iface) global menu # Fix GC problem in PyGObject menu = gtk.Menu() for label, cb in [(_('Show Feeds'), lambda: properties.edit(self.driver, iface, self.compile)), (_('Show Versions'), lambda: properties.edit(self.driver, iface, self.compile, show_versions = True)), (_('Report a Bug...'), lambda: bugs.report_bug(self.driver, iface))]: item = gtk.MenuItem() item.set_label(label) if cb: item.connect('activate', lambda item, cb=cb: cb()) else: item.set_sensitive(False) item.show() menu.append(item) item = gtk.MenuItem() item.set_label(_('Compile')) item.show() menu.append(item) if have_source: compile_menu = gtk.Menu() item.set_submenu(compile_menu) item = gtk.MenuItem() item.set_label(_('Automatic')) item.connect('activate', lambda item: self.compile(iface, autocompile = True)) item.show() compile_menu.append(item) item = gtk.MenuItem() item.set_label(_('Manual...')) item.connect('activate', lambda item: self.compile(iface, autocompile = False)) item.show() compile_menu.append(item) else: item.set_sensitive(False) if gtk.pygtk_version >= (2, 90): menu.popup(None, None, None, None, bev.button, bev.time) else: menu.popup(None, None, None, bev.button, bev.time)
def show_popup_menu(self, iface, bev): import bugs import compile have_source = properties.have_source_for(self.policy, iface) menu = gtk.Menu() for label, cb in [ (_('Show Feeds'), lambda: properties.edit(self.policy, iface)), (_('Show Versions'), lambda: properties.edit(self.policy, iface, show_versions=True)), (_('Report a Bug...'), lambda: bugs.report_bug(self.policy, iface)) ]: item = gtk.MenuItem(label) if cb: item.connect('activate', lambda item, cb=cb: cb()) else: item.set_sensitive(False) item.show() menu.append(item) item = gtk.MenuItem(_('Compile')) item.show() menu.append(item) if have_source: compile_menu = gtk.Menu() item.set_submenu(compile_menu) item = gtk.MenuItem(_('Automatic')) item.connect( 'activate', lambda item: compile.compile( self.policy, iface, autocompile=True)) item.show() compile_menu.append(item) item = gtk.MenuItem(_('Manual...')) item.connect( 'activate', lambda item: compile.compile( self.policy, iface, autocompile=False)) item.show() compile_menu.append(item) else: item.set_sensitive(False) menu.popup(None, None, None, bev.button, bev.time)