void SearchWidget::setMarbleWidget( MarbleWidget* widget ) { if ( d->m_widget ) { return; } d->m_widget = widget; d->m_searchField->setCompletionModel( widget->model()->placemarkModel() ); connect( d->m_searchField, SIGNAL(centerOn(GeoDataCoordinates)), widget, SLOT(centerOn(GeoDataCoordinates)) ); d->m_runnerManager = new MarbleRunnerManager( widget->model()->pluginManager(), this ); d->m_runnerManager->setModel( widget->model() ); connect( d->m_runnerManager, SIGNAL(searchResultChanged(QVector<GeoDataPlacemark*>)), this, SLOT(setSearchResult(QVector<GeoDataPlacemark*>)) ); connect( d->m_runnerManager, SIGNAL(searchFinished(QString)), d->m_searchField, SLOT(disableSearchAnimation())); GeoDataTreeModel* treeModel = d->m_widget->model()->treeModel(); treeModel->addDocument( d->m_document ); d->m_branchfilter.setSourceModel( treeModel ); d->m_branchfilter.setBranchIndex( treeModel, treeModel->index( d->m_document ) ); d->m_searchResultView->setRootIndex( d->m_sortproxy.mapFromSource( d->m_branchfilter.mapFromSource( treeModel->index( d->m_document ) ) ) ); }
void SearchTitleBar::onSearchTimerOut() { const QString inputText = m_searchInputEdit->text().trimmed(); if (inputText.isEmpty()) return; QList<LocationData> searchResultList; searchResultList = m_locationWorker->exactMatchCity(inputText); if (searchResultList.isEmpty()) { emit this->requestShowNoResultLabel(); } else { setSearchResult(searchResultList); } }