def get_languages(): langs = gedit.language_manager_list_languages_sorted( gedit.get_language_manager(), True) lang_ids = [] for lang in langs: lang_ids.append(lang.get_id()) return lang_ids
def init_languages(self, languages): manager = gsv.LanguageManager() langs = gedit.language_manager_list_languages_sorted(manager, True) self.model.append([_('All languages'), None, not languages]) self.model.append(['-', None, False]) self.model.append([_('Plain Text'), 'plain', 'plain' in languages]) self.model.append(['-', None, False]) for lang in langs: self.model.append([lang.get_name(), lang.get_id(), lang.get_id() in languages])
def build_model(self, force_reload = False): window = gedit.app_get_default().get_active_window() if window: view = window.get_active_view() if not view: current_lang = None else: current_lang = view.get_buffer().get_language() source_view = self['source_view_snippet'] else: current_lang = None tree_view = self['tree_view_snippets'] expand = None if not self.model or force_reload: self.model = gtk.TreeStore(str, str, object) self.model.set_sort_column_id(self.SORT_COLUMN, gtk.SORT_ASCENDING) manager = get_language_manager() langs = gedit.language_manager_list_languages_sorted(manager, True) piter = self.model.append(None, (_('Global'), '', None)) # Add dummy node self.model.append(piter, ('', '', None)) nm = None if current_lang: nm = current_lang.get_name() for lang in langs: name = lang.get_name() parent = self.model.append(None, (name, name, lang)) # Add dummy node self.model.append(parent, ('', '', None)) if (nm == name): expand = parent else: if current_lang: piter = self.model.get_iter_first() nm = current_lang.get_name() while piter: lang = self.model.get_value(piter, \ self.SORT_COLUMN) if lang == nm: expand = piter break; piter = self.model.iter_next(piter) tree_view.set_model(self.model) if not expand: expand = self.model.get_iter_root() tree_view.expand_row(self.model.get_path(expand), False) self.select_iter(expand)