1 #ifndef ACE_METADATAMODEL_H 2 #define ACE_METADATAMODEL_H 4 #include <QAbstractItemModel> 25 virtual QStringList
mimeTypes()
const override final;
27 virtual QVariant
headerData(
int section, Qt::Orientation orientation,
int role)
const override final;
28 virtual QModelIndex
index(
int row,
int column,
const QModelIndex&
parent)
const override final;
29 virtual QModelIndex
parent(
const QModelIndex& child)
const override final;
30 virtual Qt::ItemFlags
flags(
const QModelIndex&
index)
const override final;
31 virtual int rowCount(
const QModelIndex&
parent)
const override final;
33 virtual QMimeData*
mimeData(
const QModelIndexList& indexes)
const override final;
34 virtual QVariant
data(
const QModelIndex&
index,
int role)
const override final;
35 virtual bool setData(
const QModelIndex&
index,
const QVariant& value,
int role)
override final;
36 virtual bool dropMimeData(
const QMimeData*
data, Qt::DropAction action,
int row,
int column,
const QModelIndex&
parent)
override final;
55 bool remove(
const QModelIndex&
index);
62 bool setKey(
const QModelIndex&
index,
const QString& newKey);
63 std::unique_ptr<MetadataModel::Node> take(Node* node);
64 bool insert(
const QModelIndex&
parent,
int row, std::unique_ptr<Node>&& node);
65 EMetadata buildMeta(
const Node* node)
const;
66 std::unique_ptr<MetadataModel::Node> buildNode(
const EMetadata&
meta);
71 static const char* _mimeType;
80 bool _readOnly {
false};