src/tools/uic/cpp/cppwriteinitialization.cpp
changeset 3 41300fa6a67c
parent 0 1918ee327afb
child 4 3b1da2848fc7
--- a/src/tools/uic/cpp/cppwriteinitialization.cpp	Tue Jan 26 12:42:25 2010 +0200
+++ b/src/tools/uic/cpp/cppwriteinitialization.cpp	Tue Feb 02 00:43:10 2010 +0200
@@ -670,10 +670,13 @@
 
     m_layoutWidget = false;
     if (className == QLatin1String("QWidget") && !node->hasAttributeNative()) {
-        if (m_widgetChain.top()
-            && m_widgetChain.top()->attributeClass() != QLatin1String("QMainWindow")
-            && !m_uic->isContainer(m_widgetChain.top()->attributeClass()))
+        if (const DomWidget* parentWidget = m_widgetChain.top()) {
+            const QString parentClass = parentWidget->attributeClass();
+            if (parentClass != QLatin1String("QMainWindow")
+                && !m_uic->isCustomWidgetContainer(parentClass)
+                && !m_uic->isContainer(parentClass))
             m_layoutWidget = true;
+        }
     }
     m_widgetChain.push(node);
     m_layoutChain.push(0);
@@ -718,7 +721,7 @@
             m_output << m_indent << parentWidget << "->addDockWidget(" << area << varName << ");\n";
         } else if (m_uic->customWidgetsInfo()->extends(className, QLatin1String("QStatusBar"))) {
             m_output << m_indent << parentWidget << "->setStatusBar(" << varName << ");\n";
-        } else if (className == QLatin1String("QWidget")) {
+        } else {
             m_output << m_indent << parentWidget << "->setCentralWidget(" << varName << ");\n";
         }
     }
@@ -2706,11 +2709,11 @@
     m_output << m_indent << "QObject::connect("
         << sender
         << ", "
-        << "SIGNAL(" << connection->elementSignal() << ')'
+        << "SIGNAL("<<connection->elementSignal()<<')'
         << ", "
         << receiver
         << ", "
-        << "SLOT(" << connection->elementSlot() << ')'
+        << "SLOT("<<connection->elementSlot()<<')'
         << ");\n";
 }