def _select_locale(self, locale): """ Try to select the given locale in the language and locale treeviews. This method tries to find the best match for the given locale. :return: a pair of selected iterators (language and locale) :rtype: a pair of GtkTreeIter or None objects """ # get lang and select it parts = localization.parse_langcode(locale) if "language" not in parts: # invalid locale, cannot select return (None, None) lang_itr = set_treeview_selection(self._langView, parts["language"], col=2) # find matches and use the one with the highest rank locales = localization.get_language_locales(locale) locale_itr = set_treeview_selection(self._localeView, locales[0], col=1) return (lang_itr, locale_itr)
def _refresh_locale_store(self, lang): """Refresh the localeStore with locales for the given language.""" self._localeStore.clear() locales = localization.get_language_locales(lang) for locale in locales: self._add_locale(self._localeStore, localization.get_native_name(locale), locale) # select the first locale (with the highest rank) set_treeview_selection(self._localeView, locales[0], col=1)
def _refresh_locale_store(self, lang): """Refresh the localeStore with locales for the given language.""" self._localeStore.clear() locales = localization.get_language_locales(lang) for locale in locales: self._add_locale(self._localeStore, localization.get_native_name(locale), locale) # select the first locale (with the highest rank) set_treeview_selection(self._localeView, locales[0], col=1)
def _select_locale(self, locale): """ Try to select the given locale in the language and locale treeviews. This method tries to find the best match for the given locale. :return: a pair of selected iterators (language and locale) :rtype: a pair of GtkTreeIter or None objects """ # get lang and select it parts = localization.parse_langcode(locale) if "language" not in parts: # invalid locale, cannot select return (None, None) lang_itr = set_treeview_selection(self._langView, parts["language"], col=2) # find matches and use the one with the highest rank locales = localization.get_language_locales(locale) locale_itr = set_treeview_selection(self._localeView, locales[0], col=1) return (lang_itr, locale_itr)
def refresh(self): """ The refresh method that is called every time the spoke is displayed. It should update the UI elements according to the contents of self.data. :see: pyanaconda.ui.common.UIObject.refresh """ if not self._addon_data.content_defined: # hide the control buttons really_hide(self._control_buttons) # provide SSG if available if common.ssg_available(): # show the SSG button and tweak the rest of the line # (the label) really_show(self._ssg_button) # TRANSLATORS: the other choice if SCAP Security Guide is also # available tip = _(" or enter data stream content or archive URL below:") else: # hide the SSG button really_hide(self._ssg_button) tip = _( "No content found. Please enter data stream content or " "archive URL below:") self._no_content_label.set_text(tip) # hide the progress box, no progress now with self._fetch_flag_lock: if not self._fetching: really_hide(self._progress_box) self._content_url_entry.set_sensitive(True) self._fetch_button.set_sensitive(True) if not self._content_url_entry.get_text(): # no text -> no info/warning self._progress_label.set_text("") # switch to the page allowing user to enter content URL and fetch # it self._main_notebook.set_current_page(GET_CONTENT_PAGE) self._content_url_entry.grab_focus() # nothing more to do here return else: # show control buttons really_show(self._control_buttons) self._main_notebook.set_current_page(SET_PARAMS_PAGE) self._active_profile = self._addon_data.profile_id self._update_ids_visibility() if self._using_ds: if self._addon_data.datastream_id: set_combo_selection(self._ds_combo, self._addon_data.datastream_id, unset_first=True) else: try: default_ds = next(iter(self._ds_checklists.keys())) set_combo_selection(self._ds_combo, default_ds, unset_first=True) except StopIteration: # no data stream available pass if self._addon_data.datastream_id and self._addon_data.xccdf_id: set_combo_selection(self._xccdf_combo, self._addon_data.xccdf_id, unset_first=True) else: # no combobox changes --> need to update profiles store manually self._update_profiles_store() if self._addon_data.profile_id: set_treeview_selection(self._profiles_view, self._addon_data.profile_id) self._rule_data = self._addon_data.rule_data self._update_message_store()
def refresh(self): """ The refresh method that is called every time the spoke is displayed. It should update the UI elements according to the contents of self.data. :see: pyanaconda.ui.common.UIObject.refresh """ if not self._addon_data.content_defined: # hide the control buttons really_hide(self._control_buttons) # provide SSG if available if common.ssg_available(): # show the SSG button and tweak the rest of the line # (the label) really_show(self._ssg_button) # TRANSLATORS: the other choice if SCAP Security Guide is also # available tip = _(" or enter data stream content or archive URL below:") else: # hide the SSG button really_hide(self._ssg_button) tip = _("No content found. Please enter data stream content or " "archive URL below:") self._no_content_label.set_text(tip) # hide the progress box, no progress now with self._fetch_flag_lock: if not self._fetching: really_hide(self._progress_box) self._content_url_entry.set_sensitive(True) self._fetch_button.set_sensitive(True) if not self._content_url_entry.get_text(): # no text -> no info/warning self._progress_label.set_text("") # switch to the page allowing user to enter content URL and fetch # it self._main_notebook.set_current_page(GET_CONTENT_PAGE) self._content_url_entry.grab_focus() # nothing more to do here return else: # show control buttons really_show(self._control_buttons) self._main_notebook.set_current_page(SET_PARAMS_PAGE) self._active_profile = self._addon_data.profile_id self._update_ids_visibility() if self._using_ds: if self._addon_data.datastream_id: set_combo_selection(self._ds_combo, self._addon_data.datastream_id, unset_first=True) else: try: default_ds = next(iter(self._ds_checklists.keys())) set_combo_selection(self._ds_combo, default_ds, unset_first=True) except StopIteration: # no data stream available pass if self._addon_data.datastream_id and self._addon_data.xccdf_id: set_combo_selection(self._xccdf_combo, self._addon_data.xccdf_id, unset_first=True) else: # no combobox changes --> need to update profiles store manually self._update_profiles_store() if self._addon_data.profile_id: set_treeview_selection(self._profiles_view, self._addon_data.profile_id) self._rule_data = self._addon_data.rule_data self._update_message_store()