DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DA::DATreeItem类 参考

基本树形结构的条目,是SAAbstractData的基类,提供了名称和图标以及父子关系管理功能 SAItem可用SATree进行管理,形成树形结构 更多...

#include <DATreeItem.h>

class  PrivateData
 

Public 类型

enum  Role { RoleName = 0 , RoleIcon , RoleValue , RoleUserDefine = 1000 }
 预设好的一些属性角色 更多...
 
using id_type = quintptr
 

Public 成员函数

 DATreeItem (DATreeItem *parentItem=nullptr)
 
 DATreeItem (const QString &text, DATreeItem *parentItem=nullptr)
 
 DATreeItem (const QIcon &icon, const QString &text, DATreeItem *parentItem=nullptr)
 
 DATreeItem (const DATreeItem &c)
 拷贝构造函数
 
DATreeItemoperator= (const DATreeItem &item)
 等号操作符
 
void setName (const QString &name)
 设置条目名称
 
QString getName () const
 条目名称
 
void setIcon (const QIcon &icon)
 设置条目图标
 
QIcon getIcon () const
 获取条目图标
 
void setID (id_type id)
 
id_type getID () const
 条目id
 
void setProperty (int roleID, const QVariant &var)
 设置扩展数据
 
bool isHaveProperty (int roleID) const
 判断是否存在id对应的扩展数据
 
int getPropertyCount () const
 扩展数据的个数
 
const QVariant & property (int id) const
 根据id获取扩展数据
 
QVariant & property (int id)
 根据id获取扩展数据
 
void property (int index, int &id, QVariant &var) const
 根据索引顺序获取扩展数据,此函数仅仅为了方便遍历所有扩展数据用
 
QVariant getProperty (int id, const QVariant &defaultvar=QVariant()) const
 获取属性值
 
QMap< int, QVariant > getPropertys () const
 获取所有属性
 
int childItemCount () const
 子条目的数目
 
DATreeItemchildItem (int row) const
 索引子条目
 
QList< DATreeItem * > getChildItems () const
 获取所有子节点
 
QList< QString > getChildItemNames () const
 获取所有子节点的名字
 
void appendChild (DATreeItem *item)
 追加子条目
 
void insertChild (DATreeItem *item, int row)
 插入子条目
 
void clearChild ()
 清除所有字条目,包括内存
 
bool haveChild (DATreeItem *const item) const
 判断是否存在子节点
 
DATreeItemtakeChild (int row)
 提取条目,此时字条目的内容将不归此条目管理
 
bool takeChild (DATreeItem *const item)
 提取出子节点
 
int childIndex (DATreeItem *const item) const
 返回child的索引
 
void removeChild (DATreeItem *item)
 删除子对象
 
DATreeItemparent () const
 获取条目的父级条目,如果没有,返回nullptr
 
int index () const
 获取当前条目所在父级条目的行数,如果当前条目是子条目,这个函数返回这个字条目是对应父级条目的第几行
 
bool isOnTree () const
 判断是否在树节点上
 
DATreegetTree () const
 获取树的指针
 
bool isRootItem () const
 判断是否是顶层
 
void setTree (DATree *tree)
 设置树
 

友元

class DATree
 

详细描述

基本树形结构的条目,是SAAbstractData的基类,提供了名称和图标以及父子关系管理功能 SAItem可用SATree进行管理,形成树形结构

成员枚举类型说明

◆ Role

预设好的一些属性角色

枚举值
RoleName 

名字

RoleIcon 

图标

RoleValue 

RoleUserDefine 

用户自定义

构造及析构函数说明

◆ DATreeItem()

DA::DATreeItem::DATreeItem ( const DATreeItem c)

拷贝构造函数

参数
c

成员函数说明

◆ appendChild()

void DA::DATreeItem::appendChild ( DATreeItem item)

追加子条目

参数
itemitem的所有权交由父级item管理

◆ childIndex()

int DA::DATreeItem::childIndex ( DATreeItem *const  item) const

返回child的索引

参数
item
返回
返回这个child对应的索引
注解
此函数操作的时间复杂度为O(n),若没有,返回-1

◆ childItem()

DATreeItem * DA::DATreeItem::childItem ( int  row) const

索引子条目

参数
row0base的行数索引
返回

◆ childItemCount()

int DA::DATreeItem::childItemCount ( ) const

子条目的数目

返回

