持久设置读取器类

Utils::PersistentSettingsReader

持久设置读取器类从 XML 文件中读取任意嵌套数据结构的 QVariantMap更多信息...

头文件 #include <PersistentSettingsReader>

详细描述

处理所有可字符串序列化的简单类型以及 QVariantListQVariantMap。示例

<qtcreator>
    <data>
        <variable>ProjectExplorer.Project.ActiveTarget</variable>
        <value type="int">0</value>
    </data>
    <data>
        <variable>ProjectExplorer.Project.EditorSettings</variable>
        <valuemap type="QVariantMap">
            <value type="bool" key="EditorConfiguration.AutoIndent">true</value>
        </valuemap>
    </data>

当解析结构时,每个 <data> 元素使用一个名为 ParseValueStackEntry 的解析栈。ParseValueStackEntry 是简单值、映射和列表的一个变体/联合。

  • 简单值
  • 映射
  • 列表

您可以通过在 Qt 元数据类型系统中注册来为自定义类型注册字符串序列化函数。示例

QMetaType::registerConverter(&MyCustomType::toString);
QMetaType::registerConverter<QString, MyCustomType>(&myCustomTypeFromString);

当进入值元素( <value> / <valuelist> , <valuemap> ),相应地推入条目。当离开元素时,从栈中取出条目的 QVariant 值,并将其添加到下面的栈条目中(添加到列表或插入到映射中)。栈的第一个元素是 <data> 元素的值。

另请参阅Utils::PersistentSettingsWriter.

©2024 Qt 公司有限公司。本文档中的贡献属于其各自所有者的版权。本提供的文档根据自由软件基金会在发布的条款下使用 GNU 自由文档许可 version 1.3。Qt 和各自的标志是芬兰和/或全球其他国家的 Qt 公司的商标。所有其他商标均为其各自所有者的财产。