forked from qt-creator/qt-creator
Utils: Fix AspectContainer::setAutoApply
Removes duplicate m_autoApply from AspectContainerPrivate. Fixes issue when calling BaseAspect::setAutoApply() on an AspectContainer. Change-Id: I5f56d8d3c6d52d32c9365faf3d0e22facb757f03 Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
@@ -2479,7 +2479,6 @@ class Internal::AspectContainerPrivate
|
|||||||
public:
|
public:
|
||||||
QList<BaseAspect *> m_items; // Both owned and non-owned.
|
QList<BaseAspect *> m_items; // Both owned and non-owned.
|
||||||
QList<BaseAspect *> m_ownedItems; // Owned only.
|
QList<BaseAspect *> m_ownedItems; // Owned only.
|
||||||
bool m_autoApply = true;
|
|
||||||
QStringList m_settingsGroup;
|
QStringList m_settingsGroup;
|
||||||
std::function<Layouting::LayoutItem ()> m_layouter;
|
std::function<Layouting::LayoutItem ()> m_layouter;
|
||||||
};
|
};
|
||||||
@@ -2501,7 +2500,7 @@ AspectContainer::~AspectContainer()
|
|||||||
*/
|
*/
|
||||||
void AspectContainer::registerAspect(BaseAspect *aspect, bool takeOwnership)
|
void AspectContainer::registerAspect(BaseAspect *aspect, bool takeOwnership)
|
||||||
{
|
{
|
||||||
aspect->setAutoApply(d->m_autoApply);
|
aspect->setAutoApply(isAutoApply());
|
||||||
d->m_items.append(aspect);
|
d->m_items.append(aspect);
|
||||||
if (takeOwnership)
|
if (takeOwnership)
|
||||||
d->m_ownedItems.append(aspect);
|
d->m_ownedItems.append(aspect);
|
||||||
@@ -2631,7 +2630,8 @@ void AspectContainer::reset()
|
|||||||
|
|
||||||
void AspectContainer::setAutoApply(bool on)
|
void AspectContainer::setAutoApply(bool on)
|
||||||
{
|
{
|
||||||
d->m_autoApply = on;
|
BaseAspect::setAutoApply(on);
|
||||||
|
|
||||||
for (BaseAspect *aspect : std::as_const(d->m_items))
|
for (BaseAspect *aspect : std::as_const(d->m_items))
|
||||||
aspect->setAutoApply(on);
|
aspect->setAutoApply(on);
|
||||||
}
|
}
|
||||||
|
@@ -79,7 +79,7 @@ public:
|
|||||||
void setVisible(bool visible);
|
void setVisible(bool visible);
|
||||||
|
|
||||||
bool isAutoApply() const;
|
bool isAutoApply() const;
|
||||||
void setAutoApply(bool on);
|
virtual void setAutoApply(bool on);
|
||||||
|
|
||||||
bool isEnabled() const;
|
bool isEnabled() const;
|
||||||
void setEnabled(bool enabled);
|
void setEnabled(bool enabled);
|
||||||
@@ -860,7 +860,7 @@ public:
|
|||||||
void reset();
|
void reset();
|
||||||
bool equals(const AspectContainer &other) const;
|
bool equals(const AspectContainer &other) const;
|
||||||
void copyFrom(const AspectContainer &other);
|
void copyFrom(const AspectContainer &other);
|
||||||
void setAutoApply(bool on);
|
void setAutoApply(bool on) override;
|
||||||
bool isDirty() override;
|
bool isDirty() override;
|
||||||
|
|
||||||
template <typename T> T *aspect() const
|
template <typename T> T *aspect() const
|
||||||
|
Reference in New Issue
Block a user