X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FXGUI%2FXGUI_PropertyPanel.h;h=22853105352ca4edcc3ba6be5495d52105091c04;hb=fed43d1e0bbd617580196c6038bb02206529f359;hp=546ae19b780fe7e2c62d30b3d3f90bc6b5a9a3b0;hpb=ef523c1c20fecaf086c9f9fe712750ae8e180ec0;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_PropertyPanel.h b/src/XGUI/XGUI_PropertyPanel.h index 546ae19b7..228531053 100644 --- a/src/XGUI/XGUI_PropertyPanel.h +++ b/src/XGUI/XGUI_PropertyPanel.h @@ -15,6 +15,9 @@ #include #include +class QKeyEvent; +class QVBoxLayout; + class XGUI_EXPORT XGUI_PropertyPanel: public QDockWidget { Q_OBJECT @@ -24,14 +27,39 @@ public: QWidget* contentWidget(); void setModelWidgets(const QList& theWidgets); + const QList& modelWidgets() const; + + void cleanContent(); + +protected: + virtual bool eventFilter(QObject *theObject, QEvent *theEvent); public slots: - void updateContentWidget(boost::shared_ptr theFeature); + void updateContentWidget(FeaturePtr theFeature); + /// slot to activate the next widget in the property panel + /// \param theWidget a widget. The next widget should be activated + void onActivateNextWidget(ModuleBase_ModelWidget* theWidget); + +signals: + /// The signal about key release on the control, that corresponds to the attribute + /// \param theAttributeName a name of the attribute + /// \param theEvent key release event + void keyReleased(const std::string& theAttributeName, QKeyEvent* theEvent); + /// The signal about the widget activation + /// \param theWidget the activated widget + void widgetActivated(ModuleBase_ModelWidget* theWidget); + + /// Signal about the point 2d set to the feature + /// \param the feature + /// \param the attribute of the feature + void storedPoint2D(ObjectPtr theFeature, const std::string& theAttribute); private: QWidget* myCustomWidget; QList myWidgets; + + QVBoxLayout* myMainLayout; }; #endif /* XGUI_PROPERTYPANEL_H_ */