diff options
Diffstat (limited to 'lib/addressbar/addressbar.h')
-rw-r--r-- | lib/addressbar/addressbar.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/lib/addressbar/addressbar.h b/lib/addressbar/addressbar.h new file mode 100644 index 0000000..861f985 --- /dev/null +++ b/lib/addressbar/addressbar.h @@ -0,0 +1,44 @@ +/* + * This file is part of smolbote. It's copyrighted by the contributors recorded + * in the version control history of the file, available from its original + * location: https://neueland.iserlohn-fortress.net/smolbote.hg + * + * SPDX-License-Identifier: GPL-3.0 + */ + +#ifndef SMOLBOTE_ADDRESSBAR_H +#define SMOLBOTE_ADDRESSBAR_H + +#include <QWidget> +#include <functional> + +class QWebEngineView; +class UrlLineEdit; +class QProgressBar; +class QMenu; +class AddressBar : public QWidget +{ + Q_OBJECT + +public: + AddressBar(const QHash<QString, QString> &config, QWidget *parent = nullptr); + ~AddressBar() override; + +signals: + void complete(const QString &term, std::function<void(QStringList &)> callback); + void search(const QString &term); + +public slots: + void setView(QWebEngineView *view); + void setPageMenu(QMenu *menu); + void setToolsMenu(QMenu *menu); + +private: + UrlLineEdit *urlBar; + QProgressBar *progressBar; + + QMetaObject::Connection urlChangedConnection, loadUrlConnection; + QMetaObject::Connection progressBarConnection; +}; + +#endif // SMOLBOTE_ADDRESSBAR_H |