diff options
| author | Akshay Nair <phenax5@gmail.com> | 2025-03-18 21:19:28 +0530 |
|---|---|---|
| committer | Akshay Nair <phenax5@gmail.com> | 2025-03-18 21:19:47 +0530 |
| commit | 4c762b2516bc664293c2aec072074f1e34dda8c3 (patch) | |
| tree | ebe441f7af8c1f4c49f04630538312d55f18f63b /include/completion | |
| parent | 056b0b16947ac19a0c425aa9d2ff8f589378d3bc (diff) | |
| download | null-browser-4c762b2516bc664293c2aec072074f1e34dda8c3.tar.gz null-browser-4c762b2516bc664293c2aec072074f1e34dda8c3.zip | |
Remove all the ui bits because screw it, lets unix a bit more
Diffstat (limited to 'include/completion')
| -rw-r--r-- | include/completion/Adapter.hpp | 12 | ||||
| -rw-r--r-- | include/completion/CommandsAdapter.hpp | 19 | ||||
| -rw-r--r-- | include/completion/CommandsModel.hpp | 34 | ||||
| -rw-r--r-- | include/completion/Completer.hpp | 42 | ||||
| -rw-r--r-- | include/completion/CompleterDelegate.hpp | 22 | ||||
| -rw-r--r-- | include/completion/FuzzySearchProxyModel.hpp | 15 | ||||
| -rw-r--r-- | include/completion/TabsAdapter.hpp | 20 | ||||
| -rw-r--r-- | include/completion/TabsModel.hpp | 25 | ||||
| -rw-r--r-- | include/completion/UrlAdapter.hpp | 19 | ||||
| -rw-r--r-- | include/completion/UrlModel.hpp | 25 |
10 files changed, 0 insertions, 233 deletions
diff --git a/include/completion/Adapter.hpp b/include/completion/Adapter.hpp deleted file mode 100644 index 882d457..0000000 --- a/include/completion/Adapter.hpp +++ /dev/null @@ -1,12 +0,0 @@ -#pragma once - -#include <QWidget> -#include <QtCore> - -#include "completion/Completer.hpp" - -class Adapter : public QObject { -public: - virtual Completer *completer() = 0; - virtual QString prompt() = 0; -}; diff --git a/include/completion/CommandsAdapter.hpp b/include/completion/CommandsAdapter.hpp deleted file mode 100644 index 0a0b61b..0000000 --- a/include/completion/CommandsAdapter.hpp +++ /dev/null @@ -1,19 +0,0 @@ -#pragma once - -#include <QWidget> -#include <QtCore> - -#include "completion/Adapter.hpp" - -class CommandsAdapter : public Adapter { - Q_OBJECT - -public: - CommandsAdapter(); - ~CommandsAdapter(); - Completer *completer() override; - QString prompt() override; - -private: - Completer *completerInstance; -}; diff --git a/include/completion/CommandsModel.hpp b/include/completion/CommandsModel.hpp deleted file mode 100644 index 4f64654..0000000 --- a/include/completion/CommandsModel.hpp +++ /dev/null @@ -1,34 +0,0 @@ -#pragma once - -#include <QAbstractListModel> -#include <QWidget> -#include <QtCore> - -struct Command { - QString name; - QString description; -}; - -// TODO: Combine commands model completion and commands evaluation -const QList<Command> commands = { - {.name = "open", .description = "Update current URL"}, - {.name = "tabs", .description = "Select a tab"}, - {.name = "tabopen", .description = "Open a url in a new tab"}, - {.name = "tabnext", .description = "Go to next tab"}, - {.name = "tabprev", .description = "Go to previous tab"}, -}; - -class CommandsModel : public QAbstractListModel { - Q_OBJECT - -public: - CommandsModel(QObject *parent = nullptr); - int rowCount(const QModelIndex &parent = QModelIndex()) const override; - int columnCount(const QModelIndex &parent = QModelIndex()) const override; - QHash<int, QByteArray> roleNames() const override; - QVariant data(const QModelIndex &index, - int role = Qt::DisplayRole) const override; - -private: - QList<Command> items; -}; diff --git a/include/completion/Completer.hpp b/include/completion/Completer.hpp deleted file mode 100644 index c1b77a6..0000000 --- a/include/completion/Completer.hpp +++ /dev/null @@ -1,42 +0,0 @@ -#pragma once - -#include <QCompleter> -#include <QHBoxLayout> -#include <QSortFilterProxyModel> -#include <QWidget> -#include <QtCore> -#include <QtWidgets/qtreeview.h> -#include <cstdint> - -#include "completion/CompleterDelegate.hpp" -#include "completion/FuzzySearchProxyModel.hpp" -#include "utils.hpp" - -class Completer : public QWidget { - Q_OBJECT - -public: - Completer(QWidget *parentNode = nullptr); - - DELEGATE((&proxyModel), setSourceModel, setSourceModel) - DELEGATE((&proxyModel), sourceModel, sourceModel) - -signals: - void accepted(QString text); - -public slots: - void onTextChange(QString text); - bool onKeyPressEvent(QKeyEvent *event); - -protected: - void setHighlightedRow(uint32_t); - void acceptHighlighted(); - - DELEGATE(this, onKeyPressEvent, keyPressEvent) - -private: - QTreeView *view; - FuzzySearchProxyModel proxyModel; - CompleterDelegate *viewDelegate; - QHBoxLayout *layout; -}; diff --git a/include/completion/CompleterDelegate.hpp b/include/completion/CompleterDelegate.hpp deleted file mode 100644 index 8de22de..0000000 --- a/include/completion/CompleterDelegate.hpp +++ /dev/null @@ -1,22 +0,0 @@ -#pragma once - -#include <QStyledItemDelegate> -#include <QWidget> -#include <QtCore/qabstractitemmodel.h> -#include <QtCore> -#include <cstdint> - -class CompleterDelegate : public QStyledItemDelegate { - Q_OBJECT - -public: - explicit CompleterDelegate(QObject *parent = nullptr); - - void paint(QPainter *painter, const QStyleOptionViewItem &option, - const QModelIndex &index) const override; - void setCurrentRow(uint32_t); - uint32_t currentRow(); - -private: - uint32_t row; -}; diff --git a/include/completion/FuzzySearchProxyModel.hpp b/include/completion/FuzzySearchProxyModel.hpp deleted file mode 100644 index ee4bfc3..0000000 --- a/include/completion/FuzzySearchProxyModel.hpp +++ /dev/null @@ -1,15 +0,0 @@ -#pragma once - -#include <QWidget> -#include <QtCore> - -class FuzzySearchProxyModel : public QSortFilterProxyModel { - Q_OBJECT - -public: - using QSortFilterProxyModel::QSortFilterProxyModel; - -protected: - bool filterAcceptsRow(int sourceRow, - const QModelIndex &sourceParent) const override; -}; diff --git a/include/completion/TabsAdapter.hpp b/include/completion/TabsAdapter.hpp deleted file mode 100644 index fd47b8b..0000000 --- a/include/completion/TabsAdapter.hpp +++ /dev/null @@ -1,20 +0,0 @@ -#pragma once - -#include <QWidget> -#include <QtCore> - -#include "completion/Adapter.hpp" -#include "completion/TabsModel.hpp" - -class TabsAdapter : public Adapter { - Q_OBJECT - -public: - TabsAdapter(QList<Tab> tabs); - ~TabsAdapter(); - Completer *completer() override; - QString prompt() override; - -private: - Completer *completerInstance; -}; diff --git a/include/completion/TabsModel.hpp b/include/completion/TabsModel.hpp deleted file mode 100644 index 4b4518f..0000000 --- a/include/completion/TabsModel.hpp +++ /dev/null @@ -1,25 +0,0 @@ -#pragma once - -#include <QAbstractListModel> -#include <QWidget> -#include <QtCore> - -struct Tab { - QString url; - QString title; -}; - -class TabsModel : public QAbstractListModel { - Q_OBJECT - -public: - TabsModel(QList<Tab> tabs, QObject *parent = nullptr); - int rowCount(const QModelIndex &parent = QModelIndex()) const override; - int columnCount(const QModelIndex &parent = QModelIndex()) const override; - QHash<int, QByteArray> roleNames() const override; - QVariant data(const QModelIndex &index, - int role = Qt::DisplayRole) const override; - -private: - QList<Tab> items; -}; diff --git a/include/completion/UrlAdapter.hpp b/include/completion/UrlAdapter.hpp deleted file mode 100644 index e89167a..0000000 --- a/include/completion/UrlAdapter.hpp +++ /dev/null @@ -1,19 +0,0 @@ -#pragma once - -#include <QWidget> -#include <QtCore> - -#include "completion/Adapter.hpp" - -class UrlAdapter : public Adapter { - Q_OBJECT - -public: - UrlAdapter(); - ~UrlAdapter(); - Completer *completer() override; - QString prompt() override; - -private: - Completer *completerInstance; -}; diff --git a/include/completion/UrlModel.hpp b/include/completion/UrlModel.hpp deleted file mode 100644 index e65a86a..0000000 --- a/include/completion/UrlModel.hpp +++ /dev/null @@ -1,25 +0,0 @@ -#pragma once - -#include <QAbstractListModel> -#include <QWidget> -#include <QtCore> - -struct Url { - QString url; - QString description; -}; - -class UrlModel : public QAbstractListModel { - Q_OBJECT - -public: - UrlModel(QObject *parent = nullptr); - int rowCount(const QModelIndex &parent = QModelIndex()) const override; - int columnCount(const QModelIndex &parent = QModelIndex()) const override; - QHash<int, QByteArray> roleNames() const override; - QVariant data(const QModelIndex &index, - int role = Qt::DisplayRole) const override; - -private: - QList<Url> items; -}; |
