summaryrefslogtreecommitdiffstats
path: root/tools/designer/src/lib/shared/qdesigner_formbuilder_p.h
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@nokia.com>2009-05-22 08:05:11 (GMT)
committerFriedemann Kleint <Friedemann.Kleint@nokia.com>2009-05-22 08:05:11 (GMT)
commitab1b7f137350d6eeafec2a64e3c25a4b02be65a9 (patch)
tree1439d507ee9cb04663cfde0b2ca825eb1b9a82c3 /tools/designer/src/lib/shared/qdesigner_formbuilder_p.h
parentf9d26f0bebd5bcc32d15c4a627251c44cf78389e (diff)
downloadQt-ab1b7f137350d6eeafec2a64e3c25a4b02be65a9.zip
Qt-ab1b7f137350d6eeafec2a64e3c25a4b02be65a9.tar.gz
Qt-ab1b7f137350d6eeafec2a64e3c25a4b02be65a9.tar.bz2
Enabled the use of promoted widgets in new form templates.
The form builder used for preview of the templates did not implement custom widget handling (FormBuilder::createCustomWidgets()). On encountering a promoted widget, the widget factory would then create a Widget Database entry specifying QWidget inheritance (emergency fallback) which could not be overidden later on. To fix this, moved the code for handling custom widgets from QDesignerResource to QSimpleResource and create a new formbuilder class that handles it especially for the New Form Dialog preview. Task-number: 254282
Diffstat (limited to 'tools/designer/src/lib/shared/qdesigner_formbuilder_p.h')
-rw-r--r--tools/designer/src/lib/shared/qdesigner_formbuilder_p.h17
1 files changed, 16 insertions, 1 deletions
diff --git a/tools/designer/src/lib/shared/qdesigner_formbuilder_p.h b/tools/designer/src/lib/shared/qdesigner_formbuilder_p.h
index b982e1c..ee40085 100644
--- a/tools/designer/src/lib/shared/qdesigner_formbuilder_p.h
+++ b/tools/designer/src/lib/shared/qdesigner_formbuilder_p.h
@@ -75,7 +75,7 @@ namespace qdesigner_internal {
class DesignerPixmapCache;
class DesignerIconCache;
-/* Form builder used for previewing forms, widget box and new form dialog.
+/* Form builder used for previewing forms and widget box.
* It applies the system settings to its toplevel window. */
class QDESIGNER_SHARED_EXPORT QDesignerFormBuilder: public QFormBuilder
@@ -159,6 +159,21 @@ private:
bool m_mainWidget;
};
+// Form builder for a new form widget (preview). To allow for promoted
+// widgets in the template, it implements the handling of custom widgets
+// (adding of them to the widget database).
+
+class QDESIGNER_SHARED_EXPORT NewFormWidgetFormBuilder: public QDesignerFormBuilder {
+public:
+ NewFormWidgetFormBuilder(QDesignerFormEditorInterface *core,
+ Mode mode,
+ const DeviceProfile &deviceProfile = DeviceProfile());
+
+protected:
+ virtual void createCustomWidgets(DomCustomWidgets *);
+};
+
+
} // namespace qdesigner_internal
QT_END_NAMESPACE