18#ifndef QGSLOCATORWIDGET_H
19#define QGSLOCATORWIDGET_H
34class QgsLocatorResultsView;
37class QgsLocatorLineEdit;
79 void setPlaceholderText(
const QString &text );
93 void search(
const QString &
string );
99 void invalidateResults();
109 bool eventFilter( QObject *obj, QEvent *event )
override;
112 void performSearch();
114 void triggerSearchAndShowList();
115 void configMenuAboutToShow();
116 void scheduleDelayedPopup();
118 void showContextMenu(
const QPoint &point );
119 void selectionChanged(
const QItemSelection &selected,
const QItemSelection &deselected );
123 QgsLocatorLineEdit *mLineEdit =
nullptr;
125 QgsLocatorResultsView *mResultsView =
nullptr;
127 QList<QMetaObject::Connection> mCanvasConnections;
128 QMenu *mMenu =
nullptr;
132 bool mHasSelectedResult =
false;
134 void acceptCurrentEntry();
146 QgsLocatorFilterFilter(
QgsLocatorWidget *widget, QObject *parent =
nullptr );
151 QString name()
const override {
return QStringLiteral(
"filters" ); }
152 QString
displayName()
const override {
return QString(); }
166class GUI_EXPORT QgsLocatorResultsView :
public QTreeView
174 QgsLocatorResultsView( QWidget *parent =
nullptr );
179 void recalculateSize();
184 void selectNextResult();
189 void selectPreviousResult();
203 explicit QgsLocatorLineEdit(
QgsLocatorWidget *locator, QWidget *parent =
nullptr );
206 bool performCompletion();
209 void paintEvent( QPaintEvent *event )
override;
213 QString mCompletionText =
nullptr;
Base class for feedback objects to be used for cancellation of something running in a worker thread.
QLineEdit subclass with built in support for clearing the widget's value and handling custom null val...
Encapsulates the properties relating to the context of a locator search.
Abstract base class for filters which collect locator results.
Priority
Filter priority. Controls the order of results in the locator.
virtual QString displayName() const =0
Returns a translated, user-friendly name for the filter.
virtual Priority priority() const
Returns the priority for the filter, which controls how results are ordered in the locator.
virtual void triggerResult(const QgsLocatorResult &result)=0
Triggers a filter result from this filter.
virtual QgsLocatorFilter * clone() const =0
Creates a clone of the filter.
virtual void fetchResults(const QString &string, const QgsLocatorContext &context, QgsFeedback *feedback)=0
Retrieves the filter results for a specified search string.
The QgsLocatorModelBridge class provides the core functionality to be used in a locator widget.
Encapsulates properties of an individual matching result found by a QgsLocatorFilter.
Handles the management of QgsLocatorFilter objects and async collection of search results from them.
Map canvas is a class for displaying all GIS data types on a canvas.
An integer settings entry.
QgsSettingsTreeNode is a tree node for the settings tree to help organizing and introspecting the tre...
QgsSettingsTreeNode * createChildNode(const QString &key)
Creates a normal tree node It will return the existing child node if it exists at the given key.
static QgsSettingsTreeNode * sTreeGui