00001
00068 #ifndef INC_GRE_MSG_H
00069 #define INC_GRE_MSG_H
00070
00071 #ifndef INC_GRE_BASE_H
00072 #include <gre/base.h>
00073 #endif
00074
00075 #ifndef INC_MI32_ELEMTYPE_H
00076 #include <mi32/elemtype.h>
00077 #endif
00078
00079 namespace GRE {
00080
00081
00083 class MSG {
00084 public:
00085
00086 enum ACTION {
00087 ACTION_SeqNone = 0x0000,
00088 ACTION_SeqBegin = 0x1000,
00089 ACTION_SeqEnd = 0x2000,
00090 ACTION_SeqContinue = 0x4000,
00091 ACTION_SeqCancel = 0x8000,
00092 ACTION_SeqMask = 0xF000,
00093
00094 ACTION_None = (0),
00095 ACTION_Create = (1|ACTION_SeqNone),
00096 ACTION_Destroy = (2|ACTION_SeqNone),
00097 ACTION_Selected = (3|ACTION_SeqNone),
00098 ACTION_Deselected = (4|ACTION_SeqNone),
00099 ACTION_Change = (5|ACTION_SeqNone),
00100 ACTION_ChangeBegin = (5|ACTION_SeqBegin),
00101 ACTION_ChangeEnd = (5|ACTION_SeqEnd),
00102 ACTION_ChangeCancel = (5|ACTION_SeqCancel),
00103 ACTION_Expose = (6|ACTION_SeqNone),
00104 ACTION_Draw = (7|ACTION_SeqNone),
00105 ACTION_DrawBegin = (7|ACTION_SeqBegin),
00106 ACTION_DrawEnd = (7|ACTION_SeqEnd),
00107 ACTION_DrawCancel = (7|ACTION_SeqCancel),
00108 ACTION_ChangeOrder = (8|ACTION_SeqNone),
00109 ACTION_ChangeOrderBegin = (8|ACTION_SeqBegin),
00110 ACTION_ChangeOrderEnd = (8|ACTION_SeqEnd),
00111 ACTION_CreateChildren = (9|ACTION_SeqNone),
00112 ACTION_CreateChildrenBegin = (9|ACTION_SeqBegin),
00113 ACTION_CreateChildrenEnd = (9|ACTION_SeqEnd),
00114 ACTION_CreateChildrenCancel = (9|ACTION_SeqCancel),
00115 ACTION_DestroyChildren = (10|ACTION_SeqNone),
00116 ACTION_DestroyChildrenBegin = (10|ACTION_SeqBegin),
00117 ACTION_DestroyChildrenEnd = (10|ACTION_SeqEnd),
00118 ACTION_ChangeObject = (11|ACTION_SeqNone),
00119 ACTION_ChangeName = (12|ACTION_SeqNone),
00120 ACTION_Resized = (13|ACTION_SeqNone),
00121 ACTION_ElementSelect = (14|ACTION_SeqNone),
00122 ACTION_ElementSelectBegin = (14|ACTION_SeqBegin),
00123 ACTION_ElementSelectEnd = (14|ACTION_SeqEnd),
00124 ACTION_ChangeActiveElem = (15|ACTION_SeqNone),
00125 ACTION_ChangeVisible = (17|ACTION_SeqNone),
00126 ACTION_ChangeVisibleBegin = (17|ACTION_SeqBegin),
00127 ACTION_ChangeVisibleEnd = (17|ACTION_SeqEnd),
00128 ACTION_CursorEnter = (18|ACTION_SeqNone),
00129 ACTION_CursorLeave = (19|ACTION_SeqNone),
00130 ACTION_CreateView = (20|ACTION_SeqNone),
00131 ACTION_Load = (21|ACTION_SeqNone),
00132 ACTION_LoadBegin = (21|ACTION_SeqBegin),
00133 ACTION_LoadEnd = (21|ACTION_SeqEnd),
00134 ACTION_Restore = (22|ACTION_SeqNone),
00135 ACTION_RestoreBegin = (22|ACTION_SeqBegin),
00136 ACTION_RestoreContinue = (22|ACTION_SeqContinue),
00137 ACTION_RestoreEnd = (22|ACTION_SeqEnd),
00138 ACTION_CloseRequest = (23|ACTION_SeqNone),
00139 ACTION_DataTipShown = (24|ACTION_SeqNone),
00140 ACTION_DataTipHidden = (25|ACTION_SeqNone),
00141 ACTION_DestroyView = (26|ACTION_SeqNone),
00142 ACTION_DeactivateTool = (27|ACTION_SeqNone),
00143 ACTION_ActivateTool = (28|ACTION_SeqNone),
00144 ACTION_ElementSelectAll = (29|ACTION_SeqNone),
00145 ACTION_ElementSelectAllBegin = (29|ACTION_SeqBegin),
00146 ACTION_ElementSelectAllEnd = (29|ACTION_SeqEnd),
00147 ACTION_StyleObjEdited = (30|ACTION_SeqNone),
00148 ACTION_OverlayUpdate = (31|ACTION_SeqNone),
00149 ACTION_Edited = (32|ACTION_SeqNone),
00150 ACTION_ExtractedFrom = (33|ACTION_SeqNone),
00151 ACTION_SetComponentSelectable = (34|ACTION_SeqNone),
00152 ACTION_SetShowInternalTables = (35|ACTION_SeqNone),
00153 ACTION_SetShowScaleRanges = (36|ACTION_SeqNone),
00154 ACTION_DrawMatte = (37|ACTION_SeqNone),
00155 ACTION_DrawMatteBegin = (37|ACTION_SeqBegin),
00156 ACTION_DrawMatteEnd = (37|ACTION_SeqEnd),
00157 ACTION_ChangeLegend = (38|ACTION_SeqNone),
00158 ACTION_ChangeLegendBegin = (38|ACTION_SeqBegin),
00159 ACTION_ChangeLegendEnd = (38|ACTION_SeqEnd),
00160 ACTION_ChangeDispParm = (39|ACTION_SeqNone),
00161 ACTION_UserRefresh = (40|ACTION_SeqNone),
00162 ACTION_Reclassify = (41|ACTION_SeqNone),
00163 ACTION_ChangeViewPoint3d = (42|ACTION_SeqNone),
00164 ACTION_ChangeViewPoint3dDragging = (42|ACTION_SeqContinue),
00165 ACTION_SetDrawStereo = (43|ACTION_SeqNone),
00166 ACTION_MAXTYPE = 43
00167 };
00168
00169 MSG (
00170 ACTION action,
00171 GRE::OBJECT *object,
00172 GRE::VIEW *view = 0,
00173 ELEMTYPE elemtype = ELEMTYPE_Empty
00174 ) :
00175 m_action(action),
00176 m_object(object),
00177 m_view(view),
00178 m_elemtype(elemtype)
00179 { }
00180
00181 MSG (
00182 ACTION action,
00183 GRE::OBJECT *object,
00184 ELEMTYPE elemtype
00185 ) :
00186 m_action(action),
00187 m_object(object),
00188 m_view(0),
00189 m_elemtype(elemtype)
00190 { }
00191
00194 ACTION GetAction (
00195 ) const { return (m_action); }
00196
00199 ELEMTYPE GetElemType (
00200 ) const { return (m_elemtype); }
00201
00204 GRE::OBJECT* GetObject (
00205 ) const { return (m_object); }
00206
00209 GRE::VIEW* GetView (
00210 ) const { return (m_view); }
00211
00212 private:
00213 #ifndef GENERATING_DOXYGEN_OUTPUT
00214
00215 ACTION m_action;
00216 GRE::OBJECT *m_object;
00217 GRE::VIEW *m_view;
00218 ELEMTYPE m_elemtype;
00219
00220 #endif // GENERATING_DOXYGEN_OUTPUT
00221 };
00222
00223
00224
00225 }
00226
00227 #endif // INC_GRE_MSG_H