20 #include "sizepolicyedit.h" 21 #include "KPropertyCoreUtils_p.h" 22 #include "KPropertyListData.h" 24 #include <QSizePolicy> 34 const int index =
keys().indexOf(static_cast<int>(p));
36 return names()[0].toString();
37 return names()[index].toString();
68 Q_GLOBAL_STATIC(SizePolicyListData, s_sizePolicyListData)
72 KPropertySizePolicyDelegate::KPropertySizePolicyDelegate()
81 .
arg(KPropertyUtils::keyForEnumValue(
"SizePolicy", sp.horizontalPolicy()))
82 .
arg(KPropertyUtils::keyForEnumValue(
"SizePolicy", sp.verticalPolicy()))
83 .
arg(sp.horizontalStretch())
84 .arg(sp.verticalStretch());
87 .
arg(s_sizePolicyListData->nameForPolicy(sp.horizontalPolicy()))
88 .
arg(s_sizePolicyListData->nameForPolicy(sp.verticalPolicy()))
96 return *s_sizePolicyListData;
101 KSizePolicyComposedProperty::KSizePolicyComposedProperty(
KProperty *property)
104 (void)
new KProperty(
"hor_policy",
new SizePolicyListData(),
107 (void)
new KProperty(
"vert_policy",
new SizePolicyListData(),
112 KProperty::UInt, property);
115 KProperty::UInt, property);
118 void KSizePolicyComposedProperty::setValue(
KProperty *property,
122 property->child(
"hor_policy")->setValue(sp.horizontalPolicy(), valueOptions);
123 property->child(
"vert_policy")->setValue(sp.verticalPolicy(), valueOptions);
124 property->child(
"hor_stretch")->setValue(sp.horizontalStretch(), valueOptions);
125 property->child(
"vert_stretch")->setValue(sp.verticalStretch(), valueOptions);
128 void KSizePolicyComposedProperty::childValueChanged(
KProperty *child,
132 if (child->
name() ==
"hor_policy")
133 sp.setHorizontalPolicy(static_cast<QSizePolicy::Policy>(value.
toInt()));
134 else if (child->
name() ==
"vert_policy")
135 sp.setVerticalPolicy(static_cast<QSizePolicy::Policy>(value.
toInt()));
136 else if (child->
name() ==
"hor_stretch")
137 sp.setHorizontalStretch(value.
toInt());
138 else if (child->
name() ==
"vert_stretch")
139 sp.setVerticalStretch(value.
toInt());
144 bool KSizePolicyComposedProperty::valuesEqual(
const QVariant &first,
const QVariant &second)
QString toString(qlonglong i) const const
KProperty * parent() const
QVariantList names() const
The list of user-visible translated name elements.
QString tr(const char *sourceText, const char *disambiguation, int n)
An interface for for composed property handlers.
int toInt(bool *ok) const const
QLocale::Language language() const const
The base class representing a single property.
QString arg(qlonglong a, int fieldWidth, int base, QChar fillChar) const const
QString fromLatin1(const char *str, int size)
QVariantList keys() const
A list containing all possible keys for a property.
bool setValue(const QVariant &value, ValueOptions options=ValueOptions())
Sets value of the property.
A data container for properties of list type.