Salome HOME
Merge from BR_OPENCV
[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     OpShowChildren      = 1250,   // POPUP MENU - SHOW CHILDREN
53     OpHideChildren      = 1251,   // POPUP MENU - HIDE CHILDREN
54     OpUnpublishObject   = 1253,   // POPUP MENU - UNPUBLISH
55     OpPublishObject     = 1254,   // GEOM ROOT OBJECT - POPUP MENU - PUBLISH
56
57     // DisplayGUI ----------------//--------------------------------
58     OpDisplayMode       = 2000,   // MENU VIEW  - DISPLAY MODE - WIREFRAME/SHADING
59     OpSwitchVectors     = 2001,   // MENU VIEW  - DISPLAY MODE - SHOW/HIDE EDGE DIRECTION
60     OpShowAll           = 2002,   // MENU VIEW  - SHOW ALL
61     OpHideAll           = 2003,   // MENU VIEW  - HIDE ALL
62     OpShow              = 2100,   // POPUP MENU - SHOW
63     OpShowOnly          = 2101,   // POPUP MENU - SHOW ONLY
64     OpHide              = 2102,   // POPUP MENU - HIDE
65     OpWireframe         = 2200,   // POPUP MENU - DISPLAY MODE - WIREFRAME
66     OpShading           = 2201,   // POPUP MENU - DISPLAY MODE - SHADING
67     OpVectors           = 2202,   // POPUP MENU - DISPLAY MODE - SHOW EDGE DIRECTION
68     OpTexture           = 2203,   // POPUP MENU - DISPLAY MODE - TEXTURE
69     // BasicGUI ------------------//--------------------------------
70     OpPoint             = 3000,   // MENU NEW ENTITY - BASIC - POINT
71     OpLine              = 3001,   // MENU NEW ENTITY - BASIC - LINE
72     OpCircle            = 3002,   // MENU NEW ENTITY - BASIC - CIRCLE
73     OpEllipse           = 3003,   // MENU NEW ENTITY - BASIC - ELLIPSE
74     OpArc               = 3004,   // MENU NEW ENTITY - BASIC - ARC
75     OpVector            = 3005,   // MENU NEW ENTITY - BASIC - VECTOR
76     OpPlane             = 3006,   // MENU NEW ENTITY - BASIC - PLANE
77     OpCurve             = 3007,   // MENU NEW ENTITY - BASIC - CURVE
78     OpLCS               = 3008,   // MENU NEW ENTITY - BASIC - LOCAL COORDINATE SYSTEM
79     OpOriginAndVectors  = 3009,   // MENU NEW ENTITY - BASIC - ORIGIN AND BASE VECTORS
80     // PrimitiveGUI --------------//--------------------------------
81     OpBox               = 3100,   // MENU NEW ENTITY - PRIMITIVES - BOX
82     OpCylinder          = 3101,   // MENU NEW ENTITY - PRIMITIVES - CYLINDER
83     OpSphere            = 3102,   // MENU NEW ENTITY - PRIMITIVES - SPHERE
84     OpTorus             = 3103,   // MENU NEW ENTITY - PRIMITIVES - TORUS
85     OpCone              = 3104,   // MENU NEW ENTITY - PRIMITIVES - CONE
86     OpRectangle         = 3105,   // MENU NEW ENTITY - PRIMITIVES - FACE
87     OpDisk              = 3106,   // MENU NEW ENTITY - PRIMITIVES - DISK
88     // GenerationGUI -------------//--------------------------------
89     OpPrism             = 3200,   // MENU NEW ENTITY - GENERATION - EXTRUSION
90     OpRevolution        = 3201,   // MENU NEW ENTITY - GENERATION - REVOLUTION
91     OpFilling           = 3202,   // MENU NEW ENTITY - GENERATION - FILLING
92     OpPipe              = 3203,   // MENU NEW ENTITY - GENERATION - EXTRUSION ALONG PATH
93     // EntityGUI -----------------//--------------------------------
94     Op2dSketcher        = 3300,   // MENU NEW ENTITY - SKETCHER
95     Op3dSketcher        = 3301,   // MENU NEW ENTITY - 3D SKETCHER
96     OpExplode           = 3302,   // MENU NEW ENTITY - EXPLODE
97 #ifdef WITH_OPENCV
98     OpFeatureDetect     = 3303,   // MENU NEW ENTITY - FEATURE DETECTION
99     OpPictureImport     = 3304,   // MENU NEW ENTITY - IMPORT PICTURE IN VIEWER
100 #endif
101     // BuildGUI ------------------//--------------------------------
102     OpEdge              = 3400,   // MENU NEW ENTITY - BUILD - EDGE
103     OpWire              = 3401,   // MENU NEW ENTITY - BUILD - WIRE
104     OpFace              = 3402,   // MENU NEW ENTITY - BUILD - FACE
105     OpShell             = 3403,   // MENU NEW ENTITY - BUILD - SHELL
106     OpSolid             = 3404,   // MENU NEW ENTITY - BUILD - SOLID
107     OpCompound          = 3405,   // MENU NEW ENTITY - BUILD - COMPOUND
108     // BooleanGUI ----------------//--------------------------------
109     OpFuse              = 3500,   // MENU OPERATIONS - BOOLEAN - FUSE
110     OpCommon            = 3501,   // MENU OPERATIONS - BOOLEAN - COMMON
111     OpCut               = 3502,   // MENU OPERATIONS - BOOLEAN - CUT
112     OpSection           = 3503,   // MENU OPERATIONS - BOOLEAN - SECTION
113     // TransformationGUI ---------//--------------------------------
114     OpTranslate         = 3600,   // MENU OPERATIONS - TRANSFORMATION - TRANSLATION
115     OpRotate            = 3601,   // MENU OPERATIONS - TRANSFORMATION - ROTATION
116     OpChangeLoc         = 3602,   // MENU OPERATIONS - TRANSFORMATION - LOCATION
117     OpMirror            = 3603,   // MENU OPERATIONS - TRANSFORMATION - MIRROR
118     OpScale             = 3604,   // MENU OPERATIONS - TRANSFORMATION - SCALE
119     OpOffset            = 3605,   // MENU OPERATIONS - TRANSFORMATION - OFFSET
120     OpMultiTranslate    = 3606,   // MENU OPERATIONS - TRANSFORMATION - MULTI-TRANSLATION
121     OpMultiRotate       = 3607,   // MENU OPERATIONS - TRANSFORMATION - MULTI-ROTATION
122     OpReimport          = 3608,   // POPUP MENU - RELOAD IMPORTED
123     OpProjection        = 3609,   // MENU OPERATIONS - TRANSFORMATION - PROJECTION
124     // OperationGUI
125     OpPartition         = 3700,   // MENU OPERATION - PARTITION
126     OpArchimede         = 3701,   // MENU OPERATION - ARCHIMEDE
127     OpFillet3d          = 3702,   // MENU OPERATION - FILLET
128     OpChamfer           = 3703,   // MENU OPERATION - CHAMFER
129     OpShapesOnShape     = 3704,   // MENU OPERATION - GET SHAPES ON SHAPE
130     OpFillet2d          = 3705,   // MENU OPERATION - FILLET 2D
131     OpFillet1d          = 3706,   // MENU OPERATION - FILLET 1D
132     OpClipping          = 3707,   // MENU OPERATION - CLIPPING RANGE
133     OpSharedShapes      = 3708,   // MENU OPERATION - GET SHARED SHAPES
134     // RepairGUI -----------------//--------------------------------
135     OpSewing            = 4000,   // MENU REPAIR - SEWING
136     OpSuppressFaces     = 4001,   // MENU REPAIR - SUPPRESS FACES
137     OpSuppressHoles     = 4002,   // MENU REPAIR - SUPPRESS HOLES
138     OpShapeProcess      = 4003,   // MENU REPAIR - SHAPE PROCESSING
139     OpCloseContour      = 4004,   // MENU REPAIR - CLOSE CONTOUR
140     OpRemoveIntWires    = 4005,   // MENU REPAIR - REMOVE INTERNAL WIRES
141     OpAddPointOnEdge    = 4006,   // MENU REPAIR - ADD POINT ON EDGE
142     OpFreeBoundaries    = 4007,   // MENU MEASURES - FREE BOUNDARIES
143     OpFreeFaces         = 4008,   // MENU MEASURES - FREE FACES
144     OpOrientation       = 4009,   // MENU REPAIR - CHANGE ORIENTATION
145     OpGlueFaces         = 4010,   // MENU REPAIR - GLUE FACES
146     OpRemoveExtraEdges  = 4011,   // MENU REPAIR - REMOVE EXTRA EDGES
147     OpLimitTolerance    = 4012,   // MENU REPAIR - LIMIT TOLERANCE
148     OpGlueEdges         = 4013,   // MENU REPAIR - GLUE EDGES
149     // MeasureGUI ----------------//--------------------------------
150     OpProperties        = 5000,   // MENU MEASURES - PROPERTIES
151     OpCenterMass        = 5001,   // MENU MEASURES - CENTRE OF MASS
152     OpInertia           = 5002,   // MENU MEASURES - INERTIA
153     OpNormale           = 5003,   // MENU MEASURES - NORMALE
154     OpBoundingBox       = 5004,   // MENU MEASURES - BOUNDING BOX
155     OpMinDistance       = 5005,   // MENU MEASURES - MIN DISTANCE
156     OpAngle             = 5006,   // MENU MEASURES - ANGLE
157     OpTolerance         = 5007,   // MENU MEASURES - TOLERANCE
158     OpWhatIs            = 5008,   // MENU MEASURES - WHAT IS
159     OpCheckShape        = 5009,   // MENU MEASURES - CHECK
160     OpCheckCompound     = 5010,   // MENU MEASURES - CHECK COMPOUND OF BLOCKS
161     OpPointCoordinates  = 5011,   // MENU MEASURES - POINT COORDINATES
162     // GroupGUI ------------------//--------------------------------
163     OpGroupCreate       = 6000,   // MENU GROUP - CREATE
164     OpGroupEdit         = 6001,   // MENU GROUP - EDIT
165     OpGroupCreatePopup  = 6002,   // POPUP MENU - CREATE GROUP
166     // BlocksGUI -----------------//--------------------------------
167     OpHexaSolid         = 6100,   // MENU BLOCKS - HEXAHEDRAL SOLID
168     OpMultiTransform    = 6101,   // MENU BLOCKS - MULTI-TRANSFORMATION
169     OpQuadFace          = 6102,   // MENU BLOCKS - QUADRANGLE FACE
170     OpPropagate         = 6103,   // MENU BLOCKS - PROPAGATE
171     OpExplodeBlock      = 6104,   // MENU BLOCKS - EXPLODE ON BLOCKS
172     // AdvancedGUI ---------------//--------------------------------
173     OpAdvancedNoOp      = 10000,  // NO OPERATION (advanced operations base)
174     OpPipeTShape        = 10001,  // MENU NEW ENTITY - ADVANCED - PIPE TSHAPE
175 //     OpPipeTShapeGroups  = 10002,  // MENU NEW ENTITY - ADVANCED - PIPE TSHAPE GROUPS
176     //@@ insert new functions before this line @@ do not remove this line @@//
177   };
178 }
179
180 #endif // GEOMETRYGUI_OPERATIONS_H