diff options
author | aqua <aqua@iserlohn-fortress.net> | 2022-09-09 10:08:01 +0300 |
---|---|---|
committer | aqua <aqua@iserlohn-fortress.net> | 2022-09-14 08:50:47 +0300 |
commit | b10895dd611057bf09c8142d9ebb55263db4faf0 (patch) | |
tree | c3577fb00fe4212f90e1fd283d7fb8bda975a775 /src/searchengine.hpp | |
parent | Add clazy cmake preset (diff) | |
download | rekonq-b10895dd611057bf09c8142d9ebb55263db4faf0.tar.xz |
Rework SearchEngineRKNQ-11-main-window
Diffstat (limited to 'src/searchengine.hpp')
-rw-r--r-- | src/searchengine.hpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/searchengine.hpp b/src/searchengine.hpp new file mode 100644 index 00000000..3eff4b58 --- /dev/null +++ b/src/searchengine.hpp @@ -0,0 +1,42 @@ +/* ============================================================ + * The rekonq project + * ============================================================ + * SPDX-License-Identifier: GPL-2.0-or-later + * Copyright (C) 2008-2012 by Andrea Diamantini <adjam7 at gmail dot com> + * Copyright (C) 2009-2011 by Lionel Chauvin <megabigbug@yahoo.fr> + * SPDX-License-Identifier: GPL-3.0-only + * Copyright (C) 2022 aqua <aqua@iserlohn-fortress.net> + * ============================================================ + * Description: Search engine manager + * ============================================================ */ + +#pragma once + +#include <QIcon> +#include <QList> +#include <QString> +#include <rsettings.hpp> + +class SearchEngine { +public: + static void reload(RekonqSettings *settings); + static SearchEngine *defaultEngine(); + static QList<SearchEngine *> engines(); + + SearchEngine(const QString &id, RekonqSettings *settings); + + [[nodiscard]] auto id() const { return m_id; } + [[nodiscard]] auto icon() const { return m_icon; } + [[nodiscard]] auto name() const { return m_name; } + void setName(const QString &name) { m_name = name; } + [[nodiscard]] bool isEnabled() const { return m_enabled; } + + [[nodiscard]] QString query(const QString &text) const { return m_url.arg(text); } + +private: + const QString m_id; + QIcon m_icon; + QString m_name; + QString m_url; + bool m_enabled; +}; |