File indexing completed on 2024-04-14 03:48:04

0001 // SPDX-License-Identifier: LGPL-2.1-or-later
0002 //
0003 // SPDX-FileCopyrightText: 2012 Dennis Nienhüser <nienhueser@kde.org>
0004 //
0005 
0006 #ifndef MARBLE_SEARCHWIDGET_H
0007 #define MARBLE_SEARCHWIDGET_H
0008 
0009 #include "marble_export.h"
0010 
0011 #include <QWidget>
0012 
0013 namespace Marble {
0014 
0015 class GeoDataPlacemark;
0016 class MarbleWidget;
0017 class SearchWidgetPrivate;
0018 
0019 class MARBLE_EXPORT SearchWidget : public QWidget
0020 {
0021     Q_OBJECT
0022 public:
0023     explicit SearchWidget( QWidget * parent = nullptr, Qt::WindowFlags flags = Qt::WindowFlags() );
0024 
0025     void setMarbleWidget( MarbleWidget* widget );
0026 
0027     ~SearchWidget() override;
0028 
0029 private:
0030     Q_PRIVATE_SLOT( d, void setSearchResult( const QVector<GeoDataPlacemark*>& ) )
0031     Q_PRIVATE_SLOT( d, void search( const QString &searchTerm, SearchMode searchMode ) )
0032     Q_PRIVATE_SLOT( d, void centerMapOn( const QModelIndex &index ) )
0033     Q_PRIVATE_SLOT( d, void handlePlanetChange() )
0034 
0035     SearchWidgetPrivate* const d;
0036 
0037 };
0038 
0039 }
0040 
0041 #endif