00001
00044 #ifndef INC_GRE_BASE_H
00045 #define INC_GRE_BASE_H
00046
00047 #ifndef INC_MI32_STDDEFNS_H
00048 #include <mi32/stddefns.h>
00049 #endif
00050
00051
00052 #ifndef GENERATING_DOXYGEN_OUTPUT
00053
00054
00055 namespace GRE {
00056 struct AUTOLABELPARMS;
00057 class CTRL_TREEVIEW;
00058 struct DATATIPPARMS;
00059 class ELEMSAMPLE_DC;
00060 class GEOMETRIC3D;
00061 class GROUP;
00062 class GROUPVIEW;
00063 struct LABELPARMS;
00064 class LABELPLACE;
00065 class LABELPLACEMENT;
00066 class LAYER;
00067 class LAYER_CAD;
00068 class LAYER_FORMULA;
00069 class LAYER_LEGEND;
00070 class LAYER_LEGEND2;
00071 class LAYER_MAPGRID;
00072 class LAYER_PINMAP;
00073 class LAYER_RASTER;
00074 class LAYER_REGION;
00075 class LAYER_SCALEBAR;
00076 class LAYER_SCRIPT;
00077 class LAYER_SHAPE;
00078 class LAYER_SKETCH;
00079 class LAYER_SURFACE;
00080 class LAYER_TEXT;
00081 class LAYER_TIN;
00082 class LAYER_VECTOR;
00083 class LAYERDC;
00084 class LAYERSECTION;
00085 class LAYERVIEW;
00086 class LAYOUT;
00087 class LEGEND;
00088 struct LEGENDPARMS;
00089 struct LINEPARMS;
00090 class MACROSCRIPT;
00091 class MACROSCRIPTLIST;
00092 class MSG;
00093 class OBJECT;
00094 struct POINTPARMS;
00095 struct POLYPARMS;
00096 class SCENE3D;
00097 class SCRIPTCONTEXT_DRAW;
00098 class SCRIPTCONTEXT_STYLE;
00099 struct SELECTPARMS;
00100 struct STYLEPARMS;
00101 class TERRAIN;
00102 class TEXTURE;
00103 class TOOL;
00104 class TOOLSCRIPT;
00105 class TOOLSCRIPTLIST;
00106 class VIEW;
00107 class VIEW_LEGACY;
00108 class VIEWABLE;
00109 class VIEWPOINT3D;
00110 class WIREFRAME;
00111 }
00112
00113 #endif // GENERATING_DOXYGEN_OUTPUT
00114
00115
00116 #define GRE_SERIAL_VERSION 3
00117
00118 namespace GRE {
00119
00121 enum LISTPOS {
00122 LISTPOS_First = 0,
00123 LISTPOS_After = 1,
00124 LISTPOS_Before = 2,
00125 LISTPOS_Last = 3
00126 };
00127
00129 enum DRAWCONDITION {
00130 DRAWCONDITION_Always,
00131 DRAWCONDITION_IfNeeded,
00132 DRAWCONDITION_IfAutoUpdate
00133 };
00134
00136 enum DRAWFLAGS {
00137 DRAWFLAG_None = 0x00000000,
00138 DRAWFLAG_ViewInView = 0x00000001,
00139 DRAWFLAG_OnlyHighlighted = 0x00000002,
00140 DRAWFLAG_AllElements = 0x00000004,
00141 DRAWFLAG_RequestRemote = 0x00000008,
00142 DRAWFLAG_Erase = 0x00000010,
00143 DRAWFLAG_ForceDraw = 0x00000020,
00144 DRAWFLAG_UpdateSearchTree = 0x00000040,
00145 DRAWFLAG_UpdateScreen = 0x00000080,
00146 DRAWFLAG_NoUpdateScreen = 0x00000100,
00147 DRAWFLAG_NoHighlighting = 0x00000200,
00148 DRAWFLAG_UpdateBuffers = 0x00000400,
00149 DRAWFLAG_SelectChanged = DRAWFLAG_UpdateBuffers,
00150 DRAWFLAG_NoSetStyle = 0x00000800,
00151 DRAWFLAG_AllNonLocViews = 0x00001000,
00152 DRAWFLAG_NoReportDone = 0x00002000,
00153 DRAWFLAG_NoMessage = 0x00004000,
00154 DRAWFLAG_Wireframe = 0x00008000,
00155 DRAWFLAG_NoResumeTool = 0x00010000,
00156 DRAWFLAG_NoNotifyDrawElement = 0x00020000,
00157 DRAWFLAG_NoBlankScreen = 0x00040000,
00158 DRAWFLAG_NoCheckColorLock = 0x00080000,
00159 DRAWFLAG_NoCallbacks = 0x00400000,
00160 DRAWFLAG_CheckDrawnSet = 0x00800000,
00161 DRAWFLAG_ReduceSpeckle3D = 0x01000000,
00162 DRAWFLAG_UseDataTipColor = 0x02000000,
00163 DRAWFLAG_UseHighlightColor = 0x04000000,
00164 DRAWFLAG_UseActiveColor = 0x08000000,
00165 DRAWFLAG_NoCheckVisible = 0x10000000,
00166 DRAWFLAG_LabelPlacementPass = 0x20000000,
00167 };
00168 #ifndef GENERATING_DOXYGEN_OUTPUT
00169 DEFINE_ENUM_OP_BITWISE(DRAWFLAGS)
00170 #endif
00171
00173 enum FINDFLAGS {
00174 FINDFLAG_ViewCoords = 0x0000,
00175 FINDFLAG_DisplayCoords = 0x0001,
00176 FINDFLAG_LayerCoords = 0x0002,
00177 FINDFLAG_UseClosest = 0x0004,
00178 FINDFLAG_NoSingleLayer = 0x0008,
00179 FINDFLAG_No3D = 0x0010,
00180 FINDFLAG_SearchDrawnSet = 0x0020,
00181 FINDFLAG_MapCoords = 0x0040
00182 };
00183 #ifndef GENERATING_DOXYGEN_OUTPUT
00184 DEFINE_ENUM_OP_BITWISE(FINDFLAGS)
00185 #endif
00186
00188 enum RENDERTARGET {
00189 RENDERTARGET_None = 0x0000,
00190 RENDERTARGET_LayerNormal = 0x0001,
00191 RENDERTARGET_LayerHighlight = 0x0002,
00192 RENDERTARGET_LayerLabel = 0x0004,
00193 RENDERTARGET_LayerAll = 0x0007,
00194 RENDERTARGET_Group = 0x0010,
00195 RENDERTARGET_GroupActiveElems = 0x0020,
00196 RENDERTARGET_GroupMatte = 0x0040,
00197 RENDERTARGET_GroupAll = 0x0070,
00198 RENDERTARGET_ViewMemory = 0x1000,
00199 RENDERTARGET_ViewScreen = 0x8000
00200 };
00201 #ifndef GENERATING_DOXYGEN_OUTPUT
00202 DEFINE_ENUM_OP_BITWISE(RENDERTARGET)
00203 #endif
00204
00206 enum HIGHLIGHTMODE {
00207 HIGHLIGHTMODE_NotSet = 0,
00208 HIGHLIGHTMODE_Replace = 1,
00209 HIGHLIGHTMODE_Add = 2,
00210 HIGHLIGHTMODE_Subtract = 3,
00211 HIGHLIGHTMODE_Toggle = 4,
00212 };
00213
00214
00215
00216 const UINT32 UICOLOR_TextNormal = 0x00000000;
00217 const UINT32 UICOLOR_TextDim = 0x00505050;
00218 const UINT32 UICOLOR_TextNotVisibleAtScale = 0x00208020;
00219 const UINT32 UICOLOR_TextNotInExtent = 0x00800000;
00220 const UINT32 UICOLOR_TextNotYetRendered = 0x000000A0;
00221 const UINT32 UICOLOR_TextEditable = 0x00800080;
00222 const UINT32 UICOLOR_TextExcludedFromGroupExtent = 0x000050A0;
00223 const UINT32 UICOLOR_TextHasHighlightedElements = 0x00FF00FF;
00224
00226 enum VISIBLEVIEW {
00227 VISIBLEVIEW_None = 0,
00228 VISIBLEVIEW_All = 0xFFFFFFFF,
00229 VISIBLEVIEW_AllNonLocator = 0xFFFFFFFE,
00230 VISIBLEVIEW_Locator = 0x00000001,
00231 VISIBLEVIEW_Hardcopy = 0x80000000,
00232 VISIBLEVIEW_AllNonHardcopy = 0x7FFFFFFF,
00233 };
00234 #ifndef GENERATING_DOXYGEN_OUTPUT
00235 DEFINE_ENUM_OP_BITWISE(VISIBLEVIEW)
00236 #endif
00237
00238 #define MDISPVISIBLE_AllViews GRE::VISIBLEVIEW_All
00239
00240
00241 }
00242
00243 #endif // INC_GRE_BASE_H