//#include <AppElements_Constants.h>
#include <ModuleBase_WidgetMultiSelector.h>
#include <ModuleBase_Tools.h>
+#include <ModuleBase_PageBase.h>
+#include <ModuleBase_PageWidget.h>
#include <QEvent>
#include <QFrame>
XGUI_PropertyPanel::XGUI_PropertyPanel(QWidget* theParent)
: ModuleBase_IPropertyPanel(theParent),
- myActiveWidget(NULL)
+ myActiveWidget(NULL),
+ myPanelPage(NULL)
{
this->setWindowTitle(tr("Property Panel"));
QAction* aViewAct = this->toggleViewAction();
setStyleSheet("::title { position: relative; padding-left: 5px; text-align: left center }");
QWidget* aContent = new QWidget(this);
- myMainLayout = new QGridLayout(aContent);
+ QGridLayout* aMainLayout = new QGridLayout(aContent);
const int kPanelColumn = 0;
int aPanelRow = 0;
- myMainLayout->setContentsMargins(3, 3, 3, 3);
+ aMainLayout->setContentsMargins(3, 3, 3, 3);
this->setWidget(aContent);
QFrame* aFrm = new QFrame(aContent);
aFrm->setFrameShape(QFrame::Panel);
QHBoxLayout* aBtnLay = new QHBoxLayout(aFrm);
ModuleBase_Tools::zeroMargins(aBtnLay);
- myMainLayout->addWidget(aFrm, aPanelRow++, kPanelColumn);
+ aMainLayout->addWidget(aFrm, aPanelRow++, kPanelColumn);
QStringList aBtnNames;
aBtnNames << QString(PROP_PANEL_HELP)
}
aBtnLay->insertStretch(1, 1);
- myCustomWidget = new QWidget(aContent);
- myCustomWidget->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::MinimumExpanding);
- myMainLayout->addWidget(myCustomWidget, aPanelRow, kPanelColumn);
- setStretchEnabled(true);
+ myPanelPage = new ModuleBase_PageWidget(aContent);
+ myPanelPage->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::MinimumExpanding);
+ aMainLayout->addWidget(myPanelPage, aPanelRow, kPanelColumn);
}
XGUI_PropertyPanel::~XGUI_PropertyPanel()
if (myActiveWidget)
myActiveWidget->deactivate();
myWidgets.clear();
- qDeleteAll(myCustomWidget->children());
+ myPanelPage->clearPage();
myActiveWidget = NULL;
setWindowTitle(tr("Property Panel"));
}
return myWidgets;
}
-QWidget* XGUI_PropertyPanel::contentWidget()
+ModuleBase_PageBase* XGUI_PropertyPanel::contentWidget()
{
- return myCustomWidget;
+
+ return static_cast<ModuleBase_PageBase*>(myPanelPage);
}
void XGUI_PropertyPanel::updateContentWidget(FeaturePtr theFeature)
//}
}
-void XGUI_PropertyPanel::setStretchEnabled(bool isEnabled)
-{
- int aStretchIdx = myMainLayout->rowCount() - 1;
- if (aStretchIdx < 0)
- return;
- myMainLayout->setRowStretch(aStretchIdx, isEnabled ? 1 : 0);
-}
-
void XGUI_PropertyPanel::activateNextWidget()
{
activateNextWidget(myActiveWidget);