9 #include "nesteddefs.h" 10 #include "qabstractitemmodel.h" 11 #include "qitemselectionmodel.h" 29 void selectionChanged(
const QItemSelection &selected,
const QItemSelection &deselected);
64 QModelIndex index(
int row,
int column,
const QModelIndex &parent = QModelIndex())
const;
66 QModelIndex parent(
const QModelIndex &index)
const;
68 int rowCount(
const QModelIndex &parent = QModelIndex())
const;
70 int columnCount(
const QModelIndex &parent = QModelIndex())
const;
72 QVariant data(
const QModelIndex &index,
int role = Qt::DisplayRole)
const;
76 bool setData(
const QModelIndex & index,
const QVariant & value,
int role);
78 Qt::ItemFlags flags(
const QModelIndex &index)
const;
80 bool canDropMimeData(
const QMimeData *data, Qt::DropAction action,
int row,
int column,
const QModelIndex &parent)
const;
82 QMimeData *mimeData(
const QModelIndexList &indexes)
const;
84 bool dropMimeData(
const QMimeData *data, Qt::DropAction action,
int row,
int column,
const QModelIndex &parent);
86 QStringList mimeTypes()
const;
88 Qt::DropActions supportedDropActions()
const;
90 QVariant headerData(
int section, Qt::Orientation orientation,
int role = Qt::DisplayRole)
const;
HierarchyObject * index2obj(const QModelIndex &index) const
根据QModelIndex取出对应HierarchyObject
Definition: HierarchyModel.cpp:81
std::vector< HierarchyObject * > objects
储存所有被创建的节点
Definition: HierarchyModel.h:25
QModelIndex lastRightClick
右键菜单触发时记录下右键点击的节点
Definition: HierarchyModel.h:38
HierarchyObject * lastSelected
记录用户选中的最后一个物体
Definition: HierarchyModel.h:40
HierarchyObject * getObject(int i)
按某种顺序访问节点
Definition: HierarchyModel.h:44
QModelIndex obj2index(HierarchyObject *obj) const
根据obj创建index
Definition: HierarchyModel.cpp:93
对场景树的ui显示进行统一的管理
Definition: HierarchyModel.h:19
void removeObject(HierarchyObject *obj)
移除一个节点
Definition: HierarchyModel.cpp:73
表示场景树中的节点
Definition: HierarchyObject.h:27
int objectCount()
节点总数
Definition: HierarchyModel.h:42
void moveObject(HierarchyObject *obj, HierarchyObject *toParent, int toIndex)
移动树结构中的节点
Definition: HierarchyModel.cpp:34
bool retrieveDroppedObjects(const QMimeData *data, std::vector< HierarchyObject * > &out_objects) const
取出mime里面的拖放来源
Definition: HierarchyModel.cpp:262
HierarchyObject * createObject(const QString &name)
创建HierarchyObject并进行一些初始化操作
Definition: HierarchyModel.cpp:17
void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected)
接收ui中选择变更事件
Definition: HierarchyModel.cpp:101
Widget * widget
对应的widget
Definition: HierarchyModel.h:36
HierarchyObject * root
树根节点
Definition: HierarchyModel.h:34