def on_add(self, btn, event):
menu = Gtk.Menu()
item = Gtk.MenuItem(_("Add link to new page"))
item.connect('activate', self.on_add_link_to_new_page)
menu.append(item)
item = Gtk.MenuItem(_("Add link to exercise"))
item.connect('activate', self.on_add_link)
menu.append(item)
item = Gtk.MenuItem(_("Add link by searching for exercises"))
item.connect('activate', self.on_add_link_by_search)
menu.append(item)
menu.show_all()
menu.popup(None, None, None, None, event.button, event.time)
python类Menu()的实例源码
def popup_folder_menu(self, event):
# create folder; upload files; reload; share; properties
menu = Gtk.Menu()
self.menu = menu
new_folder_item = Gtk.MenuItem.new_with_label(_('New Folder'))
new_folder_item.connect('activate', self.on_new_folder_activated)
menu.append(new_folder_item)
sep_item = Gtk.SeparatorMenuItem()
menu.append(sep_item)
upload_files_item = Gtk.MenuItem.new_with_label(_('Upload Files...'))
upload_files_item.connect('activate', self.on_upload_files_activated)
menu.append(upload_files_item)
upload_folders_item = Gtk.MenuItem.new_with_label(
_('Upload Folders...'))
upload_folders_item.connect('activate',
self.on_upload_folders_activated)
menu.append(upload_folders_item)
sep_item = Gtk.SeparatorMenuItem()
menu.append(sep_item)
reload_item = Gtk.MenuItem.new_with_label(_('Reload (F5)'))
reload_item.connect('activate', self.on_reload_activated)
menu.append(reload_item)
sep_item = Gtk.SeparatorMenuItem()
menu.append(sep_item)
props_item = Gtk.MenuItem.new_with_label(_('Properties'))
props_item.connect('activate', self.on_props_activated)
menu.append(props_item)
menu.show_all()
menu.popup(None, None, None, None, event.button, event.time)
indicator-keyboard-led.py 文件源码
项目:indicator-keyboard-led
作者: adrianiainlam
项目源码
文件源码
阅读 30
收藏 0
点赞 0
评论 0
def create_menu(self, xdotool, order):
menu = Gtk.Menu()
xdotool = xdotool or shutil.which('xdotool')
if xdotool and os.access(xdotool, os.X_OK) and os.path.isfile(xdotool):
def send_keypress(menuitem, keystroke):
subprocess.call([xdotool, 'key', keystroke])
def new_menu_item(itemtype):
if itemtype == 'N':
item = Gtk.MenuItem.new_with_label(_('Num Lock'))
item.connect('activate', send_keypress, 'Num_Lock')
elif itemtype == 'C':
item = Gtk.MenuItem.new_with_label(_('Caps Lock'))
item.connect('activate', send_keypress, 'Caps_Lock')
elif itemtype == 'S':
item = Gtk.MenuItem.new_with_label(_('Scroll Lock'))
item.connect('activate', send_keypress, 'Scroll_Lock')
else:
raise ValueError('Invalid itemtype')
return item
for i in order:
menu.append(new_menu_item(i))
menu.append(Gtk.SeparatorMenuItem())
quit_item = Gtk.MenuItem.new_with_label(_('Quit'))
menu.append(quit_item)
quit_item.connect('activate', Gtk.main_quit)
self.indicator.set_menu(menu)
menu.show_all()
def menu():
m = Gtk.Menu()
item_quit = Gtk.MenuItem('Quit')
item_quit.connect('activate', Gtk.main_quit)
m.append(item_quit)
m.show_all()
return m
def init_main_menu(self):
main_menu = Gtk.Menu()
self.new_button = Gtk.MenuItem.new_with_label('New')
self.open_button = Gtk.MenuItem.new_with_label('Open')
self.open_stock_button = Gtk.MenuItem.new_with_label('Import Stock')
view_button = Gtk.MenuItem.new_with_label('View')
self.view_menu = Gtk.Menu()
self.viewer_button = Gtk.MenuItem.new_with_label('Viewer')
self.builder_button = Gtk.MenuItem.new_with_label('Builder')
self.view_menu.append(self.viewer_button)
self.view_menu.append(self.builder_button)
self.view_menu.show_all()
view_button.set_submenu(self.view_menu)
self.save_button = Gtk.MenuItem.new_with_label('Save')
self.save_as_button = Gtk.MenuItem.new_with_label('Save As...')
self.quit_button = Gtk.MenuItem.new_with_label('Quit')
main_menu.append(self.new_button)
main_menu.append(self.open_button)
main_menu.append(self.open_stock_button)
main_menu.append(Gtk.SeparatorMenuItem())
main_menu.append(view_button)
main_menu.append(Gtk.SeparatorMenuItem())
main_menu.append(self.save_button)
main_menu.append(self.save_as_button)
main_menu.append(Gtk.SeparatorMenuItem())
main_menu.append(self.quit_button)
main_menu.show_all()
return main_menu
def init_settings_menu(self):
settings_menu = Gtk.Menu()
self.preferences_button = Gtk.MenuItem.new_with_label('Preferences')
settings_menu.append(self.preferences_button)
settings_menu.show_all()
return settings_menu
def init_help_menu(self):
help_menu = Gtk.Menu()
self.app_help_button = Gtk.MenuItem.new_with_label('Help')
self.about_button = Gtk.MenuItem.new_with_label('About')
help_menu.append(self.about_button)
help_menu.append(self.app_help_button)
help_menu.show_all()
return help_menu
def __init__(self):
Gtk.Menu.__init__(self)
self.add_button = Gtk.MenuItem.new_with_label('Add')
self.paste_button = Gtk.MenuItem.new_with_label('Paste')
self.append(self.add_button)
self.append(Gtk.SeparatorMenuItem())
self.append(self.paste_button)
self.show_all()
client_smi_appindicator.py 文件源码
项目:nvidia-multiple-smi
作者: ClementPinard
项目源码
文件源码
阅读 24
收藏 0
点赞 0
评论 0
def build_menu(machine):
menu = gtk.Menu()
host_item = gtk.MenuItem(machine['host'])
menu.append(host_item)
for gpu in machine['GPUs']:
gpu['title'] = gtk.MenuItem(gpu['name'] + ', ' + '%.2f' % (gpu['memory']) + ' GB')
gpu['title'].set_sensitive(False)
gpu['status'] = gtk.MenuItem(str(gpu['utilization']) + '% , ' + '%.2f' % (gpu['used_mem']) + ' GB')
menu.append(gpu['title'])
menu.append(gpu['status'])
menu.show_all()
machine['menu'] = menu
def set_menu(self,check=False):
#
normal_icon = os.path.join(comun.ICONDIR,'google-tasks-indicator-%s-normal.svg'%(self.theme))
starred_icon = os.path.join(comun.ICONDIR,'google-tasks-indicator-%s-starred.svg'%(self.theme))
#
self.indicator.set_icon(normal_icon)
self.indicator.set_attention_icon(starred_icon)
#
menu = Gtk.Menu()
#
self.indicator.set_status(appindicator.IndicatorStatus.ACTIVE)
self.menu_tasks = []
for i in range(0,10):
menu_note = add2menu(menu, text = '', conector_event = 'activate',conector_action = self.menu_check_item, note = googletasksapi.Task())
menu_note.set_visible(False)
self.menu_tasks.append(menu_note)
#self.menu_tasks.append(add2menu(menu, text = note['title'], conector_event = 'activate',conector_action = self.menu_check_item, note = note))
add2menu(menu)
add2menu(menu, text = _('Add new task'), conector_event = 'activate',conector_action = self.menu_add_new_task)
add2menu(menu, text = _('Add new task list'), conector_event = 'activate',conector_action = self.menu_add_new_tasklist)
add2menu(menu, text = _('Manage tasklists'), conector_event = 'activate',conector_action = self.menu_manage_tasklists)
add2menu(menu)
add2menu(menu, text = _('Refresh'), conector_event = 'activate',conector_action = self.menu_refresh)
add2menu(menu, text = _('Clear completed tasks'), conector_event = 'activate',conector_action = self.menu_clear_completed_tasks)
add2menu(menu, text = _('Show all tasks'), conector_event = 'activate',conector_action = self.menu_show_tasks)
add2menu(menu, text = _('Synchronize with Google'), conector_event = 'activate',conector_action = self.sync)
add2menu(menu)
add2menu(menu)
add2menu(menu, text = _('Preferences'), conector_event = 'activate',conector_action = self.menu_preferences_response)
add2menu(menu)
menu_help = add2menu(menu, text =_('Help'))
menu_help.set_submenu(self.get_help_menu())
add2menu(menu)
add2menu(menu, text = _('Exit'), conector_event = 'activate',conector_action = self.menu_exit_response)
menu.show()
self.indicator.set_menu(menu)
def get_help_menu(self):
help_menu =Gtk.Menu()
#
add2menu(help_menu,text = _('Web...'),conector_event = 'activate',conector_action = lambda x: webbrowser.open('https://launchpad.net/google-tasks-indicator'))
add2menu(help_menu,text = _('Get help online...'),conector_event = 'activate',conector_action = lambda x: webbrowser.open('https://answers.launchpad.net/google-tasks-indicator'))
add2menu(help_menu,text = _('Translate this application...'),conector_event = 'activate',conector_action = lambda x: webbrowser.open('https://translations.launchpad.net/google-tasks-indicator'))
add2menu(help_menu,text = _('Report a bug...'),conector_event = 'activate',conector_action = lambda x: webbrowser.open('https://bugs.launchpad.net/google-tasks-indicator'))
add2menu(help_menu)
self.menu_about = add2menu(help_menu,text = _('About'),conector_event = 'activate',conector_action = self.menu_about_response)
#
help_menu.show()
#
return help_menu
def create_menu(self,check=False):
#
normal_icon = os.path.join(comun.ICONDIR,'google-tasks-indicator-%s-normal.svg'%(self.theme))
starred_icon = os.path.join(comun.ICONDIR,'google-tasks-indicator-%s-starred.svg'%(self.theme))
#
self.indicator.set_icon(normal_icon)
self.indicator.set_attention_icon(starred_icon)
#
menu = Gtk.Menu()
#
self.indicator.set_status(appindicator.IndicatorStatus.ACTIVE)
self.menu_tasks = []
for i in range(10):
menu_task = MenuNote(googletasksapi.Task())
menu_task.show()
menu_task.set_visible(False)
menu_task.connect('activate',self.menu_check_item)
menu.append(menu_task)
self.menu_tasks.append(menu_task)
add2menu(menu)
self.mant = add2menu(menu, text = _('Add new task'), conector_event = 'activate',conector_action = self.menu_add_new_task)
#self.mant.set_visible(self.tasklist_id is not None)
add2menu(menu, text = _('Add new task list'), conector_event = 'activate',conector_action = self.menu_add_new_tasklist)
add2menu(menu)
add2menu(menu, text = _('Refresh'), conector_event = 'activate',conector_action = self.menu_refresh)
add2menu(menu, text = _('Clear completed tasks'), conector_event = 'activate',conector_action = self.menu_clear_completed_tasks)
add2menu(menu, text = _('Show all tasks'), conector_event = 'activate',conector_action = self.menu_show_tasks)
add2menu(menu, text = _('Show tasks lists'), conector_event = 'activate',conector_action = self.menu_show_taskslists)
add2menu(menu, text = _('Synchronize with Google'), conector_event = 'activate',conector_action = self.sync)
add2menu(menu)
add2menu(menu)
add2menu(menu, text = _('Preferences'), conector_event = 'activate',conector_action = self.menu_preferences_response)
add2menu(menu)
menu_help = add2menu(menu, text =_('Help'))
menu_help.set_submenu(self.get_help_menu())
add2menu(menu)
add2menu(menu, text = _('Exit'), conector_event = 'activate',conector_action = self.menu_exit_response)
menu.show()
self.indicator.set_menu(menu)
def get_help_menu(self):
help_menu =Gtk.Menu()
#
add2menu(help_menu,text = _('Web...'),conector_event = 'activate',conector_action = lambda x: webbrowser.open('https://launchpad.net/google-tasks-indicator'))
add2menu(help_menu,text = _('Get help online...'),conector_event = 'activate',conector_action = lambda x: webbrowser.open('https://answers.launchpad.net/google-tasks-indicator'))
add2menu(help_menu,text = _('Translate this application...'),conector_event = 'activate',conector_action = lambda x: webbrowser.open('https://translations.launchpad.net/google-tasks-indicator'))
add2menu(help_menu,text = _('Report a bug...'),conector_event = 'activate',conector_action = lambda x: webbrowser.open('https://bugs.launchpad.net/google-tasks-indicator'))
add2menu(help_menu)
web = add2menu(help_menu,text = _('Homepage'),conector_event = 'activate',conector_action = lambda x: webbrowser.open('http://www.atareao.es/tag/calendar-indicator'))
twitter = add2menu(help_menu,text = _('Follow us in Twitter'),conector_event = 'activate',conector_action = lambda x: webbrowser.open('https://twitter.com/atareao'))
googleplus = add2menu(help_menu,text = _('Follow us in Google+'),conector_event = 'activate',conector_action = lambda x: webbrowser.open('https://plus.google.com/118214486317320563625/posts'))
facebook = add2menu(help_menu,text = _('Follow us in Facebook'),conector_event = 'activate',conector_action = lambda x: webbrowser.open('http://www.facebook.com/elatareao'))
add2menu(help_menu)
self.menu_about = add2menu(help_menu,text = _('About'),conector_event = 'activate',conector_action = self.menu_about_response)
#
web.set_image(Gtk.Image.new_from_file(os.path.join(comun.SOCIALDIR,'web.svg')))
web.set_always_show_image(True)
twitter.set_image(Gtk.Image.new_from_file(os.path.join(comun.SOCIALDIR,'twitter.svg')))
twitter.set_always_show_image(True)
googleplus.set_image(Gtk.Image.new_from_file(os.path.join(comun.SOCIALDIR,'googleplus.svg')))
googleplus.set_always_show_image(True)
facebook.set_image(Gtk.Image.new_from_file(os.path.join(comun.SOCIALDIR,'facebook.svg')))
facebook.set_always_show_image(True)
#
help_menu.show()
return help_menu
def __menu(self):
menu = gtk.Menu()
menu.append(self.__menu_cryptos())
menu.append(self.__menu_fiat())
menu.append(self.__menu_decimals())
menu.append(self.__menu_refresh())
menu.append(menu_quit())
menu.show_all()
return menu
def __menu_cryptos(self):
menu = gtk.Menu()
option = None
for symbol in sorted(self.symbols):
option = gtk.RadioMenuItem(symbol, group = option)
option.set_active(symbol == self.symbol)
option.connect('activate', self.__set_symbol, symbol)
menu.append(option)
return submenu(menu, 'Set symbol')
def __menu_refresh(self):
menu = gtk.Menu()
option = None
for rate in REFRESH_RATES:
option = gtk.RadioMenuItem('%sm' % rate, group = option)
option.set_active(rate == REFRESH_RATES[0])
option.connect('activate', self.__update_refresh_rate, rate)
menu.append(option)
return submenu(menu, 'Refresh rate')
def __menu_fiat(self):
menu = gtk.Menu()
option = None
for fiat in sorted(FIATS):
option = gtk.RadioMenuItem(fiat, group = option)
option.set_active(fiat == 'USD')
option.connect('activate', self.__set_fiat, fiat)
menu.append(option)
return submenu(menu, 'Set fiat')
def __menu_decimals(self):
menu = gtk.Menu()
option = None
for i in range(11):
option = gtk.RadioMenuItem(i, group = option)
option.set_active(i == self.num_decimals)
option.connect('activate', self.__set_num_decimals, i)
menu.append(option)
return submenu(menu, 'Set decimals')
def build_menu(self):
self.menu = gtk.Menu()
self.item_main_window = gtk.MenuItem('Open Main Window')
self.item_main_window.connect('activate', self.main_window)
self.menu.append(self.item_main_window)
self.menu.append(gtk.SeparatorMenuItem().new())
self.item_quit = gtk.MenuItem('Quit')
self.item_quit.connect('activate', self.quit)
self.menu.append(self.item_quit)
self.menu.show_all()
def build_menu():
menu = Gtk.Menu()
#brightness
item_brightness_up = Gtk.MenuItem('Increase Brightness')
item_brightness_up.connect('activate', increase_brightness)
menu.append(item_brightness_up)
item_brightness_down = Gtk.MenuItem("Decrease Brightness")
item_brightness_down.connect('activate', decrease_brightness)
menu.append(item_brightness_down)
#rotate
item_rotate = Gtk.MenuItem('Rotate')
item_rotate.connect('activate', rotate_screen)
menu.append(item_rotate)
#flip
item_flip = Gtk.MenuItem('Flip')
item_flip.connect('activate', flip_screen)
menu.append(item_flip)
#seperator
seperator = Gtk.SeparatorMenuItem()
menu.append(seperator)
#quit
item_quit = Gtk.MenuItem('Quit')
item_quit.connect('activate', quit)
menu.append(item_quit)
menu.show_all()
return menu