LocationCompleterView: Add button to open search engine settings

Closes #2568
remotes/origin/Falkon/3.0
David Rosca 8 years ago
parent d443a69d8f
commit b618323a5e
No known key found for this signature in database
GPG Key ID: EBC3FC294452C6D8
  1. 30
      src/lib/navigation/completer/locationcompleterview.cpp
  2. 5
      src/lib/navigation/completer/locationcompleterview.h

@ -18,6 +18,9 @@
#include "locationcompleterview.h" #include "locationcompleterview.h"
#include "locationcompletermodel.h" #include "locationcompletermodel.h"
#include "locationcompleterdelegate.h" #include "locationcompleterdelegate.h"
#include "toolbutton.h"
#include "iconprovider.h"
#include "searchenginesdialog.h"
#include <QKeyEvent> #include <QKeyEvent>
#include <QApplication> #include <QApplication>
@ -57,6 +60,22 @@ LocationCompleterView::LocationCompleterView()
m_delegate = new LocationCompleterDelegate(this); m_delegate = new LocationCompleterDelegate(this);
m_view->setItemDelegate(m_delegate); m_view->setItemDelegate(m_delegate);
QWidget *searchWidget = new QWidget(this);
QHBoxLayout *searchLayout = new QHBoxLayout(searchWidget);
searchLayout->setContentsMargins(2, 2, 2, 2);
searchWidget->setLayout(searchLayout);
ToolButton *searchSettingsButton = new ToolButton(this);
searchSettingsButton->setToolTip(tr("Manage Search Engines"));
searchSettingsButton->setAutoRaise(true);
searchSettingsButton->setIcon(IconProvider::settingsIcon());
connect(searchSettingsButton, &ToolButton::clicked, this, &LocationCompleterView::openSearchEnginesDialog);
searchLayout->addStretch();
searchLayout->addWidget(searchSettingsButton);
layout->addWidget(searchWidget);
} }
QAbstractItemModel *LocationCompleterView::model() const QAbstractItemModel *LocationCompleterView::model() const
@ -325,3 +344,14 @@ void LocationCompleterView::close()
emit closed(); emit closed();
} }
void LocationCompleterView::openSearchEnginesDialog()
{
if (!m_searchDialog) {
m_searchDialog = new SearchEnginesDialog(this);
}
m_searchDialog->open();
m_searchDialog->raise();
m_searchDialog->activateWindow();
}

@ -18,10 +18,12 @@
#ifndef LOCATIONCOMPLETERVIEW_H #ifndef LOCATIONCOMPLETERVIEW_H
#define LOCATIONCOMPLETERVIEW_H #define LOCATIONCOMPLETERVIEW_H
#include <QPointer>
#include <QListView> #include <QListView>
#include "qzcommon.h" #include "qzcommon.h"
class SearchEnginesDialog;
class LocationCompleterDelegate; class LocationCompleterDelegate;
class FALKON_EXPORT LocationCompleterView : public QWidget class FALKON_EXPORT LocationCompleterView : public QWidget
@ -56,10 +58,13 @@ public slots:
void close(); void close();
private: private:
void openSearchEnginesDialog();
bool m_ignoreNextMouseMove; bool m_ignoreNextMouseMove;
QListView *m_view; QListView *m_view;
LocationCompleterDelegate *m_delegate; LocationCompleterDelegate *m_delegate;
QPointer<SearchEnginesDialog> m_searchDialog;
}; };
#endif // LOCATIONCOMPLETERVIEW_H #endif // LOCATIONCOMPLETERVIEW_H

Loading…
Cancel
Save