void SettingsDialog::initLangs() { QSettings settings(QSettings::IniFormat, QSettings::UserScope, SETTING_ORGANIZATION, SETTING_APPLICATION); QString datapath = settings.value("Tesseract/DataPath").toString(); datapath += "tessdata"; TessTools tt; QList<QString> languages = tt.getLanguages(datapath); // Clean combobox with languages int langsCount = cbLang->count(); if (langsCount > 0) for (int i = langsCount; i >= 0; i--) { cbLang->removeItem(0); } QString lang; foreach(lang, languages) if (getLangName(lang) == "") cbLang->addItem(lang, lang); else cbLang->addItem(getLangName(lang), lang); // sort language list QSortFilterProxyModel* proxy = new QSortFilterProxyModel(cbLang); proxy->setSourceModel(cbLang->model()); cbLang->model()->setParent(proxy); cbLang->setModel(proxy); cbLang->model()->sort(0); }
void MainWindow::initLangs() { // Clean combobox with languages int langsCount = ui->comboBoxLang->count(); if (langsCount > 0) for (int i = langsCount; i >= 0; i--) { ui->comboBoxLang->removeItem(0); } QList<QString> languages; languages = getLangugagelist(); QString lang; foreach(lang, languages) if (getLangName(lang) == "") ui->comboBoxLang->addItem(lang, lang); else ui->comboBoxLang->addItem(getLangName(lang), lang); // sort language list QSortFilterProxyModel* proxy = new QSortFilterProxyModel(ui->comboBoxLang); proxy->setSourceModel(ui->comboBoxLang->model()); ui->comboBoxLang->model()->setParent(proxy); ui->comboBoxLang->setModel(proxy); ui->comboBoxLang->model()->sort(0); }
void SettingsDialog::initLangs() { QString datapath = lnPrefix->text(); datapath += "tessdata"; TessTools tt; QList<QString> languages = tt.getLanguages(datapath); // Clean combobox with languages int langsCount = cbLang->count(); if (langsCount > 0) for (int i = langsCount; i >= 0; i--) { cbLang->removeItem(0); } QString lang; foreach(lang, languages) if (getLangName(lang) == "") cbLang->addItem(lang, lang); else cbLang->addItem(getLangName(lang), lang); // sort language list QSortFilterProxyModel* proxy = new QSortFilterProxyModel(cbLang); proxy->setSourceModel(cbLang->model()); cbLang->model()->setParent(proxy); cbLang->setModel(proxy); cbLang->model()->sort(0); cbLang->setCurrentIndex(1); // do not show empty combobox if there is lang QSettings settings(QSettings::IniFormat, QSettings::UserScope, SETTING_ORGANIZATION, SETTING_APPLICATION); if (settings.contains("Tesseract/Lang")) { int langindex = cbLang->findData( settings.value("Tesseract/Lang").toString()); cbLang->setCurrentIndex(langindex); } }