def __init_gettext(self): locale.setlocale(locale.LC_ALL, "") localedir = os.getenv("IBUS_LOCALEDIR") gettext.bindtextdomain(GETTEXT_PACKAGE, localedir) gettext.bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8") glade.bindtextdomain(GETTEXT_PACKAGE, localedir) glade.textdomain(GETTEXT_PACKAGE)
def __init__(self): super(Setup, self).__init__() locale.bind_textdomain_codeset("ibus", "UTF-8") glade.textdomain("ibus") glade_file = path.join(path.dirname(__file__), "./setup.glade") self.__xml = glade.XML(glade_file) self.__bus = None self.__init_bus() self.__init_ui()
def __init__(self): self.prefs = prefs = AnthyPrefs() localedir = getenv("IBUS_LOCALEDIR") bindtextdomain("ibus-anthy", localedir) glade.bindtextdomain("ibus-anthy", localedir) glade.textdomain("ibus-anthy") glade_file = path.join(path.dirname(__file__), "setup.glade") self.xml = xml = glade.XML(glade_file) # glade "icon_name" property has a custom scaling and it seems # to be difficult to show the complicated small icon in metacity. # This can add the pixbuf without scaling. anthydir = path.dirname(path.dirname(__file__)) if not anthydir: anthydir = "/usr/share/ibus-anthy" icon_path = path.join(anthydir, "icons", "ibus-anthy.png") if path.exists(icon_path): xml.get_widget('main').set_icon_from_file(icon_path) for name in ['input_mode', 'typing_method', 'period_style', 'symbol_style', 'ten_key_mode', 'behavior_on_focus_out', 'behavior_on_period', 'half_width_symbol', 'half_width_number', 'half_width_space']: xml.get_widget(name).set_active(prefs.get_value('common', name)) l = ['default', 'atok', 'wnn'] s_type = prefs.get_value('common', 'shortcut_type') s_type = s_type if s_type in l else 'default' xml.get_widget('shortcut_type').set_active(l.index(s_type)) xml.get_widget('page_size').set_value(prefs.get_value('common', 'page_size')) tv = xml.get_widget('shortcut') tv.append_column(gtk.TreeViewColumn(_("Command"), gtk.CellRendererText(), text=0)) renderer = gtk.CellRendererText() renderer.set_property("ellipsize", pango.ELLIPSIZE_END) tv.append_column(gtk.TreeViewColumn(_("Shortcut"), renderer, text=1)) tv.get_selection().connect_after('changed', self.on_selection_changed, 0) ls = gtk.ListStore(str, str) sec = 'shortcut/' + s_type for k in self.prefs.keys(sec): ls.append([k, l_to_s(self.prefs.get_value(sec, k))]) tv.set_model(ls) tv = xml.get_widget('treeview2') tv.append_column(gtk.TreeViewColumn('', gtk.CellRendererText(), text=0)) tv.get_selection().connect_after('changed', self.on_selection_changed, 1) tv.set_model(gtk.ListStore(str)) xml.signal_autoconnect(self)
def __init_ui(self): glade.textdomain("ibus-pinyin") glade_file = path.join(path.dirname(__file__), "setup.glade") self.__xml = glade.XML (glade_file) self.__window = self.__xml.get_widget("window_main") for name, info in self.__options.items(): info[1] (name, "init", info) info[1] (name, "read", info) self.__xml.signal_autoconnect(self) self.__window.show_all()
def __init__(self): super(Setup, self).__init__() localedir = os.getenv("IBUS_LOCALEDIR") gettext.bindtextdomain("ibus", localedir) glade.bindtextdomain("ibus", localedir) gettext.bind_textdomain_codeset("ibus", "UTF-8") glade.textdomain("ibus") glade_file = path.join(path.dirname(__file__), "./setup.glade") self.__xml = glade.XML(glade_file) self.__bus = None self.__init_bus() self.__init_ui()
def __init_i18n(self): from Globals import data_path from os import path locale_folder = path.join(data_path, "locale") # Initialize glade first. try: from locale import setlocale, LC_ALL, Error, bindtextdomain bindtextdomain("scribes", locale_folder) setlocale(LC_ALL, "") except Error: pass from gtk import glade glade.bindtextdomain("scribes", locale_folder) glade.textdomain("scribes") from gettext import textdomain, bindtextdomain from gettext import install, bind_textdomain_codeset bindtextdomain("scribes", locale_folder) bind_textdomain_codeset("scribes", "UTF-8") textdomain("scribes") install("scribes", locale_folder, unicode=1) return
def bind_glade_domain(): from gtk import glade glade.bindtextdomain(APP_NAME, LOCALE_DIR) glade.textdomain(APP_NAME)
def __init__(self): self.__config = Bus().get_config() self.__thumb_kb_layout_mode = None self.__thumb_kb_layout = None self.prefs = prefs = AnthyPrefs(None, self.__config) localedir = getenv("IBUS_LOCALEDIR") bindtextdomain("ibus-anthy", localedir) glade.bindtextdomain("ibus-anthy", localedir) glade.textdomain("ibus-anthy") glade_file = path.join(path.dirname(__file__), "setup.glade") self.xml = xml = glade.XML(glade_file) # glade "icon_name" property has a custom scaling and it seems # to be difficult to show the complicated small icon in metacity. # This can add the pixbuf without scaling. anthydir = path.dirname(path.dirname(__file__)) if not anthydir: anthydir = "/usr/share/ibus-anthy" icon_path = path.join(anthydir, "icons", "ibus-anthy.png") if path.exists(icon_path): xml.get_widget('main').set_icon_from_file(icon_path) for name in ['input_mode', 'typing_method', 'conversion_segment_mode', 'period_style', 'symbol_style', 'ten_key_mode', 'behavior_on_focus_out', 'behavior_on_period', 'half_width_symbol', 'half_width_number', 'half_width_space', 'thumb:keyboard_layout_mode', 'thumb:keyboard_layout', 'thumb:fmv_extension', 'thumb:handakuten']: section, key = self.__get_section_key(name) xml.get_widget(name).set_active(prefs.get_value(section, key)) l = ['default', 'atok', 'wnn'] s_type = prefs.get_value('common', 'shortcut_type') s_type = s_type if s_type in l else 'default' xml.get_widget('shortcut_type').set_active(l.index(s_type)) xml.get_widget('page_size').set_value(prefs.get_value('common', 'page_size')) tv = xml.get_widget('shortcut') tv.append_column(gtk.TreeViewColumn(_("Command"), gtk.CellRendererText(), text=0)) renderer = gtk.CellRendererText() renderer.set_property("ellipsize", pango.ELLIPSIZE_END) tv.append_column(gtk.TreeViewColumn(_("Shortcut"), renderer, text=1)) tv.get_selection().connect_after('changed', self.on_selection_changed, 0) ls = gtk.ListStore(str, str) sec = 'shortcut/' + s_type for k in self.prefs.keys(sec): ls.append([k, l_to_s(self.prefs.get_value(sec, k))]) tv.set_model(ls) self.__thumb_kb_layout_mode = xml.get_widget('thumb:keyboard_layout_mode') self.__thumb_kb_layout = xml.get_widget('thumb:keyboard_layout') self.__set_thumb_kb_label() for name in ['thumb:ls', 'thumb:rs']: section, key = self.__get_section_key(name) xml.get_widget(name).set_text(prefs.get_value(section, key)) tv = xml.get_widget('treeview2') tv.append_column(gtk.TreeViewColumn('', gtk.CellRendererText(), text=0)) tv.get_selection().connect_after('changed', self.on_selection_changed, 1) tv.set_model(gtk.ListStore(str)) key = 'dict_admin_command' cli = self.__get_dict_cli_from_list(prefs.get_value('common', key)) name = 'dict:entry_edit_dict_command' xml.get_widget(name).set_text(cli) key = 'add_word_command' cli = self.__get_dict_cli_from_list(prefs.get_value('common', key)) name = 'dict:entry_add_word_command' xml.get_widget(name).set_text(cli) tv = xml.get_widget('dict:view') column = gtk.TreeViewColumn((" ")) renderer = gtk.CellRendererText() column.pack_start(renderer, False) column.set_cell_data_func(renderer, self.__text_cell_data_cb, 1) tv.append_column(column) column = gtk.TreeViewColumn(_("Description")) renderer = gtk.CellRendererText() column.pack_start(renderer, False) column.set_cell_data_func(renderer, self.__text_cell_data_cb, 2) column.set_max_width(300) tv.append_column(column) # Translators: "Embd" means a short word of 'embedded'. column = gtk.TreeViewColumn(_("Embd")) renderer = gtk.CellRendererToggle() renderer.set_radio(False) column.pack_start(renderer, False) column.set_cell_data_func(renderer, self.__toggle_cell_data_cb, 3) tv.append_column(column) # Translators: "Sgl" means a short word of 'single'. column = gtk.TreeViewColumn(_("Sgl")) renderer = gtk.CellRendererToggle() renderer.set_radio(False) column.pack_start(renderer, False) column.set_cell_data_func(renderer, self.__toggle_cell_data_cb, 4) tv.append_column(column) ''' Unfortunatelly reverse conversion is too slow. # Translators: "Rev" means a short word of 'reverse'. column = gtk.TreeViewColumn(_("Rev")) renderer = gtk.CellRendererToggle() renderer.set_radio(False) column.pack_start(renderer, False) column.set_cell_data_func(renderer, self.__toggle_cell_data_cb, 5) tv.append_column(column) ''' ls = gtk.ListStore(str, str, str, bool, bool, bool) tv.set_model(ls) self.__append_dicts_in_model() xml.signal_autoconnect(self)
def __init__ (self): gettext.bindtextdomain (PACKAGE) gettext.textdomain (PACKAGE) glade.bindtextdomain(PACKAGE) glade.textdomain (PACKAGE) locale = os.getenv ('LC_MESSAGES') if not locale: locale = os.getenv ('LC_ALL') if not locale: locale = os.getenv ('LANG', 'C') try: self.locale = locale[:locale.index ('.')] except ValueError: self.locale = locale print_debug ('SL: %s - L: %s' % (self.locale, locale)) self.gui = glade.XML ('/usr/share/galternatives/galternatives.glade') self.gui.signal_autoconnect (globals ()) self.main_window = self.gui.get_widget ('main_window') # menus / about / credits self.about_window = self.gui.get_widget ('about_window') self.about_window.connect ('delete-event', self.close_about_window_cb) self.about_image = self.gui.get_widget ('about_image') self.about_image.set_from_file ('/usr/share/pixmaps/galternatives.png') self.about_mitem = self.gui.get_widget ('about_mitem') self.about_mitem.connect ('activate', self.show_about_window_cb) self.credits_button = self.gui.get_widget ('credits_button') self.credits_button.connect ('clicked', self.show_credits_window_cb) self.about_close_button = self.gui.get_widget ('about_close_button') self.about_close_button.connect ('clicked', self.close_about_window_cb) self.credits_window = self.gui.get_widget ('credits_window') self.credits_window.connect ('delete-event', self.close_credits_window_cb) translator_label = self.gui.get_widget ('translator_label') if translator_label.get_text () == 'translator_credits': translator_label.set_text (_('Unknown/None')) self.credits_close_button = self.gui.get_widget ('credits_close_button') self.credits_close_button.connect ('clicked', self.close_credits_window_cb) # alternatives treeview self.alternatives_tv = self.gui.get_widget ('alternatives_tv') self.alternatives_model = gtk.TreeStore (gobject.TYPE_STRING) self.alternatives_tv.set_model (self.alternatives_model) self.set_alternatives_columns () self.alternatives_selection = self.alternatives_tv.get_selection () self.alternatives_selection.connect ('changed', self.alternative_selected_cb) self.status_menu = self.gui.get_widget ('status_menu') self.status_changed_signal = self.status_menu.connect ('changed', self.status_changed_cb) self.update_alternatives () # tree for options for each alternative self.options_tv = self.gui.get_widget ('options_tv') self.options_model = gtk.TreeStore (gobject.TYPE_BOOLEAN, gobject.TYPE_INT, gobject.TYPE_STRING) self.options_model.set_sort_column_id (self.PRIORITY, gtk.SORT_DESCENDING) self.options_tv.set_model (self.options_model) self.set_options_columns () self.opt_add_button = self.gui.get_widget ('opt_add_button') self.opt_add_button.connect ('clicked', self.show_add_opt_window_cb) self.opt_properties_button = self.gui.get_widget ('opt_properties_button') self.opt_properties_button.connect ('clicked', self.show_details_cb) self.opt_remove_button = self.gui.get_widget ('opt_remove_button') self.opt_remove_button.connect ('clicked', self.remove_option_cb) # add option window self.add_opt_window = self.gui.get_widget ('add_opt_window') self.add_opt_window.connect ('delete-event', self.hide_add_opt_window_cb) self.add_opt_entry = self.gui.get_widget ('add_opt_entry') self.add_opt_spin = self.gui.get_widget ('add_opt_spin') self.file_selector = self.gui.get_widget ('file_selector') self.filesel_ok = self.gui.get_widget ('filesel_ok') self.filesel_ok.connect ('clicked', self.close_filesel_cb) self.filesel_cancel = self.gui.get_widget ('filesel_cancel') self.filesel_cancel.connect ('clicked', self.close_filesel_cb) self.browse_opt_button = self.gui.get_widget ('browse_opt_button') self.browse_opt_button.connect ('clicked', self.choose_opt_cb) self.add_opt_cancel = self.gui.get_widget ('add_opt_cancel') self.add_opt_cancel.connect ('clicked', self.hide_add_opt_window_cb) self.add_opt_ok = self.gui.get_widget ('add_opt_ok') self.add_opt_ok.connect ('clicked', self.add_option_cb) # details window self.details_window = self.gui.get_widget ('details_window') self.details_window.connect ('delete_event', self.hide_details_cb) # tree for slaves for each option self.slaves_tv = self.gui.get_widget ('slaves_tv') self.slaves_model = gtk.TreeStore (gobject.TYPE_STRING, gobject.TYPE_STRING) self.slaves_tv.set_model (self.slaves_model) self.set_slaves_columns () # selects the first alternative on the list iter = self.alternatives_model.get_iter_first () if iter != None: self.alternatives_selection.select_iter (iter)