1 // Copyright (C) 2007-2020 CEA/DEN, EDF R&D, OPEN CASCADE
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 email : webmaster.salome@opencascade.com
20 // SMESH SMESHGUI : GUI for SMESH component
21 // File : SMESHGUI_GroupOnShapeDlg.h
22 // Author : Edard AGAPOV
25 #ifndef SMESHGUI_GroupOnShapeDlg_H_H
26 #define SMESHGUI_GroupOnShapeDlg_H_H
28 #include "SMESH_SMESHGUI.hxx"
30 #include "SMESHGUI_SelectionOp.h"
35 class SMESHGUI_GroupOnShapeDlg;
37 //=================================================================================
38 // class : SMESHGUI_GroupOnShapeOp
39 // purpose : create groups on shapes of nodes and element at once, Issue 19970
40 //=================================================================================
42 class SMESHGUI_EXPORT SMESHGUI_GroupOnShapeOp : public SMESHGUI_SelectionOp
47 SMESHGUI_GroupOnShapeOp();
48 ~SMESHGUI_GroupOnShapeOp();
50 virtual LightApp_Dialog* dlg() const;
51 static QString GetDefaultName(const QString& theOperation);
52 static SMESH::ElementType ElementType(GEOM::GEOM_Object_var geom);
58 virtual void startOperation();
59 virtual void selectionDone();
60 virtual SUIT_SelectionFilter* createFilter( const int ) const;
61 //virtual bool isValid( SUIT_Operation* ) const;
69 // void onSelectColor();
75 // void setGroupColor( const SALOMEDS::Color& );
76 // SALOMEDS::Color getGroupColor() const;
78 // void setGroupQColor( const QColor& );
79 // QColor getGroupQColor() const;
81 // void setDefaultGroupColor();
85 SMESHGUI_GroupOnShapeDlg* myDlg;
88 QStringList myElemGeoIDs, myNodeGeoIDs;
89 //GEOM::ListOfGO_var myElemGObj;
92 class SMESHGUI_EXPORT SMESHGUI_GroupOnShapeDlg : public SMESHGUI_Dialog
97 SMESHGUI_GroupOnShapeDlg();
98 virtual ~SMESHGUI_GroupOnShapeDlg();
102 void updateButtons();
107 //QLineEdit* myGrpNameLine;
109 QPushButton* myMeshBtn;
110 QLineEdit* myMeshLine;
112 QPushButton* myElemGeomBtn;
113 QListWidget* myElemGeomList;
115 QPushButton* myNodeGeomBtn;
116 QListWidget* myNodeGeomList;
118 // QPushButton* myColorBtn;
120 // bool myCreate, myIsBusy;
122 // QString myHelpFileName;
124 friend class SMESHGUI_GroupOnShapeOp;
127 #endif // SMESHGUI_GroupOnShapeDlg_H_H