Salome HOME
5ff8d5921547cf7f6f80bd5ee72e57c65fed0f41
[modules/geom.git] / src / GEOMGUI / GeometryGUI_Operations.h
1 // Copyright (C) 2007-2011  CEA/DEN, EDF R&D, OPEN CASCADE
2 //
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.
7 //
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.
12 //
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
16 //
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 //
19 //  File   : GeometryGUI_Operations.h
20 //  Author : Vadim SANDLER, Open CASCADE S.A.S. (vadim.sandler@opencascade.com)
21
22 #ifndef GEOMETRYGUI_OPERATIONS_H
23 #define GEOMETRYGUI_OPERATIONS_H
24
25 namespace GEOMOp {
26   enum {
27     // ToolsGUI ------------------//--------------------------------
28     OpImport              = 1000,   // MENU FILE  - IMPORT
29     OpExport              = 1001,   // MENU FILE  - EXPORT
30     OpDelete              = 1020,   // MENU EDIT  - DELETE
31     OpCheckGeom           = 1030,   // MENU TOOLS - CHECK GEOMETRY
32     OpSelectVertex        = 1100,   // POPUP MENU - SELECT ONLY - VERTEX
33     OpSelectEdge          = 1101,   // POPUP MENU - SELECT ONLY - EDGE
34     OpSelectWire          = 1102,   // POPUP MENU - SELECT ONLY - WIRE
35     OpSelectFace          = 1103,   // POPUP MENU - SELECT ONLY - FACE
36     OpSelectShell         = 1104,   // POPUP MENU - SELECT ONLY - SHELL
37     OpSelectSolid         = 1105,   // POPUP MENU - SELECT ONLY - SOLID
38     OpSelectCompound      = 1106,   // POPUP MENU - SELECT ONLY - COMPOUND
39     OpSelectAll           = 1107,   // POPUP MENU - SELECT ONLY - SELECT ALL
40     OpDeflection          = 1200,   // POPUP MENU - DEFLECTION COEFFICIENT
41     OpColor               = 1201,   // POPUP MENU - COLOR
42     OpTransparency        = 1202,   // POPUP MENU - TRANSPARENCY
43     OpIncrTransparency    = 1203,   // SHORTCUT   - INCREASE TRANSPARENCY
44     OpDecrTransparency    = 1204,   // SHORTCUT   - DECREASE TRANSPARENCY
45     OpIsos                = 1205,   // POPUP MENU - ISOS
46     OpIncrNbIsos          = 1206,   // SHORTCUT   - INCREASE NB ISOS
47     OpDecrNbIsos          = 1207,   // SHORTCUT   - DECREASE NB ISOS
48     OpAutoColor           = 1208,   // POPUP MENU - AUTO COLOR
49     OpNoAutoColor         = 1209,   // POPUP MENU - DISABLE AUTO COLOR
50     OpPointMarker         = 1210,   // POPUP MENU - POINT MARKER
51     OpSetTexture          = 1211,   // POPUP MENU - SETTEXTURE
52     OpMaterialProperties  = 1212,   // POPUP MENU - MATERIAL PROPERTIES
53     OpShowChildren        = 1250,   // POPUP MENU - SHOW CHILDREN
54     OpHideChildren        = 1251,   // POPUP MENU - HIDE CHILDREN
55     OpUnpublishObject     = 1253,   // POPUP MENU - UNPUBLISH
56     OpPublishObject       = 1254,   // GEOM ROOT OBJECT - POPUP MENU - PUBLISH
57
58     // DisplayGUI ----------------//--------------------------------
59     OpDisplayMode         = 2000,   // MENU VIEW  - DISPLAY MODE - WIREFRAME/SHADING/SHADING WITH EDGES
60     OpSwitchVectors       = 2001,   // MENU VIEW  - DISPLAY MODE - SHOW/HIDE EDGE DIRECTION
61     OpShowAll             = 2002,   // MENU VIEW  - SHOW ALL
62     OpHideAll             = 2003,   // MENU VIEW  - HIDE ALL
63     OpShow                = 2100,   // POPUP MENU - SHOW
64     OpShowOnly            = 2101,   // POPUP MENU - SHOW ONLY
65     OpHide                = 2102,   // POPUP MENU - HIDE
66     OpWireframe           = 2200,   // POPUP MENU - DISPLAY MODE - WIREFRAME
67     OpShading             = 2201,   // POPUP MENU - DISPLAY MODE - SHADING
68     OpShadingWithEdges    = 2202,   // POPUP MENU - DISPLAY MODE - SHADING WITH EDGES
69     OpVectors             = 2203,   // POPUP MENU - DISPLAY MODE - SHOW EDGE DIRECTION
70     OpTexture             = 2204,   // POPUP MENU - DISPLAY MODE - TEXTURE
71     // BasicGUI ------------------//--------------------------------
72     OpPoint               = 3000,   // MENU NEW ENTITY - BASIC - POINT
73     OpLine                = 3001,   // MENU NEW ENTITY - BASIC - LINE
74     OpCircle              = 3002,   // MENU NEW ENTITY - BASIC - CIRCLE
75     OpEllipse             = 3003,   // MENU NEW ENTITY - BASIC - ELLIPSE
76     OpArc                 = 3004,   // MENU NEW ENTITY - BASIC - ARC
77     OpVector              = 3005,   // MENU NEW ENTITY - BASIC - VECTOR
78     OpPlane               = 3006,   // MENU NEW ENTITY - BASIC - PLANE
79     OpCurve               = 3007,   // MENU NEW ENTITY - BASIC - CURVE
80     OpLCS                 = 3008,   // MENU NEW ENTITY - BASIC - LOCAL COORDINATE SYSTEM
81     OpOriginAndVectors    = 3009,   // MENU NEW ENTITY - BASIC - ORIGIN AND BASE VECTORS
82     // PrimitiveGUI --------------//--------------------------------
83     OpBox                 = 3100,   // MENU NEW ENTITY - PRIMITIVES - BOX
84     OpCylinder            = 3101,   // MENU NEW ENTITY - PRIMITIVES - CYLINDER
85     OpSphere              = 3102,   // MENU NEW ENTITY - PRIMITIVES - SPHERE
86     OpTorus               = 3103,   // MENU NEW ENTITY - PRIMITIVES - TORUS
87     OpCone                = 3104,   // MENU NEW ENTITY - PRIMITIVES - CONE
88     OpRectangle           = 3105,   // MENU NEW ENTITY - PRIMITIVES - FACE
89     OpDisk                = 3106,   // MENU NEW ENTITY - PRIMITIVES - DISK
90     // GenerationGUI -------------//--------------------------------
91     OpPrism               = 3200,   // MENU NEW ENTITY - GENERATION - EXTRUSION
92     OpRevolution          = 3201,   // MENU NEW ENTITY - GENERATION - REVOLUTION
93     OpFilling             = 3202,   // MENU NEW ENTITY - GENERATION - FILLING
94     OpPipe                = 3203,   // MENU NEW ENTITY - GENERATION - EXTRUSION ALONG PATH
95     // EntityGUI -----------------//--------------------------------
96     Op2dSketcher          = 3300,   // MENU NEW ENTITY - SKETCHER
97     Op3dSketcher          = 3301,   // MENU NEW ENTITY - 3D SKETCHER
98     OpExplode             = 3302,   // MENU NEW ENTITY - EXPLODE
99 #ifdef WITH_OPENCV
100     OpFeatureDetect       = 3303,   // MENU NEW ENTITY - FEATURE DETECTION
101 #endif
102     OpPictureImport       = 3304,   // MENU NEW ENTITY - IMPORT PICTURE IN VIEWER
103
104     // BuildGUI ------------------//--------------------------------
105     OpEdge                = 3400,   // MENU NEW ENTITY - BUILD - EDGE
106     OpWire                = 3401,   // MENU NEW ENTITY - BUILD - WIRE
107     OpFace                = 3402,   // MENU NEW ENTITY - BUILD - FACE
108     OpShell               = 3403,   // MENU NEW ENTITY - BUILD - SHELL
109     OpSolid               = 3404,   // MENU NEW ENTITY - BUILD - SOLID
110     OpCompound            = 3405,   // MENU NEW ENTITY - BUILD - COMPOUND
111     // BooleanGUI ----------------//--------------------------------
112     OpFuse                = 3500,   // MENU OPERATIONS - BOOLEAN - FUSE
113     OpCommon              = 3501,   // MENU OPERATIONS - BOOLEAN - COMMON
114     OpCut                 = 3502,   // MENU OPERATIONS - BOOLEAN - CUT
115     OpSection             = 3503,   // MENU OPERATIONS - BOOLEAN - SECTION
116     // TransformationGUI ---------//--------------------------------
117     OpTranslate           = 3600,   // MENU OPERATIONS - TRANSFORMATION - TRANSLATION
118     OpRotate              = 3601,   // MENU OPERATIONS - TRANSFORMATION - ROTATION
119     OpChangeLoc           = 3602,   // MENU OPERATIONS - TRANSFORMATION - LOCATION
120     OpMirror              = 3603,   // MENU OPERATIONS - TRANSFORMATION - MIRROR
121     OpScale               = 3604,   // MENU OPERATIONS - TRANSFORMATION - SCALE
122     OpOffset              = 3605,   // MENU OPERATIONS - TRANSFORMATION - OFFSET
123     OpMultiTranslate      = 3606,   // MENU OPERATIONS - TRANSFORMATION - MULTI-TRANSLATION
124     OpMultiRotate         = 3607,   // MENU OPERATIONS - TRANSFORMATION - MULTI-ROTATION
125     OpReimport            = 3608,   // POPUP MENU - RELOAD IMPORTED
126     OpProjection          = 3609,   // MENU OPERATIONS - TRANSFORMATION - PROJECTION
127     // OperationGUI
128     OpPartition           = 3700,   // MENU OPERATION - PARTITION
129     OpArchimede           = 3701,   // MENU OPERATION - ARCHIMEDE
130     OpFillet3d            = 3702,   // MENU OPERATION - FILLET
131     OpChamfer             = 3703,   // MENU OPERATION - CHAMFER
132     OpShapesOnShape       = 3704,   // MENU OPERATION - GET SHAPES ON SHAPE
133     OpFillet2d            = 3705,   // MENU OPERATION - FILLET 2D
134     OpFillet1d            = 3706,   // MENU OPERATION - FILLET 1D
135     OpClipping            = 3707,   // MENU OPERATION - CLIPPING RANGE
136     OpSharedShapes        = 3708,   // MENU OPERATION - GET SHARED SHAPES
137     // RepairGUI -----------------//--------------------------------
138     OpSewing              = 4000,   // MENU REPAIR - SEWING
139     OpSuppressFaces       = 4001,   // MENU REPAIR - SUPPRESS FACES
140     OpSuppressHoles       = 4002,   // MENU REPAIR - SUPPRESS HOLES
141     OpShapeProcess        = 4003,   // MENU REPAIR - SHAPE PROCESSING
142     OpCloseContour        = 4004,   // MENU REPAIR - CLOSE CONTOUR
143     OpRemoveIntWires      = 4005,   // MENU REPAIR - REMOVE INTERNAL WIRES
144     OpAddPointOnEdge      = 4006,   // MENU REPAIR - ADD POINT ON EDGE
145     OpFreeBoundaries      = 4007,   // MENU MEASURES - FREE BOUNDARIES
146     OpFreeFaces           = 4008,   // MENU MEASURES - FREE FACES
147     OpOrientation         = 4009,   // MENU REPAIR - CHANGE ORIENTATION
148     OpGlueFaces           = 4010,   // MENU REPAIR - GLUE FACES
149     OpRemoveExtraEdges    = 4011,   // MENU REPAIR - REMOVE EXTRA EDGES
150     OpLimitTolerance      = 4012,   // MENU REPAIR - LIMIT TOLERANCE
151     OpGlueEdges           = 4013,   // MENU REPAIR - GLUE EDGES
152     // MeasureGUI ----------------//--------------------------------
153     OpProperties          = 5000,   // MENU MEASURES - PROPERTIES
154     OpCenterMass          = 5001,   // MENU MEASURES - CENTRE OF MASS
155     OpInertia             = 5002,   // MENU MEASURES - INERTIA
156     OpNormale             = 5003,   // MENU MEASURES - NORMALE
157     OpBoundingBox         = 5004,   // MENU MEASURES - BOUNDING BOX
158     OpMinDistance         = 5005,   // MENU MEASURES - MIN DISTANCE
159     OpAngle               = 5006,   // MENU MEASURES - ANGLE
160     OpTolerance           = 5007,   // MENU MEASURES - TOLERANCE
161     OpWhatIs              = 5008,   // MENU MEASURES - WHAT IS
162     OpCheckShape          = 5009,   // MENU MEASURES - CHECK
163     OpCheckCompound       = 5010,   // MENU MEASURES - CHECK COMPOUND OF BLOCKS
164     OpPointCoordinates    = 5011,   // MENU MEASURES - POINT COORDINATES
165     OpCheckSelfInters     = 5012,   // MENU MEASURES - CHECK SELF INTERSECTIONS
166     // GroupGUI ------------------//--------------------------------
167     OpGroupCreate         = 6000,   // MENU GROUP - CREATE
168     OpGroupEdit           = 6001,   // MENU GROUP - EDIT
169     OpGroupCreatePopup    = 6002,   // POPUP MENU - CREATE GROUP
170     // BlocksGUI -----------------//--------------------------------
171     OpHexaSolid           = 6100,   // MENU BLOCKS - HEXAHEDRAL SOLID
172     OpMultiTransform      = 6101,   // MENU BLOCKS - MULTI-TRANSFORMATION
173     OpQuadFace            = 6102,   // MENU BLOCKS - QUADRANGLE FACE
174     OpPropagate           = 6103,   // MENU BLOCKS - PROPAGATE
175     OpExplodeBlock        = 6104,   // MENU BLOCKS - EXPLODE ON BLOCKS
176     // AdvancedGUI ---------------//--------------------------------
177     OpAdvancedNoOp        = 10000,  // NO OPERATION (advanced operations base)
178     OpPipeTShape          = 10001,  // MENU NEW ENTITY - ADVANCED - PIPE TSHAPE
179 //     OpPipeTShapeGroups  = 10002,  // MENU NEW ENTITY - ADVANCED - PIPE TSHAPE GROUPS
180     //@@ insert new functions before this line @@ do not remove this line @@//
181   };
182 }
183
184 #endif // GEOMETRYGUI_OPERATIONS_H