def __init__(self): Gtk.ComboBox.__init__(self) ToolButton.__init__(self, icon_name='font-text', tooltip=_('Select font')) self.connect('clicked', self.__font_selection_cb) context = self.get_pango_context() self._init_font_list() self._font_name = 'Sans' font_names = [] for family in context.list_families(): name = family.get_name() if name in self._font_white_list: font_names.append(name) for font_name in sorted(font_names): menu_item = MenuItem(font_name) markup = '<span font="%s">%s</span>' % (font_name, font_name) menu_item.get_children()[0].set_markup(markup) menu_item.connect('activate', self.__menu_activated, font_name) self.props.palette.menu.append(menu_item) menu_item.show() self.show()
def __init__(self): ToolButton.__init__(self, icon_name='font-text', tooltip=_('Select font')) self.connect('clicked', self.__font_selection_cb) context = self.get_pango_context() self._init_font_list() self._font_name = 'Sans' font_names = [] for family in context.list_families(): name = family.get_name() if name in self._font_white_list: font_names.append(name) for font_name in sorted(font_names): menu_item = MenuItem(font_name) markup = '<span font="%s">%s</span>' % (font_name, font_name) menu_item.get_children()[0].set_markup(markup) menu_item.connect('activate', self.__menu_activated, font_name) self.props.palette.menu.append(menu_item) menu_item.show() self.show()
def _reload_fonts(self, monitor, gio_file, other_file, event): if event != Gio.FileMonitorEvent.CHANGES_DONE_HINT: return self._font_white_list = [] self._font_white_list.extend(DEFAULT_FONTS) fonts_file = open(USER_FONTS_FILE_PATH) for line in fonts_file: self._font_white_list.append(line.strip()) # update the menu for child in self.props.palette.menu.get_children(): self.props.palette.menu.remove(child) child = None context = self.get_pango_context() tmp_list = [] for family in context.list_families(): name = family.get_name() if name in self._font_white_list: tmp_list.append(name) for font_name in sorted(tmp_list): menu_item = MenuItem(font_name) markup = '<span font="%s">%s</span>' % (font_name, font_name) menu_item.get_children()[0].set_markup(markup) menu_item.connect('activate', self.__menu_activated, font_name) self.props.palette.menu.append(menu_item) menu_item.show() return False
def _reload_fonts(self, monitor, gio_file, other_file, event): if event != Gio.FileMonitorEvent.CHANGES_DONE_HINT: return self._font_white_list = [] self._font_white_list.extend(DEFAULT_FONTS) fonts_file = open(USER_FONTS_FILE_PATH) for line in fonts_file: self._font_white_list.append(line.strip()) # update the menu for child in self.props.palette.menu.get_children(): self.props.palette.menu.remove(child) child = None context = self.get_pango_context() tmp_list = [] for family in context.list_families(): name = family.get_name() if name in self._font_white_list: tmp_list.append(name) for font_name in sorted(tmp_list): menu_item = MenuItem(font_name) markup = '<span font="%s">%s</span>' % (font_name, font_name) menu_item.get_children()[0].set_markup(markup) menu_item.connect('activate', self.__menu_activated, font_name) self.props.palette.menu.append(menu_item) menu_item.show() return False