21 #ifndef __ctkLayoutManager_h 22 #define __ctkLayoutManager_h 26 #include <QDomDocument> 31 #include "ctkWidgetsExport.h" 32 class ctkLayoutManagerPrivate;
79 Q_PROPERTY(
int spacing READ spacing WRITE setSpacing)
88 void setViewport(QWidget* widget);
89 Q_INVOKABLE QWidget* viewport()
const;
96 void setSpacing(
int spacing);
103 void layoutChanged();
106 QScopedPointer<ctkLayoutManagerPrivate>
d_ptr;
107 ctkLayoutManager(ctkLayoutManagerPrivate* ptr, QWidget* viewport, QObject* parent);
109 virtual void onViewportChanged();
111 virtual void setupLayout();
113 virtual void setLayout(
const QDomDocument& newLayout);
114 const QDomDocument layout()
const;
119 virtual QLayoutItem* processElement(QDomElement element);
122 virtual QLayoutItem* processLayoutElement(QDomElement layoutElement);
125 virtual QLayoutItem* layoutFromXML(QDomElement layoutElement);
128 void processItemElement(QDomElement layoutElement, QLayoutItem* layoutItem);
131 virtual void addChildItemToLayout(QDomElement itemElement, QLayoutItem* childItem, QLayoutItem* layoutItem);
135 QWidgetItem* widgetItemFromXML(QDomElement layoutElement);
140 virtual void setupView(QDomElement layoutElement, QWidget* view);
149 virtual QWidget* viewFromXML(QDomElement layoutElement) = 0;
QScopedPointer< ctkLayoutManagerPrivate > d_ptr