Remove workaround for RVCT compiler bug
authorThiago Macieira <thiago.macieira@intel.com>
Thu, 18 Dec 2014 02:11:55 +0000 (18:11 -0800)
committerThiago Macieira <thiago.macieira@intel.com>
Thu, 18 Dec 2014 20:03:05 +0000 (21:03 +0100)
We have no idea if anyone is still using that compiler. But let's assume
that they are using a more modern version that does not have the same
bug that we faced with Symbian in 2010.

Change-Id: I1d25d05d6ecbf531d4942e696470db689c55eeea
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
src/designer/src/lib/uilib/abstractformbuilder.cpp

index 6ed38ed..f2c738d 100644 (file)
@@ -1858,9 +1858,6 @@ static void storeItemFlags(const T *item, QList<DomProperty*> *properties)
     }
 }
 
-#ifndef Q_CC_RVCT
-// RVCT does not accept static inline functions if one argument is templated type
-// For this reason all necessary function variants are explicityly written for it.
 template<class T>
 static void storeItemProps(QAbstractFormBuilder *abstractFormBuilder, const T *item,
         QList<DomProperty*> *properties)
@@ -1939,158 +1936,6 @@ static void loadItemPropsNFlags(QAbstractFormBuilder *abstractFormBuilder, T *it
         item->setFlags(enumKeysToValue<Qt::ItemFlags>(itemFlags_enum, p->elementSet().toLatin1()));
 }
 
