1084 d_ptr->q_ptr =
this;
1086 d_ptr->m_creatingProperty =
false;
1087 d_ptr->m_creatingSubProperties =
false;
1088 d_ptr->m_destroyingSubProperties =
false;
1089 d_ptr->m_propertyType = 0;
1093 d_ptr->m_typeToPropertyManager[QVariant::Int] = intPropertyManager;
1094 d_ptr->m_typeToAttributeToAttributeType[QVariant::Int][d_ptr->m_minimumAttribute] =
1096 d_ptr->m_typeToAttributeToAttributeType[QVariant::Int][d_ptr->m_maximumAttribute] =
1098 d_ptr->m_typeToAttributeToAttributeType[QVariant::Int][d_ptr->m_singleStepAttribute] =
1100 d_ptr->m_typeToAttributeToAttributeType[QVariant::Int][d_ptr->m_readOnlyAttribute] =
1102 d_ptr->m_typeToValueType[QVariant::Int] = QVariant::Int;
1103 connect(intPropertyManager,
1107 connect(intPropertyManager,
1110 SLOT(slotRangeChanged(
QtProperty*,
int,
int)));
1111 connect(intPropertyManager,
1114 SLOT(slotSingleStepChanged(
QtProperty*,
int)));
1117 d_ptr->m_typeToPropertyManager[QVariant::Double] = doublePropertyManager;
1118 d_ptr->m_typeToAttributeToAttributeType[QVariant::Double][d_ptr->m_minimumAttribute] =
1120 d_ptr->m_typeToAttributeToAttributeType[QVariant::Double][d_ptr->m_maximumAttribute] =
1122 d_ptr->m_typeToAttributeToAttributeType[QVariant::Double][d_ptr->m_singleStepAttribute] =
1124 d_ptr->m_typeToAttributeToAttributeType[QVariant::Double][d_ptr->m_decimalsAttribute] =
1126 d_ptr->m_typeToAttributeToAttributeType[QVariant::Double][d_ptr->m_readOnlyAttribute] =
1128 d_ptr->m_typeToValueType[QVariant::Double] = QVariant::Double;
1129 connect(doublePropertyManager,
1132 SLOT(slotValueChanged(
QtProperty*,
double)));
1133 connect(doublePropertyManager,
1134 SIGNAL(rangeChanged(
QtProperty*,
double,
double)),
1136 SLOT(slotRangeChanged(
QtProperty*,
double,
double)));
1137 connect(doublePropertyManager,
1138 SIGNAL(singleStepChanged(
QtProperty*,
double)),
1140 SLOT(slotSingleStepChanged(
QtProperty*,
double)));
1141 connect(doublePropertyManager,
1144 SLOT(slotDecimalsChanged(
QtProperty*,
int)));
1147 d_ptr->m_typeToPropertyManager[QVariant::Bool] = boolPropertyManager;
1148 d_ptr->m_typeToAttributeToAttributeType[QVariant::Bool][d_ptr->m_textVisibleAttribute] =
1150 d_ptr->m_typeToValueType[QVariant::Bool] = QVariant::Bool;
1151 connect(boolPropertyManager,
1155 connect(boolPropertyManager,
1156 SIGNAL(textVisibleChanged(
QtProperty*,
bool)),
1158 SLOT(slotTextVisibleChanged(
QtProperty*,
bool)));
1161 d_ptr->m_typeToPropertyManager[QVariant::String] = stringPropertyManager;
1162 d_ptr->m_typeToValueType[QVariant::String] = QVariant::String;
1163 d_ptr->m_typeToAttributeToAttributeType[QVariant::String][d_ptr->m_regExpAttribute] =
1165 d_ptr->m_typeToAttributeToAttributeType[QVariant::String][d_ptr->m_echoModeAttribute] =
1167 d_ptr->m_typeToAttributeToAttributeType[QVariant::String][d_ptr->m_readOnlyAttribute] =
1170 connect(stringPropertyManager,
1173 SLOT(slotValueChanged(
QtProperty*,
const QString&)));
1174 connect(stringPropertyManager,
1175 SIGNAL(regExpChanged(
QtProperty*,
const QRegExp&)),
1177 SLOT(slotRegExpChanged(
QtProperty*,
const QRegExp&)));
1178 connect(stringPropertyManager,
1181 SLOT(slotEchoModeChanged(
QtProperty*,
int)));
1182 connect(stringPropertyManager,
1185 SLOT(slotReadOnlyChanged(
QtProperty*,
bool)));
1189 d_ptr->m_typeToPropertyManager[QVariant::Date] = datePropertyManager;
1190 d_ptr->m_typeToValueType[QVariant::Date] = QVariant::Date;
1191 d_ptr->m_typeToAttributeToAttributeType[QVariant::Date][d_ptr->m_minimumAttribute] =
1193 d_ptr->m_typeToAttributeToAttributeType[QVariant::Date][d_ptr->m_maximumAttribute] =
1195 connect(datePropertyManager,
1198 SLOT(slotValueChanged(
QtProperty*,
const QDate&)));
1199 connect(datePropertyManager,
1200 SIGNAL(rangeChanged(
QtProperty*,
const QDate&,
const QDate&)),
1202 SLOT(slotRangeChanged(
QtProperty*,
const QDate&,
const QDate&)));
1205 d_ptr->m_typeToPropertyManager[QVariant::Time] = timePropertyManager;
1206 d_ptr->m_typeToValueType[QVariant::Time] = QVariant::Time;
1207 connect(timePropertyManager,
1210 SLOT(slotValueChanged(
QtProperty*,
const QTime&)));
1213 d_ptr->m_typeToPropertyManager[QVariant::DateTime] = dateTimePropertyManager;
1214 d_ptr->m_typeToValueType[QVariant::DateTime] = QVariant::DateTime;
1215 connect(dateTimePropertyManager,
1218 SLOT(slotValueChanged(
QtProperty*,
const QDateTime&)));
1222 d_ptr->m_typeToPropertyManager[QVariant::KeySequence] = keySequencePropertyManager;
1223 d_ptr->m_typeToValueType[QVariant::KeySequence] = QVariant::KeySequence;
1224 connect(keySequencePropertyManager,
1227 SLOT(slotValueChanged(
QtProperty*,
const QKeySequence&)));
1230 d_ptr->m_typeToPropertyManager[QVariant::Char] = charPropertyManager;
1231 d_ptr->m_typeToValueType[QVariant::Char] = QVariant::Char;
1232 connect(charPropertyManager,
1235 SLOT(slotValueChanged(
QtProperty*,
const QChar&)));
1238 d_ptr->m_typeToPropertyManager[QVariant::Locale] = localePropertyManager;
1239 d_ptr->m_typeToValueType[QVariant::Locale] = QVariant::Locale;
1240 connect(localePropertyManager,
1243 SLOT(slotValueChanged(
QtProperty*,
const QLocale&)));
1248 connect(localePropertyManager,
1252 connect(localePropertyManager,
1258 d_ptr->m_typeToPropertyManager[QVariant::Point] = pointPropertyManager;
1259 d_ptr->m_typeToValueType[QVariant::Point] = QVariant::Point;
1260 connect(pointPropertyManager,
1263 SLOT(slotValueChanged(
QtProperty*,
const QPoint&)));
1268 connect(pointPropertyManager,
1272 connect(pointPropertyManager,
1278 d_ptr->m_typeToPropertyManager[QVariant::PointF] = pointFPropertyManager;
1279 d_ptr->m_typeToValueType[QVariant::PointF] = QVariant::PointF;
1280 d_ptr->m_typeToAttributeToAttributeType[QVariant::PointF][d_ptr->m_decimalsAttribute] =
1282 connect(pointFPropertyManager,
1285 SLOT(slotValueChanged(
QtProperty*,
const QPointF&)));
1286 connect(pointFPropertyManager,
1289 SLOT(slotDecimalsChanged(
QtProperty*,
int)));
1293 SLOT(slotValueChanged(
QtProperty*,
double)));
1294 connect(pointFPropertyManager,
1298 connect(pointFPropertyManager,
1304 d_ptr->m_typeToPropertyManager[QVariant::Size] = sizePropertyManager;
1305 d_ptr->m_typeToValueType[QVariant::Size] = QVariant::Size;
1306 d_ptr->m_typeToAttributeToAttributeType[QVariant::Size][d_ptr->m_minimumAttribute] =
1308 d_ptr->m_typeToAttributeToAttributeType[QVariant::Size][d_ptr->m_maximumAttribute] =
1310 connect(sizePropertyManager,
1313 SLOT(slotValueChanged(
QtProperty*,
const QSize&)));
1314 connect(sizePropertyManager,
1315 SIGNAL(rangeChanged(
QtProperty*,
const QSize&,
const QSize&)),
1317 SLOT(slotRangeChanged(
QtProperty*,
const QSize&,
const QSize&)));
1325 SLOT(slotRangeChanged(
QtProperty*,
int,
int)));
1326 connect(sizePropertyManager,
1330 connect(sizePropertyManager,
1336 d_ptr->m_typeToPropertyManager[QVariant::SizeF] = sizeFPropertyManager;
1337 d_ptr->m_typeToValueType[QVariant::SizeF] = QVariant::SizeF;
1338 d_ptr->m_typeToAttributeToAttributeType[QVariant::SizeF][d_ptr->m_minimumAttribute] =
1340 d_ptr->m_typeToAttributeToAttributeType[QVariant::SizeF][d_ptr->m_maximumAttribute] =
1342 d_ptr->m_typeToAttributeToAttributeType[QVariant::SizeF][d_ptr->m_decimalsAttribute] =
1344 connect(sizeFPropertyManager,
1347 SLOT(slotValueChanged(
QtProperty*,
const QSizeF&)));
1348 connect(sizeFPropertyManager,
1349 SIGNAL(rangeChanged(
QtProperty*,
const QSizeF&,
const QSizeF&)),
1351 SLOT(slotRangeChanged(
QtProperty*,
const QSizeF&,
const QSizeF&)));
1352 connect(sizeFPropertyManager,
1355 SLOT(slotDecimalsChanged(
QtProperty*,
int)));
1359 SLOT(slotValueChanged(
QtProperty*,
double)));
1361 SIGNAL(rangeChanged(
QtProperty*,
double,
double)),
1363 SLOT(slotRangeChanged(
QtProperty*,
double,
double)));
1364 connect(sizeFPropertyManager,
1368 connect(sizeFPropertyManager,
1374 d_ptr->m_typeToPropertyManager[QVariant::Rect] = rectPropertyManager;
1375 d_ptr->m_typeToValueType[QVariant::Rect] = QVariant::Rect;
1376 d_ptr->m_typeToAttributeToAttributeType[QVariant::Rect][d_ptr->m_constraintAttribute] =
1378 connect(rectPropertyManager,
1381 SLOT(slotValueChanged(
QtProperty*,
const QRect&)));
1382 connect(rectPropertyManager,
1383 SIGNAL(constraintChanged(
QtProperty*,
const QRect&)),
1385 SLOT(slotConstraintChanged(
QtProperty*,
const QRect&)));
1393 SLOT(slotRangeChanged(
QtProperty*,
int,
int)));
1394 connect(rectPropertyManager,
1398 connect(rectPropertyManager,
1404 d_ptr->m_typeToPropertyManager[QVariant::RectF] = rectFPropertyManager;
1405 d_ptr->m_typeToValueType[QVariant::RectF] = QVariant::RectF;
1406 d_ptr->m_typeToAttributeToAttributeType[QVariant::RectF][d_ptr->m_constraintAttribute] =
1408 d_ptr->m_typeToAttributeToAttributeType[QVariant::RectF][d_ptr->m_decimalsAttribute] =
1410 connect(rectFPropertyManager,
1413 SLOT(slotValueChanged(
QtProperty*,
const QRectF&)));
1414 connect(rectFPropertyManager,
1415 SIGNAL(constraintChanged(
QtProperty*,
const QRectF&)),
1417 SLOT(slotConstraintChanged(
QtProperty*,
const QRectF&)));
1418 connect(rectFPropertyManager,
1421 SLOT(slotDecimalsChanged(
QtProperty*,
int)));
1425 SLOT(slotValueChanged(
QtProperty*,
double)));
1427 SIGNAL(rangeChanged(
QtProperty*,
double,
double)),
1429 SLOT(slotRangeChanged(
QtProperty*,
double,
double)));
1430 connect(rectFPropertyManager,
1434 connect(rectFPropertyManager,
1440 d_ptr->m_typeToPropertyManager[QVariant::Color] = colorPropertyManager;
1441 d_ptr->m_typeToValueType[QVariant::Color] = QVariant::Color;
1442 connect(colorPropertyManager,
1445 SLOT(slotValueChanged(
QtProperty*,
const QColor&)));
1450 connect(colorPropertyManager,
1454 connect(colorPropertyManager,
1461 d_ptr->m_typeToPropertyManager[enumId] = enumPropertyManager;
1462 d_ptr->m_typeToValueType[enumId] = QVariant::Int;
1463 d_ptr->m_typeToAttributeToAttributeType[enumId][d_ptr->m_enumNamesAttribute] =
1464 QVariant::StringList;
1465 d_ptr->m_typeToAttributeToAttributeType[enumId][d_ptr->m_enumIconsAttribute] =
iconMapTypeId();
1466 connect(enumPropertyManager,
1470 connect(enumPropertyManager,
1471 SIGNAL(enumNamesChanged(
QtProperty*,
const QStringList&)),
1473 SLOT(slotEnumNamesChanged(
QtProperty*,
const QStringList&)));
1474 connect(enumPropertyManager,
1475 SIGNAL(enumIconsChanged(
QtProperty*,
const QMap<int, QIcon>&)),
1477 SLOT(slotEnumIconsChanged(
QtProperty*,
const QMap<int, QIcon>&)));
1480 d_ptr->m_typeToPropertyManager[QVariant::SizePolicy] = sizePolicyPropertyManager;
1481 d_ptr->m_typeToValueType[QVariant::SizePolicy] = QVariant::SizePolicy;
1482 connect(sizePolicyPropertyManager,
1485 SLOT(slotValueChanged(
QtProperty*,
const QSizePolicy&)));
1493 SLOT(slotRangeChanged(
QtProperty*,
int,
int)));
1499 SIGNAL(enumNamesChanged(
QtProperty*,
const QStringList&)),
1501 SLOT(slotEnumNamesChanged(
QtProperty*,
const QStringList&)));
1502 connect(sizePolicyPropertyManager,
1506 connect(sizePolicyPropertyManager,
1512 d_ptr->m_typeToPropertyManager[QVariant::Font] = fontPropertyManager;
1513 d_ptr->m_typeToValueType[QVariant::Font] = QVariant::Font;
1514 connect(fontPropertyManager,
1517 SLOT(slotValueChanged(
QtProperty*,
const QFont&)));
1525 SLOT(slotRangeChanged(
QtProperty*,
int,
int)));
1531 SIGNAL(enumNamesChanged(
QtProperty*,
const QStringList&)),
1533 SLOT(slotEnumNamesChanged(
QtProperty*,
const QStringList&)));
1538 connect(fontPropertyManager,
1542 connect(fontPropertyManager,
1548 d_ptr->m_typeToPropertyManager[QVariant::Cursor] = cursorPropertyManager;
1549 d_ptr->m_typeToValueType[QVariant::Cursor] = QVariant::Cursor;
1550 connect(cursorPropertyManager,
1553 SLOT(slotValueChanged(
QtProperty*,
const QCursor&)));
1557 d_ptr->m_typeToPropertyManager[flagId] = flagPropertyManager;
1558 d_ptr->m_typeToValueType[flagId] = QVariant::Int;
1559 d_ptr->m_typeToAttributeToAttributeType[flagId][d_ptr->m_flagNamesAttribute] =
1560 QVariant::StringList;
1561 connect(flagPropertyManager,
1565 connect(flagPropertyManager,
1566 SIGNAL(flagNamesChanged(
QtProperty*,
const QStringList&)),
1568 SLOT(slotFlagNamesChanged(
QtProperty*,
const QStringList&)));
1573 connect(flagPropertyManager,
1577 connect(flagPropertyManager,
1584 d_ptr->m_typeToPropertyManager[groupId] = groupPropertyManager;
1585 d_ptr->m_typeToValueType[groupId] = QVariant::Invalid;
1684 QtProperty* internProp = propertyToWrappedProperty()->value(property, 0);
1686 if (internProp == 0)
1695 return intManager->value(internProp);
1698 qobject_cast<QtDoublePropertyManager*>(manager))
1700 return doubleManager->value(internProp);
1704 return boolManager->value(internProp);
1707 qobject_cast<QtStringPropertyManager*>(manager))
1709 return stringManager->value(internProp);
1713 return dateManager->value(internProp);
1717 return timeManager->value(internProp);
1720 qobject_cast<QtDateTimePropertyManager*>(manager))
1722 return dateTimeManager->value(internProp);
1725 qobject_cast<QtKeySequencePropertyManager*>(manager))
1727 return QVariant::fromValue(keySequenceManager->value(internProp));
1731 return charManager->value(internProp);
1734 qobject_cast<QtLocalePropertyManager*>(manager))
1736 return localeManager->value(internProp);
1740 return pointManager->value(internProp);
1743 qobject_cast<QtPointFPropertyManager*>(manager))
1745 return pointFManager->value(internProp);
1749 return sizeManager->value(internProp);
1753 return sizeFManager->value(internProp);
1757 return rectManager->value(internProp);
1761 return rectFManager->value(internProp);
1765 return colorManager->value(internProp);
1769 return enumManager->value(internProp);
1772 qobject_cast<QtSizePolicyPropertyManager*>(manager))
1774 return sizePolicyManager->value(internProp);
1778 return fontManager->value(internProp);
1782 qobject_cast<QtCursorPropertyManager*>(manager))
1784 return cursorManager->value(internProp);
1789 return flagManager->value(internProp);
1862 QMap<int, QMap<QString, int>>::ConstIterator it =
1863 d_ptr->m_typeToAttributeToAttributeType.find(propType);
1865 if (it == d_ptr->m_typeToAttributeToAttributeType.constEnd())
1871 QMap<QString, int>::ConstIterator itAttr =
attributes.find(attribute);
1878 QtProperty* internProp = propertyToWrappedProperty()->value(property, 0);
1880 if (internProp == 0)
1889 if (attribute == d_ptr->m_maximumAttribute)
1891 return intManager->maximum(internProp);
1894 if (attribute == d_ptr->m_minimumAttribute)
1896 return intManager->minimum(internProp);
1899 if (attribute == d_ptr->m_singleStepAttribute)
1901 return intManager->singleStep(internProp);
1904 if (attribute == d_ptr->m_readOnlyAttribute)
1906 return intManager->isReadOnly(internProp);
1912 qobject_cast<QtDoublePropertyManager*>(manager))
1914 if (attribute == d_ptr->m_maximumAttribute)
1916 return doubleManager->maximum(internProp);
1919 if (attribute == d_ptr->m_minimumAttribute)
1921 return doubleManager->minimum(internProp);
1924 if (attribute == d_ptr->m_singleStepAttribute)
1926 return doubleManager->singleStep(internProp);
1929 if (attribute == d_ptr->m_decimalsAttribute)
1931 return doubleManager->decimals(internProp);
1934 if (attribute == d_ptr->m_readOnlyAttribute)
1936 return doubleManager->isReadOnly(internProp);
1943 if (attribute == d_ptr->m_textVisibleAttribute)
1945 return boolManager->textVisible(internProp);
1951 qobject_cast<QtStringPropertyManager*>(manager))
1953 if (attribute == d_ptr->m_regExpAttribute)
1955 return stringManager->regExp(internProp);
1958 if (attribute == d_ptr->m_echoModeAttribute)
1960 return stringManager->echoMode(internProp);
1963 if (attribute == d_ptr->m_readOnlyAttribute)
1965 return stringManager->isReadOnly(internProp);
1972 if (attribute == d_ptr->m_maximumAttribute)
1974 return dateManager->maximum(internProp);
1977 if (attribute == d_ptr->m_minimumAttribute)
1979 return dateManager->minimum(internProp);
1985 qobject_cast<QtPointFPropertyManager*>(manager))
1987 if (attribute == d_ptr->m_decimalsAttribute)
1989 return pointFManager->decimals(internProp);
1996 if (attribute == d_ptr->m_maximumAttribute)
1998 return sizeManager->maximum(internProp);
2001 if (attribute == d_ptr->m_minimumAttribute)
2003 return sizeManager->minimum(internProp);
2010 if (attribute == d_ptr->m_maximumAttribute)
2012 return sizeFManager->maximum(internProp);
2015 if (attribute == d_ptr->m_minimumAttribute)
2017 return sizeFManager->minimum(internProp);
2020 if (attribute == d_ptr->m_decimalsAttribute)
2022 return sizeFManager->decimals(internProp);
2029 if (attribute == d_ptr->m_constraintAttribute)
2031 return rectManager->constraint(internProp);
2038 if (attribute == d_ptr->m_constraintAttribute)
2040 return rectFManager->constraint(internProp);
2043 if (attribute == d_ptr->m_decimalsAttribute)
2045 return rectFManager->decimals(internProp);
2052 if (attribute == d_ptr->m_enumNamesAttribute)
2054 return enumManager->enumNames(internProp);
2057 if (attribute == d_ptr->m_enumIconsAttribute)
2060 qVariantSetValue(v, enumManager->enumIcons(internProp));
2068 if (attribute == d_ptr->m_flagNamesAttribute)
2070 return flagManager->flagNames(internProp);
2145 int propType = val.userType();
2154 if (propType != valType && !val.canConvert(
static_cast<QVariant::Type
>(valType)))
2159 QtProperty* internProp = propertyToWrappedProperty()->value(property, 0);
2161 if (internProp == 0)
2171 intManager->setValue(internProp, val.value<
int>());
2175 qobject_cast<QtDoublePropertyManager*>(manager))
2177 doubleManager->setValue(internProp, val.value<
double>());
2182 boolManager->setValue(internProp, val.value<
bool>());
2186 qobject_cast<QtStringPropertyManager*>(manager))
2188 stringManager->setValue(internProp, val.value<QString>());
2193 dateManager->setValue(internProp, val.value<QDate>());
2198 timeManager->setValue(internProp, val.value<QTime>());
2202 qobject_cast<QtDateTimePropertyManager*>(manager))
2204 dateTimeManager->setValue(internProp, val.value<QDateTime>());
2208 qobject_cast<QtKeySequencePropertyManager*>(manager))
2210 keySequenceManager->setValue(internProp, val.value<QKeySequence>());
2215 charManager->setValue(internProp, val.value<QChar>());
2219 qobject_cast<QtLocalePropertyManager*>(manager))
2221 localeManager->setValue(internProp, val.value<QLocale>());
2226 pointManager->setValue(internProp, val.value<QPoint>());
2230 qobject_cast<QtPointFPropertyManager*>(manager))
2232 pointFManager->setValue(internProp, val.value<QPointF>());
2237 sizeManager->setValue(internProp, val.value<QSize>());
2242 sizeFManager->setValue(internProp, val.value<QSizeF>());
2247 rectManager->setValue(internProp, val.value<QRect>());
2252 rectFManager->setValue(internProp, val.value<QRectF>());
2257 colorManager->setValue(internProp, val.value<QColor>());
2262 enumManager->setValue(internProp, val.value<
int>());
2266 qobject_cast<QtSizePolicyPropertyManager*>(manager))
2268 sizePolicyManager->setValue(internProp, val.value<QSizePolicy>());
2273 fontManager->setValue(internProp, val.value<QFont>());
2278 qobject_cast<QtCursorPropertyManager*>(manager))
2280 cursorManager->setValue(internProp, val.value<QCursor>());
2286 flagManager->setValue(internProp, val.value<
int>());
2304 const QString& attribute,
2305 const QVariant&
value)
2309 if (!oldAttr.isValid())
2314 int attrType =
value.userType();
2322 !
value.canConvert((QVariant::Type)attrType))
2327 QtProperty* internProp = propertyToWrappedProperty()->value(property, 0);
2329 if (internProp == 0)
2338 if (attribute == d_ptr->m_maximumAttribute)
2340 intManager->setMaximum(internProp,
value.value<
int>());
2342 else if (attribute == d_ptr->m_minimumAttribute)
2344 intManager->setMinimum(internProp,
value.value<
int>());
2346 else if (attribute == d_ptr->m_singleStepAttribute)
2348 intManager->setSingleStep(internProp,
value.value<
int>());
2350 else if (attribute == d_ptr->m_readOnlyAttribute)
2352 intManager->setReadOnly(internProp,
value.value<
bool>());
2358 qobject_cast<QtDoublePropertyManager*>(manager))
2360 if (attribute == d_ptr->m_maximumAttribute)
2362 doubleManager->setMaximum(internProp,
value.value<
double>());
2365 if (attribute == d_ptr->m_minimumAttribute)
2367 doubleManager->setMinimum(internProp,
value.value<
double>());
2370 if (attribute == d_ptr->m_singleStepAttribute)
2372 doubleManager->setSingleStep(internProp,
value.value<
double>());
2375 if (attribute == d_ptr->m_decimalsAttribute)
2377 doubleManager->setDecimals(internProp,
value.value<
int>());
2380 if (attribute == d_ptr->m_readOnlyAttribute)
2382 doubleManager->setReadOnly(internProp,
value.value<
bool>());
2389 if (attribute == d_ptr->m_textVisibleAttribute)
2391 boolManager->setTextVisible(internProp,
value.value<
bool>());
2397 qobject_cast<QtStringPropertyManager*>(manager))
2399 if (attribute == d_ptr->m_regExpAttribute)
2401 stringManager->setRegExp(internProp,
value.value<QRegExp>());
2404 if (attribute == d_ptr->m_echoModeAttribute)
2406 stringManager->setEchoMode(internProp, (
EchoMode)
value.value<
int>());
2409 if (attribute == d_ptr->m_readOnlyAttribute)
2411 stringManager->setReadOnly(internProp, (
EchoMode)
value.value<
bool>());
2418 if (attribute == d_ptr->m_maximumAttribute)
2420 dateManager->setMaximum(internProp,
value.value<QDate>());
2423 if (attribute == d_ptr->m_minimumAttribute)
2425 dateManager->setMinimum(internProp,
value.value<QDate>());
2431 qobject_cast<QtPointFPropertyManager*>(manager))
2433 if (attribute == d_ptr->m_decimalsAttribute)
2435 pointFManager->setDecimals(internProp,
value.value<
int>());
2442 if (attribute == d_ptr->m_maximumAttribute)
2444 sizeManager->setMaximum(internProp,
value.value<QSize>());
2447 if (attribute == d_ptr->m_minimumAttribute)
2449 sizeManager->setMinimum(internProp,
value.value<QSize>());
2456 if (attribute == d_ptr->m_maximumAttribute)
2458 sizeFManager->setMaximum(internProp,
value.value<QSizeF>());
2461 if (attribute == d_ptr->m_minimumAttribute)
2463 sizeFManager->setMinimum(internProp,
value.value<QSizeF>());
2466 if (attribute == d_ptr->m_decimalsAttribute)
2468 sizeFManager->setDecimals(internProp,
value.value<
int>());
2475 if (attribute == d_ptr->m_constraintAttribute)
2477 rectManager->setConstraint(internProp,
value.value<QRect>());
2484 if (attribute == d_ptr->m_constraintAttribute)
2486 rectFManager->setConstraint(internProp,
value.value<QRectF>());
2489 if (attribute == d_ptr->m_decimalsAttribute)
2491 rectFManager->setDecimals(internProp,
value.value<
int>());
2498 if (attribute == d_ptr->m_enumNamesAttribute)
2500 enumManager->setEnumNames(internProp,
value.value<QStringList>());
2503 if (attribute == d_ptr->m_enumIconsAttribute)
2512 if (attribute == d_ptr->m_flagNamesAttribute)
2514 flagManager->setFlagNames(internProp,
value.value<QStringList>());
2744 d_ptr->q_ptr =
this;
2747 d_ptr->m_factoryToType[d_ptr->m_spinBoxFactory] = QVariant::Int;
2748 d_ptr->m_typeToFactory[QVariant::Int] = d_ptr->m_spinBoxFactory;
2751 d_ptr->m_factoryToType[d_ptr->m_doubleSpinBoxFactory] = QVariant::Double;
2752 d_ptr->m_typeToFactory[QVariant::Double] = d_ptr->m_doubleSpinBoxFactory;
2755 d_ptr->m_factoryToType[d_ptr->m_checkBoxFactory] = QVariant::Bool;
2756 d_ptr->m_typeToFactory[QVariant::Bool] = d_ptr->m_checkBoxFactory;
2759 d_ptr->m_factoryToType[d_ptr->m_lineEditFactory] = QVariant::String;
2760 d_ptr->m_typeToFactory[QVariant::String] = d_ptr->m_lineEditFactory;
2763 d_ptr->m_factoryToType[d_ptr->m_dateEditFactory] = QVariant::Date;
2764 d_ptr->m_typeToFactory[QVariant::Date] = d_ptr->m_dateEditFactory;
2767 d_ptr->m_factoryToType[d_ptr->m_timeEditFactory] = QVariant::Time;
2768 d_ptr->m_typeToFactory[QVariant::Time] = d_ptr->m_timeEditFactory;
2771 d_ptr->m_factoryToType[d_ptr->m_dateTimeEditFactory] = QVariant::DateTime;
2772 d_ptr->m_typeToFactory[QVariant::DateTime] = d_ptr->m_dateTimeEditFactory;
2775 d_ptr->m_factoryToType[d_ptr->m_keySequenceEditorFactory] = QVariant::KeySequence;
2776 d_ptr->m_typeToFactory[QVariant::KeySequence] = d_ptr->m_keySequenceEditorFactory;
2779 d_ptr->m_factoryToType[d_ptr->m_charEditorFactory] = QVariant::Char;
2780 d_ptr->m_typeToFactory[QVariant::Char] = d_ptr->m_charEditorFactory;
2783 d_ptr->m_factoryToType[d_ptr->m_cursorEditorFactory] = QVariant::Cursor;
2784 d_ptr->m_typeToFactory[QVariant::Cursor] = d_ptr->m_cursorEditorFactory;
2787 d_ptr->m_factoryToType[d_ptr->m_colorEditorFactory] = QVariant::Color;
2788 d_ptr->m_typeToFactory[QVariant::Color] = d_ptr->m_colorEditorFactory;
2791 d_ptr->m_factoryToType[d_ptr->m_fontEditorFactory] = QVariant::Font;
2792 d_ptr->m_typeToFactory[QVariant::Font] = d_ptr->m_fontEditorFactory;
2796 d_ptr->m_factoryToType[d_ptr->m_comboBoxFactory] = enumId;
2797 d_ptr->m_typeToFactory[enumId] = d_ptr->m_comboBoxFactory;
2816 QList<QtIntPropertyManager*> intPropertyManagers =
2818 QListIterator<QtIntPropertyManager*> itInt(intPropertyManagers);
2820 while (itInt.hasNext())
2822 d_ptr->m_spinBoxFactory->addPropertyManager(itInt.next());
2825 QList<QtDoublePropertyManager*> doublePropertyManagers =
2827 QListIterator<QtDoublePropertyManager*> itDouble(doublePropertyManagers);
2829 while (itDouble.hasNext())
2831 d_ptr->m_doubleSpinBoxFactory->addPropertyManager(itDouble.next());
2834 QList<QtBoolPropertyManager*> boolPropertyManagers =
2836 QListIterator<QtBoolPropertyManager*> itBool(boolPropertyManagers);
2838 while (itBool.hasNext())
2840 d_ptr->m_checkBoxFactory->addPropertyManager(itBool.next());
2843 QList<QtStringPropertyManager*> stringPropertyManagers =
2845 QListIterator<QtStringPropertyManager*> itString(stringPropertyManagers);
2847 while (itString.hasNext())
2849 d_ptr->m_lineEditFactory->addPropertyManager(itString.next());
2852 QList<QtDatePropertyManager*> datePropertyManagers =
2854 QListIterator<QtDatePropertyManager*> itDate(datePropertyManagers);
2856 while (itDate.hasNext())
2858 d_ptr->m_dateEditFactory->addPropertyManager(itDate.next());
2861 QList<QtTimePropertyManager*> timePropertyManagers =
2863 QListIterator<QtTimePropertyManager*> itTime(timePropertyManagers);
2865 while (itTime.hasNext())
2867 d_ptr->m_timeEditFactory->addPropertyManager(itTime.next());
2870 QList<QtDateTimePropertyManager*> dateTimePropertyManagers =
2872 QListIterator<QtDateTimePropertyManager*> itDateTime(dateTimePropertyManagers);
2874 while (itDateTime.hasNext())
2876 d_ptr->m_dateTimeEditFactory->addPropertyManager(itDateTime.next());
2879 QList<QtKeySequencePropertyManager*> keySequencePropertyManagers =
2881 QListIterator<QtKeySequencePropertyManager*> itKeySequence(keySequencePropertyManagers);
2883 while (itKeySequence.hasNext())
2885 d_ptr->m_keySequenceEditorFactory->addPropertyManager(itKeySequence.next());
2888 QList<QtCharPropertyManager*> charPropertyManagers =
2890 QListIterator<QtCharPropertyManager*> itChar(charPropertyManagers);
2892 while (itChar.hasNext())
2894 d_ptr->m_charEditorFactory->addPropertyManager(itChar.next());
2897 QList<QtLocalePropertyManager*> localePropertyManagers =
2899 QListIterator<QtLocalePropertyManager*> itLocale(localePropertyManagers);
2901 while (itLocale.hasNext())
2903 d_ptr->m_comboBoxFactory->addPropertyManager(itLocale.next()->subEnumPropertyManager());
2906 QList<QtPointPropertyManager*> pointPropertyManagers =
2908 QListIterator<QtPointPropertyManager*> itPoint(pointPropertyManagers);
2910 while (itPoint.hasNext())
2912 d_ptr->m_spinBoxFactory->addPropertyManager(itPoint.next()->subIntPropertyManager());
2915 QList<QtPointFPropertyManager*> pointFPropertyManagers =
2917 QListIterator<QtPointFPropertyManager*> itPointF(pointFPropertyManagers);
2919 while (itPointF.hasNext())
2921 d_ptr->m_doubleSpinBoxFactory->addPropertyManager(
2922 itPointF.next()->subDoublePropertyManager());
2925 QList<QtSizePropertyManager*> sizePropertyManagers =
2927 QListIterator<QtSizePropertyManager*> itSize(sizePropertyManagers);
2929 while (itSize.hasNext())
2931 d_ptr->m_spinBoxFactory->addPropertyManager(itSize.next()->subIntPropertyManager());
2934 QList<QtSizeFPropertyManager*> sizeFPropertyManagers =
2936 QListIterator<QtSizeFPropertyManager*> itSizeF(sizeFPropertyManagers);
2938 while (itSizeF.hasNext())
2940 d_ptr->m_doubleSpinBoxFactory->addPropertyManager(
2941 itSizeF.next()->subDoublePropertyManager());
2944 QList<QtRectPropertyManager*> rectPropertyManagers =
2946 QListIterator<QtRectPropertyManager*> itRect(rectPropertyManagers);
2948 while (itRect.hasNext())
2950 d_ptr->m_spinBoxFactory->addPropertyManager(itRect.next()->subIntPropertyManager());
2953 QList<QtRectFPropertyManager*> rectFPropertyManagers =
2955 QListIterator<QtRectFPropertyManager*> itRectF(rectFPropertyManagers);
2957 while (itRectF.hasNext())
2959 d_ptr->m_doubleSpinBoxFactory->addPropertyManager(
2960 itRectF.next()->subDoublePropertyManager());
2963 QList<QtColorPropertyManager*> colorPropertyManagers =
2965 QListIterator<QtColorPropertyManager*> itColor(colorPropertyManagers);
2967 while (itColor.hasNext())
2970 d_ptr->m_colorEditorFactory->addPropertyManager(manager);
2974 QList<QtEnumPropertyManager*> enumPropertyManagers =
2976 QListIterator<QtEnumPropertyManager*> itEnum(enumPropertyManagers);
2978 while (itEnum.hasNext())
2980 d_ptr->m_comboBoxFactory->addPropertyManager(itEnum.next());
2983 QList<QtSizePolicyPropertyManager*> sizePolicyPropertyManagers =
2985 QListIterator<QtSizePolicyPropertyManager*> itSizePolicy(sizePolicyPropertyManagers);
2987 while (itSizePolicy.hasNext())
2994 QList<QtFontPropertyManager*> fontPropertyManagers =
2996 QListIterator<QtFontPropertyManager*> itFont(fontPropertyManagers);
2998 while (itFont.hasNext())
3001 d_ptr->m_fontEditorFactory->addPropertyManager(manager);
3007 QList<QtCursorPropertyManager*> cursorPropertyManagers =
3009 QListIterator<QtCursorPropertyManager*> itCursor(cursorPropertyManagers);
3011 while (itCursor.hasNext())
3013 d_ptr->m_cursorEditorFactory->addPropertyManager(itCursor.next());
3016 QList<QtFlagPropertyManager*> flagPropertyManagers =
3018 QListIterator<QtFlagPropertyManager*> itFlag(flagPropertyManagers);
3020 while (itFlag.hasNext())
3022 d_ptr->m_checkBoxFactory->addPropertyManager(itFlag.next()->subBoolPropertyManager());
3055 QList<QtIntPropertyManager*> intPropertyManagers =
3057 QListIterator<QtIntPropertyManager*> itInt(intPropertyManagers);
3059 while (itInt.hasNext())
3061 d_ptr->m_spinBoxFactory->removePropertyManager(itInt.next());
3064 QList<QtDoublePropertyManager*> doublePropertyManagers =
3066 QListIterator<QtDoublePropertyManager*> itDouble(doublePropertyManagers);
3068 while (itDouble.hasNext())
3070 d_ptr->m_doubleSpinBoxFactory->removePropertyManager(itDouble.next());
3073 QList<QtBoolPropertyManager*> boolPropertyManagers =
3075 QListIterator<QtBoolPropertyManager*> itBool(boolPropertyManagers);
3077 while (itBool.hasNext())
3079 d_ptr->m_checkBoxFactory->removePropertyManager(itBool.next());
3082 QList<QtStringPropertyManager*> stringPropertyManagers =
3084 QListIterator<QtStringPropertyManager*> itString(stringPropertyManagers);
3086 while (itString.hasNext())
3088 d_ptr->m_lineEditFactory->removePropertyManager(itString.next());
3091 QList<QtDatePropertyManager*> datePropertyManagers =
3093 QListIterator<QtDatePropertyManager*> itDate(datePropertyManagers);
3095 while (itDate.hasNext())
3097 d_ptr->m_dateEditFactory->removePropertyManager(itDate.next());
3100 QList<QtTimePropertyManager*> timePropertyManagers =
3102 QListIterator<QtTimePropertyManager*> itTime(timePropertyManagers);
3104 while (itTime.hasNext())
3106 d_ptr->m_timeEditFactory->removePropertyManager(itTime.next());
3109 QList<QtDateTimePropertyManager*> dateTimePropertyManagers =
3111 QListIterator<QtDateTimePropertyManager*> itDateTime(dateTimePropertyManagers);
3113 while (itDateTime.hasNext())
3115 d_ptr->m_dateTimeEditFactory->removePropertyManager(itDateTime.next());
3118 QList<QtKeySequencePropertyManager*> keySequencePropertyManagers =
3120 QListIterator<QtKeySequencePropertyManager*> itKeySequence(keySequencePropertyManagers);
3122 while (itKeySequence.hasNext())
3124 d_ptr->m_keySequenceEditorFactory->removePropertyManager(itKeySequence.next());
3127 QList<QtCharPropertyManager*> charPropertyManagers =
3129 QListIterator<QtCharPropertyManager*> itChar(charPropertyManagers);
3131 while (itChar.hasNext())
3133 d_ptr->m_charEditorFactory->removePropertyManager(itChar.next());
3136 QList<QtLocalePropertyManager*> localePropertyManagers =
3138 QListIterator<QtLocalePropertyManager*> itLocale(localePropertyManagers);
3140 while (itLocale.hasNext())
3142 d_ptr->m_comboBoxFactory->removePropertyManager(itLocale.next()->subEnumPropertyManager());
3145 QList<QtPointPropertyManager*> pointPropertyManagers =
3147 QListIterator<QtPointPropertyManager*> itPoint(pointPropertyManagers);
3149 while (itPoint.hasNext())
3151 d_ptr->m_spinBoxFactory->removePropertyManager(itPoint.next()->subIntPropertyManager());
3154 QList<QtPointFPropertyManager*> pointFPropertyManagers =
3156 QListIterator<QtPointFPropertyManager*> itPointF(pointFPropertyManagers);
3158 while (itPointF.hasNext())
3160 d_ptr->m_doubleSpinBoxFactory->removePropertyManager(
3161 itPointF.next()->subDoublePropertyManager());
3164 QList<QtSizePropertyManager*> sizePropertyManagers =
3166 QListIterator<QtSizePropertyManager*> itSize(sizePropertyManagers);
3168 while (itSize.hasNext())
3170 d_ptr->m_spinBoxFactory->removePropertyManager(itSize.next()->subIntPropertyManager());
3173 QList<QtSizeFPropertyManager*> sizeFPropertyManagers =
3175 QListIterator<QtSizeFPropertyManager*> itSizeF(sizeFPropertyManagers);
3177 while (itSizeF.hasNext())
3179 d_ptr->m_doubleSpinBoxFactory->removePropertyManager(
3180 itSizeF.next()->subDoublePropertyManager());
3183 QList<QtRectPropertyManager*> rectPropertyManagers =
3185 QListIterator<QtRectPropertyManager*> itRect(rectPropertyManagers);
3187 while (itRect.hasNext())
3189 d_ptr->m_spinBoxFactory->removePropertyManager(itRect.next()->subIntPropertyManager());
3192 QList<QtRectFPropertyManager*> rectFPropertyManagers =
3194 QListIterator<QtRectFPropertyManager*> itRectF(rectFPropertyManagers);
3196 while (itRectF.hasNext())
3198 d_ptr->m_doubleSpinBoxFactory->removePropertyManager(
3199 itRectF.next()->subDoublePropertyManager());
3202 QList<QtColorPropertyManager*> colorPropertyManagers =
3204 QListIterator<QtColorPropertyManager*> itColor(colorPropertyManagers);
3206 while (itColor.hasNext())
3209 d_ptr->m_colorEditorFactory->removePropertyManager(manager);
3213 QList<QtEnumPropertyManager*> enumPropertyManagers =
3215 QListIterator<QtEnumPropertyManager*> itEnum(enumPropertyManagers);
3217 while (itEnum.hasNext())
3219 d_ptr->m_comboBoxFactory->removePropertyManager(itEnum.next());
3222 QList<QtSizePolicyPropertyManager*> sizePolicyPropertyManagers =
3224 QListIterator<QtSizePolicyPropertyManager*> itSizePolicy(sizePolicyPropertyManagers);
3226 while (itSizePolicy.hasNext())
3233 QList<QtFontPropertyManager*> fontPropertyManagers =
3235 QListIterator<QtFontPropertyManager*> itFont(fontPropertyManagers);
3237 while (itFont.hasNext())
3240 d_ptr->m_fontEditorFactory->removePropertyManager(manager);
3246 QList<QtCursorPropertyManager*> cursorPropertyManagers =
3248 QListIterator<QtCursorPropertyManager*> itCursor(cursorPropertyManagers);
3250 while (itCursor.hasNext())
3252 d_ptr->m_cursorEditorFactory->removePropertyManager(itCursor.next());
3255 QList<QtFlagPropertyManager*> flagPropertyManagers =
3257 QListIterator<QtFlagPropertyManager*> itFlag(flagPropertyManagers);
3259 while (itFlag.hasNext())
3261 d_ptr->m_checkBoxFactory->removePropertyManager(itFlag.next()->subBoolPropertyManager());