1 // Copyright (C) 2014-2017 CEA/DEN, EDF R&D
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License, or (at your option) any later version.
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 // Lesser General Public License for more details.
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 // See http://www.salome-platform.org/ or
18 // email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
21 #ifndef XGUI_INSPECTIONPANEL_H_
22 #define XGUI_INSPECTIONPANEL_H_
26 #include <QDockWidget>
30 class XGUI_SelectionMgr;
48 class GeomAPI_Cylinder;
53 /// Internal name of property panel widget
54 const static char* INSPECTION_PANEL = "inspection_panel_dock";
56 class XGUI_EXPORT XGUI_InspectionPanel : public QDockWidget
73 /// \param theParent is a parent of the property panel
74 /// \param theMgr operation manager
75 XGUI_InspectionPanel(QWidget* theParent, XGUI_SelectionMgr* theMgr);
77 virtual ~XGUI_InspectionPanel();
80 void onSelectionChanged();
83 void setSubShapeValue(SudShape theId, int theVal);
85 void setName(const QString& theName);
87 void setShapeContent(const TopoDS_Shape& theShape);
89 void setShapeParams(const TopoDS_Shape& theShape);
94 void fillVertex(const std::shared_ptr<GeomAPI_Vertex>& theVertex);
96 void fillEdge(const std::shared_ptr<GeomAPI_Edge>& theEdge);
98 void fillWire(const std::shared_ptr<GeomAPI_Wire>& theWire);
100 void fillFace(const std::shared_ptr<GeomAPI_Face>& theFace);
102 void fillShell(const std::shared_ptr<GeomAPI_Shell>& theShell);
104 void fillSolid(const std::shared_ptr<GeomAPI_Solid>& theSolid);
106 void fillContainer(const std::shared_ptr<GeomAPI_Shape>& theShape);
109 void setPlaneType(const QString& theTitle, const std::shared_ptr<GeomAPI_Pln>& thePlane);
111 void setSphereType(const QString& theTitle, const std::shared_ptr<GeomAPI_Sphere>& theSphere);
113 void setCylinderType(const QString& theTitle, const std::shared_ptr<GeomAPI_Cylinder>& theCyl);
115 void setConeType(const QString& theTitle, const std::shared_ptr<GeomAPI_Cone>& theCone);
117 void setTorusType(const QString& theTitle, const std::shared_ptr<GeomAPI_Torus>& theTorus);
119 void setBoxType(const QString& theTitle, const std::shared_ptr<GeomAPI_Box>& theBox);
121 void setRotatedBoxType(const QString& theTitle, const std::shared_ptr<GeomAPI_Box>& theBox);
124 XGUI_SelectionMgr* mySelectionMgr;
126 QLineEdit* myNameEdt;
127 QTableWidget* mySubShapesTab;
129 QTextBrowser* myTypeParams;