-#else
-
-static void storeItemProps(QAbstractFormBuilder *abstractFormBuilder, const QTableWidgetItem *item,
-        QList<DomProperty*> *properties)
-{
-    static const QFormBuilderStrings &strings = QFormBuilderStrings::instance();
-    FriendlyFB * const formBuilder = static_cast<FriendlyFB *>(abstractFormBuilder);
-
-    DomProperty *p;
-    QVariant v;
-
-    foreach (const QFormBuilderStrings::TextRoleNName &it, strings.itemTextRoles)
-        if ((p = formBuilder->saveText(it.second, item->data(it.first.second))))
-            properties->append(p);
-
-    foreach (const QFormBuilderStrings::RoleNName &it, strings.itemRoles)
-        if ((v = item->data(it.first)).isValid() &&
-            (p = variantToDomProperty(abstractFormBuilder,
-                static_cast<const QMetaObject *>(&QAbstractFormBuilderGadget::staticMetaObject),
-                it.second, v)))
-            properties->append(p);
-
-    if ((p = formBuilder->saveResource(item->data(Qt::DecorationPropertyRole))))
-        properties->append(p);
-}
-
-static void storeItemProps(QAbstractFormBuilder *abstractFormBuilder, const QListWidgetItem *item,
-        QList<DomProperty*> *properties)
-{
-    static const QFormBuilderStrings &strings = QFormBuilderStrings::instance();
-    FriendlyFB * const formBuilder = static_cast<FriendlyFB *>(abstractFormBuilder);
-
-    DomProperty *p;
-    QVariant v;
-
-    foreach (const QFormBuilderStrings::TextRoleNName &it, strings.itemTextRoles)
-        if ((p = formBuilder->saveText(it.second, item->data(it.first.second))))
-            properties->append(p);
-
-    foreach (const QFormBuilderStrings::RoleNName &it, strings.itemRoles)
-        if ((v = item->data(it.first)).isValid() &&
-            (p = variantToDomProperty(abstractFormBuilder,
-                static_cast<const QMetaObject *>(&QAbstractFormBuilderGadget::staticMetaObject),
-                it.second, v)))
-            properties->append(p);
-
-    if ((p = formBuilder->saveResource(item->data(Qt::DecorationPropertyRole))))
-        properties->append(p);
-}
-
-static void storeItemPropsNFlags(QAbstractFormBuilder *abstractFormBuilder, const QTableWidgetItem *item,
-        QList<DomProperty*> *properties)
-{
-    storeItemProps(abstractFormBuilder, item, properties);
-    storeItemFlags(item, properties);
-}
-
-static void storeItemPropsNFlags(QAbstractFormBuilder *abstractFormBuilder, const QListWidgetItem *item,
-        QList<DomProperty*> *properties)
-{
-    storeItemProps(abstractFormBuilder, item, properties);
-    storeItemFlags(item, properties);
-}
-
-static void loadItemProps(QAbstractFormBuilder *abstractFormBuilder, QTableWidgetItem *item,
-        const QHash<QString, DomProperty*> &properties)
-{
-    static const QFormBuilderStrings &strings = QFormBuilderStrings::instance();
-    FriendlyFB * const formBuilder = static_cast<FriendlyFB *>(abstractFormBuilder);
-
-    DomProperty *p;
-    QVariant v;
-
-    foreach (const QFormBuilderStrings::TextRoleNName &it, strings.itemTextRoles)
-        if ((p = properties.value(it.second))) {
-            v = formBuilder->textBuilder()->loadText(p);
-            QVariant nativeValue = formBuilder->textBuilder()->toNativeValue(v);
-            item->setData(it.first.first, qvariant_cast<QString>(nativeValue));
-            item->setData(it.first.second, v);
-        }
-
-    foreach (const QFormBuilderStrings::RoleNName &it, strings.itemRoles)
-        if ((p = properties.value(it.second)) &&
-            (v = formBuilder->toVariant(&QAbstractFormBuilderGadget::staticMetaObject, p)).isValid())
-            item->setData(it.first, v);
-
-    if ((p = properties.value(strings.iconAttribute))) {
-        v = formBuilder->resourceBuilder()->loadResource(formBuilder->workingDirectory(), p);
-        QVariant nativeValue = formBuilder->resourceBuilder()->toNativeValue(v);
-        item->setIcon(qvariant_cast<QIcon>(nativeValue));
-        item->setData(Qt::DecorationPropertyRole, v);
-    }
-}
-
-static void loadItemProps(QAbstractFormBuilder *abstractFormBuilder, QListWidgetItem *item,
-        const QHash<QString, DomProperty*> &properties)
-{
-    static const QFormBuilderStrings &strings = QFormBuilderStrings::instance();
-    FriendlyFB * const formBuilder = static_cast<FriendlyFB *>(abstractFormBuilder);
-
-    DomProperty *p;
-    QVariant v;
-
-    foreach (const QFormBuilderStrings::TextRoleNName &it, strings.itemTextRoles)
-        if ((p = properties.value(it.second))) {
-            v = formBuilder->textBuilder()->loadText(p);
-            QVariant nativeValue = formBuilder->textBuilder()->toNativeValue(v);
-            item->setData(it.first.first, qvariant_cast<QString>(nativeValue));
-            item->setData(it.first.second, v);
-        }
-
-    foreach (const QFormBuilderStrings::RoleNName &it, strings.itemRoles)
-        if ((p = properties.value(it.second)) &&
-            (v = formBuilder->toVariant(&QAbstractFormBuilderGadget::staticMetaObject, p)).isValid())
-            item->setData(it.first, v);
-
-    if ((p = properties.value(strings.iconAttribute))) {
-        v = formBuilder->resourceBuilder()->loadResource(formBuilder->workingDirectory(), p);
-        QVariant nativeValue = formBuilder->resourceBuilder()->toNativeValue(v);
-        item->setIcon(qvariant_cast<QIcon>(nativeValue));
-        item->setData(Qt::DecorationPropertyRole, v);
-    }
-}
-
-static void loadItemPropsNFlags(QAbstractFormBuilder *abstractFormBuilder, QTableWidgetItem *item,
-        const QHash<QString, DomProperty*> &properties)
-{
-    static const QFormBuilderStrings &strings = QFormBuilderStrings::instance();
-    static const QMetaEnum itemFlags_enum = metaEnum<QAbstractFormBuilderGadget>("itemFlags");
-
-    loadItemProps(abstractFormBuilder, item, properties);
-
-    DomProperty *p;
-    if ((p = properties.value(strings.flagsAttribute)) && p->kind() == DomProperty::Set)
-        item->setFlags(enumKeysToValue<Qt::ItemFlags>(itemFlags_enum, p->elementSet().toLatin1()));
-}
-
-static void loadItemPropsNFlags(QAbstractFormBuilder *abstractFormBuilder, QListWidgetItem *item,
-        const QHash<QString, DomProperty*> &properties)
-{
-    static const QFormBuilderStrings &strings = QFormBuilderStrings::instance();
-    static const QMetaEnum itemFlags_enum = metaEnum<QAbstractFormBuilderGadget>("itemFlags");
-
-    loadItemProps(abstractFormBuilder, item, properties);
-
-    DomProperty *p;
-    if ((p = properties.value(strings.flagsAttribute)) && p->kind() == DomProperty::Set)
-        item->setFlags(enumKeysToValue<Qt::ItemFlags>(itemFlags_enum, p->elementSet().toLatin1()));
-}
-
-#endif
-
 /*!
     \internal
 */
@@ -2443,11 +2288,7 @@ void QAbstractFormBuilder::loadListWidgetExtraInfo(DomWidget *ui_widget, QListWi
     foreach (DomItem *ui_item, ui_widget->elementItem()) {
         const DomPropertyHash properties = propertyMap(ui_item->elementProperty());
         QListWidgetItem *item = new QListWidgetItem(listWidget);
-#ifndef Q_CC_RVCT
         loadItemPropsNFlags<QListWidgetItem>(this, item, properties);
-#else
-        loadItemPropsNFlags(this, item, properties);
-#endif
     }
 
     DomProperty *currentRow = propertyMap(ui_widget->elementProperty()).value(strings.currentRowProperty);