forked from qt-creator/qt-creator
Utils: Introduce aspect ctors referring to an "wrapping" AspectContainer
This removes the need to manual 'registerAspect' calls in most cases. Whether the containers owns the registered aspects or just references them is still determined by AspectContainer::setOwnsSubAspects() Change-Id: Iadd17c919287f625bf5eb4964de4149d4da5a0f9 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
@@ -92,9 +92,11 @@ public:
|
|||||||
/*!
|
/*!
|
||||||
Constructs a BaseAspect.
|
Constructs a BaseAspect.
|
||||||
*/
|
*/
|
||||||
BaseAspect::BaseAspect()
|
BaseAspect::BaseAspect(AspectContainer *container)
|
||||||
: d(new Internal::BaseAspectPrivate)
|
: d(new Internal::BaseAspectPrivate)
|
||||||
{
|
{
|
||||||
|
if (container)
|
||||||
|
container->registerAspect(this);
|
||||||
addDataExtractor(this, &BaseAspect::value, &Data::value);
|
addDataExtractor(this, &BaseAspect::value, &Data::value);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -766,8 +768,8 @@ public:
|
|||||||
Constructs a StringAspect.
|
Constructs a StringAspect.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
StringAspect::StringAspect()
|
StringAspect::StringAspect(AspectContainer *container)
|
||||||
: d(new Internal::StringAspectPrivate)
|
: BaseAspect(container), d(new Internal::StringAspectPrivate)
|
||||||
{
|
{
|
||||||
setDefaultValue(QString());
|
setDefaultValue(QString());
|
||||||
setSpan(2, 1); // Default: Label + something
|
setSpan(2, 1); // Default: Label + something
|
||||||
@@ -1359,8 +1361,8 @@ FilePathAspect::FilePathAspect()
|
|||||||
The color aspect is displayed using a QtColorButton.
|
The color aspect is displayed using a QtColorButton.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
ColorAspect::ColorAspect()
|
ColorAspect::ColorAspect(AspectContainer *container)
|
||||||
: d(new Internal::ColorAspectPrivate)
|
: BaseAspect(container), d(new Internal::ColorAspectPrivate)
|
||||||
{
|
{
|
||||||
setDefaultValue(QColor::fromRgb(0, 0, 0));
|
setDefaultValue(QColor::fromRgb(0, 0, 0));
|
||||||
setSpan(1, 1);
|
setSpan(1, 1);
|
||||||
@@ -1426,8 +1428,8 @@ void ColorAspect::setVolatileValue(const QVariant &val)
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
|
|
||||||
BoolAspect::BoolAspect()
|
BoolAspect::BoolAspect(AspectContainer *container)
|
||||||
: d(new Internal::BoolAspectPrivate)
|
: BaseAspect(container), d(new Internal::BoolAspectPrivate)
|
||||||
{
|
{
|
||||||
setDefaultValue(false);
|
setDefaultValue(false);
|
||||||
setSpan(2, 1);
|
setSpan(2, 1);
|
||||||
@@ -1605,8 +1607,8 @@ CheckableDecider BoolAspect::checkableDecider()
|
|||||||
QRadioButtons in a QButtonGroup.
|
QRadioButtons in a QButtonGroup.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
SelectionAspect::SelectionAspect()
|
SelectionAspect::SelectionAspect(AspectContainer *container)
|
||||||
: d(new Internal::SelectionAspectPrivate)
|
: BaseAspect(container), d(new Internal::SelectionAspectPrivate)
|
||||||
{
|
{
|
||||||
setSpan(2, 1);
|
setSpan(2, 1);
|
||||||
}
|
}
|
||||||
@@ -1808,8 +1810,8 @@ QVariant SelectionAspect::itemValueForIndex(int index) const
|
|||||||
checkable items.
|
checkable items.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
MultiSelectionAspect::MultiSelectionAspect()
|
MultiSelectionAspect::MultiSelectionAspect(AspectContainer *container)
|
||||||
: d(new Internal::MultiSelectionAspectPrivate(this))
|
: BaseAspect(container), d(new Internal::MultiSelectionAspectPrivate(this))
|
||||||
{
|
{
|
||||||
setDefaultValue(QStringList());
|
setDefaultValue(QStringList());
|
||||||
setSpan(2, 1);
|
setSpan(2, 1);
|
||||||
@@ -1915,8 +1917,8 @@ void MultiSelectionAspect::setValue(const QStringList &value)
|
|||||||
|
|
||||||
// IntegerAspect
|
// IntegerAspect
|
||||||
|
|
||||||
IntegerAspect::IntegerAspect()
|
IntegerAspect::IntegerAspect(AspectContainer *container)
|
||||||
: d(new Internal::IntegerAspectPrivate)
|
: BaseAspect(container), d(new Internal::IntegerAspectPrivate)
|
||||||
{
|
{
|
||||||
setDefaultValue(qint64(0));
|
setDefaultValue(qint64(0));
|
||||||
setSpan(2, 1);
|
setSpan(2, 1);
|
||||||
@@ -2051,8 +2053,8 @@ void IntegerAspect::setSingleStep(qint64 step)
|
|||||||
the display of the spin box.
|
the display of the spin box.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
DoubleAspect::DoubleAspect()
|
DoubleAspect::DoubleAspect(AspectContainer *container)
|
||||||
: d(new Internal::DoubleAspectPrivate)
|
: BaseAspect(container), d(new Internal::DoubleAspectPrivate)
|
||||||
{
|
{
|
||||||
setDefaultValue(double(0));
|
setDefaultValue(double(0));
|
||||||
setSpan(2, 1);
|
setSpan(2, 1);
|
||||||
@@ -2206,8 +2208,8 @@ TriState TriState::fromVariant(const QVariant &variant)
|
|||||||
that is a list of strings.
|
that is a list of strings.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
StringListAspect::StringListAspect()
|
StringListAspect::StringListAspect(AspectContainer *container)
|
||||||
: d(new Internal::StringListAspectPrivate)
|
: BaseAspect(container), d(new Internal::StringListAspectPrivate)
|
||||||
{
|
{
|
||||||
setDefaultValue(QStringList());
|
setDefaultValue(QStringList());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ class QTCREATOR_UTILS_EXPORT BaseAspect : public QObject
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
BaseAspect();
|
BaseAspect(AspectContainer *container = nullptr);
|
||||||
~BaseAspect() override;
|
~BaseAspect() override;
|
||||||
|
|
||||||
Id id() const;
|
Id id() const;
|
||||||
@@ -213,7 +213,7 @@ class QTCREATOR_UTILS_EXPORT BoolAspect : public BaseAspect
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
BoolAspect();
|
BoolAspect(AspectContainer *container = nullptr);
|
||||||
~BoolAspect() override;
|
~BoolAspect() override;
|
||||||
|
|
||||||
struct Data : BaseAspect::Data
|
struct Data : BaseAspect::Data
|
||||||
@@ -257,7 +257,7 @@ class QTCREATOR_UTILS_EXPORT ColorAspect : public BaseAspect
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
ColorAspect();
|
ColorAspect(AspectContainer *container = nullptr);
|
||||||
~ColorAspect() override;
|
~ColorAspect() override;
|
||||||
|
|
||||||
struct Data : BaseAspect::Data
|
struct Data : BaseAspect::Data
|
||||||
@@ -282,7 +282,7 @@ class QTCREATOR_UTILS_EXPORT SelectionAspect : public BaseAspect
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
SelectionAspect();
|
SelectionAspect(AspectContainer *container = nullptr);
|
||||||
~SelectionAspect() override;
|
~SelectionAspect() override;
|
||||||
|
|
||||||
void addToLayout(Layouting::LayoutItem &parent) override;
|
void addToLayout(Layouting::LayoutItem &parent) override;
|
||||||
@@ -336,7 +336,7 @@ class QTCREATOR_UTILS_EXPORT MultiSelectionAspect : public BaseAspect
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
MultiSelectionAspect();
|
MultiSelectionAspect(AspectContainer *container = nullptr);
|
||||||
~MultiSelectionAspect() override;
|
~MultiSelectionAspect() override;
|
||||||
|
|
||||||
void addToLayout(Layouting::LayoutItem &parent) override;
|
void addToLayout(Layouting::LayoutItem &parent) override;
|
||||||
@@ -359,7 +359,7 @@ class QTCREATOR_UTILS_EXPORT StringAspect : public BaseAspect
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
StringAspect();
|
StringAspect(AspectContainer *container = nullptr);
|
||||||
~StringAspect() override;
|
~StringAspect() override;
|
||||||
|
|
||||||
struct Data : BaseAspect::Data
|
struct Data : BaseAspect::Data
|
||||||
@@ -456,7 +456,7 @@ class QTCREATOR_UTILS_EXPORT IntegerAspect : public BaseAspect
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
IntegerAspect();
|
IntegerAspect(AspectContainer *container = nullptr);
|
||||||
~IntegerAspect() override;
|
~IntegerAspect() override;
|
||||||
|
|
||||||
void addToLayout(Layouting::LayoutItem &parent) override;
|
void addToLayout(Layouting::LayoutItem &parent) override;
|
||||||
@@ -494,7 +494,7 @@ class QTCREATOR_UTILS_EXPORT DoubleAspect : public BaseAspect
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
DoubleAspect();
|
DoubleAspect(AspectContainer *container = nullptr);
|
||||||
~DoubleAspect() override;
|
~DoubleAspect() override;
|
||||||
|
|
||||||
void addToLayout(Layouting::LayoutItem &parent) override;
|
void addToLayout(Layouting::LayoutItem &parent) override;
|
||||||
@@ -563,7 +563,7 @@ class QTCREATOR_UTILS_EXPORT StringListAspect : public BaseAspect
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
StringListAspect();
|
StringListAspect(AspectContainer *container = nullptr);
|
||||||
~StringListAspect() override;
|
~StringListAspect() override;
|
||||||
|
|
||||||
void addToLayout(Layouting::LayoutItem &parent) override;
|
void addToLayout(Layouting::LayoutItem &parent) override;
|
||||||
|
|||||||
Reference in New Issue
Block a user