1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
// Copyright (C) 2023 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
#ifndef LINENUMBERMODEL_H
#define LINENUMBERMODEL_H
#include <QAbstractItemModel>
#include <QQmlEngine>
class LineNumberModel : public QAbstractListModel
{
Q_OBJECT
QML_ELEMENT
Q_PROPERTY(int lineCount READ lineCount WRITE setLineCount NOTIFY lineCountChanged)
public:
explicit LineNumberModel(QObject *parent = nullptr);
int lineCount() const;
void setLineCount(int lineCount);
int rowCount(const QModelIndex &parent = QModelIndex()) const override;
QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
signals:
void lineCountChanged();
private:
int m_lineCount = 0;
};
#endif // LINENUMBERMODEL_H
|