DAWorkbench 0.0.1
DAWorkbench API
载入中...
搜索中...
未找到
DAProperties.h
1#ifndef DAPROPERTIES_H
2#define DAPROPERTIES_H
3#include <QHash>
4#include <QVariant>
5#include "DAUtilsAPI.h"
6
7namespace DA
8{
9
15class DAUTILS_API DAProperties : public QVariantHash
16{
17public:
18 DAProperties() = default;
19
20 //获取属性
21 QVariant getProperty(const QString& key) const;
22 QVariant getProperty(const QString& key, const QVariant& defaultProperty) const;
23
24 //设置属性
25 void setProperty(const QString& key, const QVariant& value);
26};
27
32class DAUTILS_API DAPropertiesGroup : public QHash< QString, DAProperties >
33{
34public:
35 DAPropertiesGroup() = default;
36 //获取属性
37 QVariant getProperty(const QString& group, const QString& key) const;
38 QVariant getProperty(const QString& group, const QString& key, const QVariant& defaultProperty) const;
39
40 //获取一组属性,必须先确保有这个分组
41 const DAProperties& constProperties(const QString& group) const;
42
43 //获取一组属性的引用,如果没有,会插入一个默认属性,但对于常量操作不会插入,而是触发断言
44 DAProperties& properties(const QString& group);
45 const DAProperties& properties(const QString& group) const;
46
47 //获取一组属性
48 DAProperties getProperties(const QString& group);
49
50 //设置一组属性
51 void setProperties(const QString& group, const DAProperties& propertys);
52
53 //设置属性
54 void setProperty(const QString& group, const QString& key, const QVariant& value);
55
56 //判断是否存在分组
57 bool hasGroup(const QString& group);
58};
59
60}
61Q_DECLARE_METATYPE(DA::DAProperties)
62Q_DECLARE_METATYPE(DA::DAPropertiesGroup)
63#endif // SAPROPERTIES_H
属性组
Definition DAProperties.h:33
参考Java Properties 类封装的属性类,负责SA的属性传递
Definition DAProperties.h:16
序列化类都是带异常的,使用中需要处理异常
Definition AppMainWindow.cpp:44