src/settingseditor/keyboardshortcutseditor.h

Sun, 09 Apr 2023 15:59:08 +0300

author
Teemu Piippo <teemu.s.piippo@gmail.com>
date
Sun, 09 Apr 2023 15:59:08 +0300
changeset 362
e1d646a4cbd8
parent 259
c27612f0eac0
permissions
-rw-r--r--

Extracted the state of the program into a MainState structure, and extracted local functions of main() into static functions.
I was planning to make the core logic and state of the program into a Main class, which would be a QObject that would
have lots of signals and slots, but it looks like this works even without it

#pragma once
#include <QWidget>
#include <QAbstractTableModel>

class KeyboardShortcutsEditor : public QAbstractTableModel
{
	Q_OBJECT
public:
	enum Column
	{
		TitleColumn,
		ShortcutColumn,
	};
	explicit KeyboardShortcutsEditor(QObject* subject, QObject* parent = nullptr);
	int rowCount(const QModelIndex&) const override;
	int columnCount(const QModelIndex&) const override;
	QVariant data(const QModelIndex& index, int role) const override;
	QVariant headerData(int section, Qt::Orientation orientation, int role) const override;
private:
	const std::vector<QAction*> actions;
};

mercurial