BaseAspect 类
class Utils::BaseAspectThe BaseAspect
class provides a common base for classes implementing aspects. More...
头文件 | #include <BaseAspect> |
继承 | QObject |
继承自 | Utils::AspectContainer, Utils::TextDisplay, and Utils::TypedAspect |
公共类型
enum | Announcement { DoEmit, BeQuiet } |
公共函数
BaseAspect(Utils::AspectContainer *container = nullptr) | |
virtual | ~BaseAspect() override |
virtual void | addToLayout(Layouting::Layout &parent) |
virtual void | apply() |
virtual void | cancel() |
QString | displayName() const |
virtual void | fromMap(const Utils::Store &map) |
QString | labelText() const |
virtual void | setAutoApply(bool on) |
void | setEnabler(Utils::BoolAspect *checker) |
void | setLabelPixmap(const QPixmap &labelPixmap) |
void | setLabelText(const QString &labelText) |
void | setSettingsKey(const Utils::Key &key) |
void | setSettingsKey(const Utils::Key &group, const Utils::Key &key) |
void | setToolTip(const QString &tooltip) |
virtual void | setVariantValue(const QVariant &value, Utils::BaseAspect::Announcement howToAnnounce = DoEmit) |
void | setVisible(bool visible) |
Utils::Key | settingsKey() const |
virtual void | toMap(Utils::Store &map) const |
void | writeToSettingsImmediatly() const |
详细描述
An aspect is a hunk of data like a property or collection of related properties of some object, together with a description of its behavior for common operations like visualizing or persisting.
简单方面,例如,由用户界面中的 QCheckBox 表示的布尔属性,或由 PathChooser 表示的字符串属性,用于在文件系统中选择目录。
尽管方面实现通常可以可视化其数据或使用ID,但这不是强制性的。
派生类可以实施 addToLayout() 来创建UI。
实现 guiToBuffer()
和 bufferToGui()
以将UI与内部数据同步。
成员类型文档
enum BaseAspect::Announcement
值变化时是否发出信号。
常数 | 值 | 描述 |
---|---|---|
Utils::BaseAspect::DoEmit | 0 | 发出信号。 |
Utils::BaseAspect::BeQuiet | 1 | 不发出信号。 |
成员函数文档
BaseAspect::BaseAspect(Utils::AspectContainer *container = nullptr)
构建一个基本方面。
如果 container 非空,则方面被容器所知晓。
[覆盖虚函数 noexcept]
BaseAspect::~BaseAspect()
析构一个 BaseAspect。
[虚函数]
void BaseAspect::addToLayout(Layouting::Layout &parent)
使用布局构建器将此方面的视觉表示添加到指定 parent 的布局中。
[虚函数]
void BaseAspect::apply()
从用户的仪表板更改更新此方面的值。
如果值已更改,发出 changed()。
[虚函数]
void BaseAspect::cancel()
取消用户的仪表板更改并从方面的值恢复仪表板内容。
这仅在 isAutoApply
为 false 时才有作用。
QString BaseAspect::displayName() const
当此操作出现在菜单或其他通常使用书籍风格首字母大写的位置时,返回应使用的字符串。
如果未设置显示名称,则将使用标签文本作为后备。
[虚函数]
void BaseAspect::fromMap(const Utils::Store &map)
从 Store map 中获取此 BaseAspect 的内部值。
QString BaseAspect::labelText() const
返回此方面视觉表示中单独标签的当前文本。
另请参阅setLabelText().
[虚函数]
void BaseAspect::setAutoApply(bool on)
设置自动应用模式。当自动应用模式 on 开启时,用户与此方面部件的交互将不会修改方面的 value
直到程序调用 apply()
。
另请参阅setSettingsKey().
void BaseAspect::setEnabler(Utils::BoolAspect *checker)
使此方面的启用状态取决于 checker 的已检查状态。
void BaseAspect::setLabelPixmap(const QPixmap &labelPixmap)
将 labelPixmap 设置为此方面的视觉表示中单独标签的位图。
void BaseAspect::setLabelText(const QString &labelText)
将 labelText 设置为此方面的视觉表示中单独标签的文本。
另请参阅 labelText。
void BaseAspect::setSettingsKey(const Utils::Key &key)
设置在访问设置时使用的 key。
另请参阅 settingsKey。
void BaseAspect::setSettingsKey(const Utils::Key &group, const Utils::Key &key)
设置在访问设置时使用的 key 和 group。
另请参阅 settingsKey。
void BaseAspect::setToolTip(const QString &tooltip)
将 tooltip 设置为此方面视觉表示的工具提示。
[virtual]
void BaseAspect::setVariantValue(const QVariant &value, Utils::BaseAspect::Announcement howToAnnounce = DoEmit)
设置 value。
如果将 howToAnnounce 设置为 DoEmit
,则发出 valueChanged
信号。
建议使用派生类的类型化 setValue()
。
void BaseAspect::setVisible(bool visible)
根据 visible 的值显示或隐藏此方面的视觉表示。默认情况下是可见的。
Utils::Key BaseAspect::settingsKey() const
返回在访问设置时使用的键。
另请参阅setSettingsKey().
[virtual]
void BaseAspect::toMap(Utils::Store &map) const
将此 BaseAspect 的内部值存储到存储 map 中。
void BaseAspect::writeToSettingsImmediatly() const
立即将此方面的值写入其指定的设置,考虑可能的容器设置组规范。
注意: 这是一项昂贵的操作,因此只有在有充分理由的情况下才应使用。
©2024 Qt公司有限公司。本内部包含的文档贡献归各自所有者版权所有。本内部提供的文档是根据自由软件基金会发布的 GNU自由文档许可证版本1.3 的条款许可的。Qt及其相关标志是芬兰Qt公司及其它/他国/地区的商标。所有其他商标都是其各自所有者的财产。