◆ getChildItemNames()

QList< QString > DA::DATreeItem::getChildItemNames ( ) const

获取所有子节点的名字

返回

◆ getChildItems()

QList< DATreeItem * > DA::DATreeItem::getChildItems ( ) const

获取所有子节点

返回

◆ getIcon()

QIcon DA::DATreeItem::getIcon ( ) const

获取条目图标

返回

◆ getID()

DATreeItem::id_type DA::DATreeItem::getID ( ) const

条目id

返回

◆ getName()

QString DA::DATreeItem::getName ( ) const

条目名称

返回

◆ getProperty()

QVariant DA::DATreeItem::getProperty ( int  id,
const QVariant &  defaultvar = QVariant() 
) const

获取属性值

参数
id
defaultvar
返回

◆ getPropertyCount()

int DA::DATreeItem::getPropertyCount ( ) const

扩展数据的个数

返回

◆ getPropertys()

QMap< int, QVariant > DA::DATreeItem::getPropertys ( ) const

获取所有属性

返回

◆ getTree()

DATree * DA::DATreeItem::getTree ( ) const

获取树的指针

返回

◆ haveChild()

bool DA::DATreeItem::haveChild ( DATreeItem *const  item) const

判断是否存在子节点

参数
item节点
返回
如果存在返回true

◆ index()

int DA::DATreeItem::index ( ) const

获取当前条目所在父级条目的行数,如果当前条目是子条目,这个函数返回这个字条目是对应父级条目的第几行

注解
参见
takeChild
insertChild 都会影响此函数的结果
返回

◆ insertChild()

void DA::DATreeItem::insertChild ( DATreeItem item,
int  row 
)

插入子条目

参数
item
row如果row大于等于childcount,row=childcount,如果row小于0,则row等于0

◆ isHaveProperty()

bool DA::DATreeItem::isHaveProperty ( int  roleID) const

判断是否存在id对应的扩展数据

参数
id标示id
返回

◆ isOnTree()

bool DA::DATreeItem::isOnTree ( ) const

判断是否在树节点上

返回
如果此item是在satree上,此函数返回true,否则为false

◆ isRootItem()

bool DA::DATreeItem::isRootItem ( ) const

判断是否是顶层

注解
如果是一个悬挂item返回false
返回

◆ operator=()

DATreeItem & DA::DATreeItem::operator= ( const DATreeItem item)

等号操作符

参数
item另外等待拷贝的item
返回
返回自身引用
注解
m_parent,m_fieldRow,id 不会发生拷贝

◆ parent()

DATreeItem * DA::DATreeItem::parent ( ) const

获取条目的父级条目,如果没有,返回nullptr

返回
如果没有,返回nullptr

◆ property() [1/3]

QVariant & DA::DATreeItem::property ( int  id)

根据id获取扩展数据

参数
id
返回
获取为引用,修改将直接影响条目保存的数据内容

◆ property() [2/3]

const QVariant & DA::DATreeItem::property ( int  id) const

根据id获取扩展数据

参数
id
返回

◆ property() [3/3]

void DA::DATreeItem::property ( int  index,
int &  id,
QVariant &  var 
) const

根据索引顺序获取扩展数据,此函数仅仅为了方便遍历所有扩展数据用

参数
index索引顺序
id返回hash的key
var返回hash的value

◆ removeChild()

void DA::DATreeItem::removeChild ( DATreeItem item)

删除子对象

参数
item子对象的指针,如果没有将忽略
注解
此操作会回收内存

◆ setIcon()

void DA::DATreeItem::setIcon ( const QIcon &  icon)

设置条目图标

参数
icon图标

◆ setName()

void DA::DATreeItem::setName ( const QString &  name)

设置条目名称

参数
name名称

◆ setProperty()

void DA::DATreeItem::setProperty ( int  roleID,
const QVariant &  var 
)

设置扩展数据

参数
roleID标示id
var数据内容

◆ setTree()

void DA::DATreeItem::setTree ( DATree tree)

设置树

参数
tree

◆ takeChild() [1/2]

bool DA::DATreeItem::takeChild ( DATreeItem *const  item)

提取出子节点

参数
childItem

◆ takeChild() [2/2]

DATreeItem * DA::DATreeItem::takeChild ( int  row)

提取条目,此时字条目的内容将不归此条目管理

参数
row
返回

该类的文档由以下文件生成: