src/messagelog.h

Sun, 09 Apr 2023 16:23:05 +0300

author
Teemu Piippo <teemu.s.piippo@gmail.com>
date
Sun, 09 Apr 2023 16:23:05 +0300
changeset 365
9d5cb5635c18
parent 264
76a025db4948
permissions
-rw-r--r--

Add undo, redo, cut, copy and paste actions to MainWindow which pass onto the editor widget

#include <QAbstractTableModel>
#include "src/basics.h"

class MessageLog final : public QAbstractTableModel
{
	Q_OBJECT
	std::vector<Message> messages;
public:
	enum Column {
		TimeColumn,
		MessageColumn,
	};
	static constexpr int NUM_COLUMNS = int(MessageColumn) + 1;
	explicit MessageLog(QObject *parent = nullptr);
	Q_SLOT void addMessage(const Message& message);

	// QAbstractItemModel interface
public:
	QVariant headerData(int section, Qt::Orientation orientation, int role) const override;
	int rowCount(const QModelIndex& parent) const override;
	int columnCount(const QModelIndex& parent) const override;
	QVariant data(const QModelIndex& index, int role) const override;
};

mercurial