1 // SMESH SMESHGUI : GUI for SMESH component
3 // Copyright (C) 2003 CEA
5 // This library is free software; you can redistribute it and/or
6 // modify it under the terms of the GNU Lesser General Public
7 // License as published by the Free Software Foundation; either
8 // version 2.1 of the License.
10 // This library is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 // Lesser General Public License for more details.
15 // You should have received a copy of the GNU Lesser General Public
16 // License along with this library; if not, write to the Free Software
17 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
23 // File : SMESHGUI_GroupOnShapeDlg.h
24 // Author : Edard AGAPOV
27 #ifndef SMESHGUI_GroupOnShapeDlg_H_H
28 #define SMESHGUI_GroupOnShapeDlg_H_H
30 #include "SMESH_SMESHGUI.hxx"
32 // #include "LightApp_SelectionMgr.h"
33 // //#include "SMESH_TypeFilter.hxx"
34 // #include "SUIT_SelectionFilter.h"
35 #include "SMESHGUI_SelectionOp.h"
38 // #include <qdialog.h>
39 // #include <qvaluelist.h>
53 class SMESHGUI_FilterDlg;
54 class SMESHGUI_ShapeByMeshOp;
57 class SVTK_ViewWindow;
58 class SMESHGUI_GroupOnShapeDlg;
60 //=================================================================================
61 // class : SMESHGUI_GroupOnShapeOp
62 // purpose : create groups on shapes of nodes and element at once, Issue 19970
63 //=================================================================================
65 class SMESHGUI_EXPORT SMESHGUI_GroupOnShapeOp : public SMESHGUI_SelectionOp
70 SMESHGUI_GroupOnShapeOp();
71 ~SMESHGUI_GroupOnShapeOp();
73 virtual LightApp_Dialog* dlg() const;
74 static QString GetDefaultName(const QString& theOperation);
80 virtual void startOperation();
81 virtual void selectionDone();
82 virtual SUIT_SelectionFilter* createFilter( const int ) const;
83 //virtual bool isValid( SUIT_Operation* ) const;
99 void setGroupColor( const SALOMEDS::Color& );
100 SALOMEDS::Color getGroupColor() const;
102 void setGroupQColor( const QColor& );
103 QColor getGroupQColor() const;
105 void setDefaultGroupColor();
109 SMESHGUI_GroupOnShapeDlg* myDlg;
112 QStringList myElemGeoIDs, myNodeGeoIDs;
113 //GEOM::ListOfGO_var myElemGObj;
116 class SMESHGUI_EXPORT SMESHGUI_GroupOnShapeDlg : public SMESHGUI_Dialog
121 SMESHGUI_GroupOnShapeDlg();
125 void updateButtons();
130 QLineEdit* myGrpNameLine;
132 QPushButton* myMeshBtn;
133 QLineEdit* myMeshLine;
135 QPushButton* myElemGeomBtn;
136 QListBox* myElemGeomList;
138 QPushButton* myNodeGeomBtn;
139 QListBox* myNodeGeomList;
141 // QPushButton* myColorBtn;
143 // bool myCreate, myIsBusy;
145 // QString myHelpFileName;
147 friend class SMESHGUI_GroupOnShapeOp;
150 #endif // SMESHGUI_GroupOnShapeDlg_H_H