Version: 9.16.0
SMESHGUI_AddMeshElementDlg.h
Go to the documentation of this file.
1// Copyright (C) 2007-2026 CEA, EDF, OPEN CASCADE
2//
3// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5//
6// This library is free software; you can redistribute it and/or
7// modify it under the terms of the GNU Lesser General Public
8// License as published by the Free Software Foundation; either
9// version 2.1 of the License, or (at your option) any later version.
10//
11// This library is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14// Lesser General Public License for more details.
15//
16// You should have received a copy of the GNU Lesser General Public
17// License along with this library; if not, write to the Free Software
18// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19//
20// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21//
22
23// SMESH SMESHGUI : GUI for SMESH component
24// File : SMESHGUI_AddMeshElementDlg.h
25// Author : Nicolas REJNERI, Open CASCADE S.A.S.
26//
27#ifndef SMESHGUI_ADDMESHELEMENTDLG_H
28#define SMESHGUI_ADDMESHELEMENTDLG_H
29
30// SMESH includes
31#include "SMESH_SMESHGUI.hxx"
32
34
35// Qt includes
36#include <QDialog>
37
38// IDL includes
39#include <SALOMEconfig.h>
40#include CORBA_SERVER_HEADER(SMESH_Mesh)
41
42class QComboBox;
43class QGroupBox;
44class QLabel;
45class QLineEdit;
46class QPushButton;
47class QRadioButton;
48class QCheckBox;
49class SMESHGUI;
50class SMESH_Actor;
51class SVTK_Selector;
52class LightApp_SelectionMgr;
54
55namespace SMESH
56{
57 struct TElementSimulation;
58}
59
60//=================================================================================
61// class : SMESHGUI_AddMeshElementDlg
62// purpose :
63//=================================================================================
65{
66 Q_OBJECT
67public:
70
71private:
72 void Init();
73 void enterEvent( QEvent* ); /* mouse enter the QWidget */
74 void keyPressEvent( QKeyEvent* );
75 void displaySimulation();
76
77 bool isValid();
78
79 typedef QList<SMESH::SMESH_GroupBase_var> GrpList;
80
81 SMESHGUI* mySMESHGUI; /* Current SMESHGUI object */
82 LightApp_SelectionMgr* mySelectionMgr; /* User shape selection */
83 int myNbOkNodes; /* to check when arguments is defined */
84 bool myBusy;
85 SVTK_Selector* mySelector;
86
87 QLineEdit* myEditCurrentArgument; /* Current LineEdit */
88
93
94 SMESH::SMESH_Mesh_var myMesh;
97 QString myEntry;
99
101 QRadioButton* Constructor1;
106 QPushButton* buttonOk;
107 QPushButton* buttonCancel;
108 QPushButton* buttonApply;
109 QPushButton* buttonHelp;
112 QPushButton* SelectButtonC1A1;
113 QLineEdit* LineEditC1A1;
116
118
119protected slots:
120 virtual void reject();
121 void onDiameterChanged();
122
123private slots:
124 void ClickOnOk();
125 void ClickOnApply();
126 void ClickOnHelp();
127 void SetEditCurrentArgument();
128 void SelectionIntoArgument();
129 void DeactivateActiveDialog();
130 void ActivateThisDialog();
131 void CheckBox( int );
132 void onTextChange( const QString& );
133 void onOpenView();
134 void onCloseView();
135};
136
137#endif // SMESHGUI_ADDMESHELEMENTDLG_H
SMDSAbs_EntityType
Enumeration of entity type used in mesh info array.
Definition: SMDSAbs_ElementType.hxx:79
@ SMDSEntity_Edge
Definition: SMDSAbs_ElementType.hxx:82
#define SMESHGUI_EXPORT
Definition: SMESH_SMESHGUI.hxx:36
Definition: SMESHGUI_AddMeshElementDlg.h:65
QLabel * TextLabel_GroupName
Definition: SMESHGUI_AddMeshElementDlg.h:103
SMESHGUI_SpinBox * DiameterSpinBox
Definition: SMESHGUI_AddMeshElementDlg.h:115
SMESH::SMESH_Mesh_var myMesh
Definition: SMESHGUI_AddMeshElementDlg.h:94
QString myEntry
Definition: SMESHGUI_AddMeshElementDlg.h:97
QGroupBox * GroupButtons
Definition: SMESHGUI_AddMeshElementDlg.h:105
QLabel * TextLabelC1A1
Definition: SMESHGUI_AddMeshElementDlg.h:111
QPushButton * buttonHelp
Definition: SMESHGUI_AddMeshElementDlg.h:109
QLineEdit * LineEditC1A1
Definition: SMESHGUI_AddMeshElementDlg.h:113
int myNbNodes
Definition: SMESHGUI_AddMeshElementDlg.h:91
QList< SMESH::SMESH_GroupBase_var > GrpList
Definition: SMESHGUI_AddMeshElementDlg.h:79
SMDSAbs_EntityType myGeomType
Definition: SMESHGUI_AddMeshElementDlg.h:89
LightApp_SelectionMgr * mySelectionMgr
Definition: SMESHGUI_AddMeshElementDlg.h:82
QRadioButton * Constructor1
Definition: SMESHGUI_AddMeshElementDlg.h:101
QPushButton * buttonApply
Definition: SMESHGUI_AddMeshElementDlg.h:108
GrpList myGroups
Definition: SMESHGUI_AddMeshElementDlg.h:98
SMESH::TElementSimulation * mySimulation
Definition: SMESHGUI_AddMeshElementDlg.h:96
QPushButton * buttonCancel
Definition: SMESHGUI_AddMeshElementDlg.h:107
SMESH_Actor * myActor
Definition: SMESHGUI_AddMeshElementDlg.h:95
int myNbOkNodes
Definition: SMESHGUI_AddMeshElementDlg.h:83
QString myHelpFileName
Definition: SMESHGUI_AddMeshElementDlg.h:117
QGroupBox * GroupC1
Definition: SMESHGUI_AddMeshElementDlg.h:110
QGroupBox * GroupConstructors
Definition: SMESHGUI_AddMeshElementDlg.h:100
bool myIsPoly
Definition: SMESHGUI_AddMeshElementDlg.h:92
QPushButton * SelectButtonC1A1
Definition: SMESHGUI_AddMeshElementDlg.h:112
SVTK_Selector * mySelector
Definition: SMESHGUI_AddMeshElementDlg.h:85
QComboBox * ComboBox_GroupName
Definition: SMESHGUI_AddMeshElementDlg.h:104
SMESHGUI * mySMESHGUI
Definition: SMESHGUI_AddMeshElementDlg.h:81
bool myBusy
Definition: SMESHGUI_AddMeshElementDlg.h:84
QPushButton * buttonOk
Definition: SMESHGUI_AddMeshElementDlg.h:106
QLineEdit * myEditCurrentArgument
Definition: SMESHGUI_AddMeshElementDlg.h:87
QCheckBox * ReverseOrDulicate
Definition: SMESHGUI_AddMeshElementDlg.h:114
int myElementType
Definition: SMESHGUI_AddMeshElementDlg.h:90
QGroupBox * GroupGroups
Definition: SMESHGUI_AddMeshElementDlg.h:102
Definition: SMESHGUI_SpinBox.h:48
Definition: SMESHGUI.h:84
Definition: SMESHGUI_AddMeshElementDlg.cxx:97
Definition: SMESH_Actor.h:56
Definition: SMESH_ControlsClassifier.cxx:39