HarmattanEvopediaApplication::HarmattanEvopediaApplication(int& argc, char** argv) : QApplication(argc, argv), view(new QDeclarativeView()), evopedia(new Evopedia()), settings(new EvopediaSettings(evopedia.data())), languageListModel(new QStringListModelForQML("name")), titleListModel(new TitleListModel()) { searchPrefix = ""; // Set up the models languageListModel->setStringList(settings->getLanguageList()); titleListModel->setTitleIterator(TitleIterator()); // Export some C++ objects to QML. view->rootContext()->setContextProperty("languageListModel", languageListModel.data()); view->rootContext()->setContextProperty("titlesModel", titleListModel.data()); view->rootContext()->setContextProperty("evopedia", this); view->rootContext()->setContextProperty("evopediaSettings", settings.data()); // Set up the view view->setSource(QUrl("qrc:/Main.qml")); view->setAttribute(Qt::WA_OpaquePaintEvent); view->setAttribute(Qt::WA_NoSystemBackground); view->viewport()->setAttribute(Qt::WA_OpaquePaintEvent); view->viewport()->setAttribute(Qt::WA_NoSystemBackground); view->showFullScreen(); connect(settings.data(), SIGNAL(languageIndexChanged()), this, SLOT(refreshSearchResults())); connect(this, SIGNAL(searchPrefixChanged()), this, SLOT(refreshSearchResults())); refreshSearchResults(); }
void MainWindow::on_languageChooser_currentIndexChanged(const QString &text) { Qt::LayoutDirection dir = getLayoutDirection(text); ui->listView->setLayoutDirection(dir); ui->searchField->setLayoutDirection(dir); refreshSearchResults(); }
void MainWindow::backendsChanged(QList<LocalArchive *> backends) { ui->languageChooser->blockSignals(true); ui->languageChooser->clear(); foreach (LocalArchive *b, backends) ui->languageChooser->addItem(b->getLanguage()); ui->languageChooser->blockSignals(false); refreshSearchResults(); }
void MainWindow::on_searchField_textChanged(const QString &text) { Q_UNUSED(text); refreshSearchResults(); }