00001 // 00002 // Copyright (c) 2000 by Tech Soft 3D, LLC. 00003 // The information contained herein is confidential and proprietary to 00004 // Tech Soft 3D, LLC., and considered a trade secret as defined under 00005 // civil and criminal statutes. Tech Soft 3D shall pursue its civil 00006 // and criminal remedies in the event of unauthorized use or misappropriation 00007 // of its trade secrets. Use of this information by anyone other than 00008 // authorized employees of Tech Soft 3D, LLC. is granted only under a 00009 // written non-disclosure agreement, expressly prescribing the scope and 00010 // manner of such use. 00011 // 00012 00013 // HOpMarkupAnnotate.h : interface of the HOpMarkupAnnotate class 00014 // inserts annotation into the current scene 00015 00016 #ifndef _HOpMarkupAnnotate_H 00017 #define _HOpMarkupAnnotate_H 00018 00019 #ifdef H_PACK_8 00020 #pragma pack(push) 00021 #pragma pack(8) 00022 #endif 00023 00024 #include "HTools.h" 00025 #include "HBaseOperator.h" 00026 #include "HUtilityAnnotation.h" 00027 00029 00039 class MVO_API HOpMarkupAnnotate : public HBaseOperator 00040 { 00041 public: 00050 HOpMarkupAnnotate (HBaseView* view, bool bAddToLayer = false, int DoRepeat=0, int DoCapture=1, bool create_new_notes = true); 00051 00053 virtual ~HOpMarkupAnnotate(); 00054 00058 virtual const char * GetName(); 00059 00065 virtual int OnLButtonDown (HEventInfo &hevent); 00066 00073 virtual int OnLButtonDownAndMove(HEventInfo &hevent); 00074 00080 virtual int OnRButtonDown (HEventInfo &hevent); 00081 00087 virtual int OnLButtonUp (HEventInfo &hevent); 00088 00095 virtual int OnKeyDown(HEventInfo &hevent); 00096 00102 virtual HBaseOperator * Clone(); 00103 00104 protected: 00105 00107 int m_iBackgroundType; 00109 int GetBackgroundType(void) const { 00110 return m_iBackgroundType; 00111 } 00113 void SetBackgroundType(int const type){ 00114 m_iBackgroundType = type; 00115 } 00116 00118 HC_KEY m_pNoteKey; 00120 HC_KEY GetNoteKey(void) const { 00121 return m_pNoteKey; 00122 } 00124 void SetNoteKey(HC_KEY const key) { 00125 m_pNoteKey = key; 00126 } 00127 00129 HUtilityAnnotation m_Annotation; 00131 HUtilityAnnotation & GetAnnotation(void) { 00132 return m_Annotation; 00133 } 00135 void SetAnnotation(HUtilityAnnotation const & rNote){ 00136 m_Annotation = rNote; 00137 } 00138 00140 bool m_bAddToLayer; 00142 bool GetAddToLayer(void) const { 00143 return m_bAddToLayer; 00144 } 00146 void SetAddToLayer(bool value){ 00147 m_bAddToLayer = value; 00148 } 00149 00151 bool m_bTouchedText; 00153 bool GetTouchedText(void) const { 00154 return m_bTouchedText; 00155 } 00157 void SetTouchedText(bool value){ 00158 m_bTouchedText = value; 00159 } 00160 00162 bool m_bHideOverlappedText; 00164 bool GetHideOverlappedText(void) const { 00165 return m_bHideOverlappedText; 00166 } 00168 void SetHideOverlappedText(bool onoff){ 00169 m_bHideOverlappedText = onoff; 00170 } 00171 00173 bool m_bCreateNewNotes; 00175 bool GetCreateNewNotes(void) const { 00176 return m_bCreateNewNotes; 00177 }; 00179 void SetCreateNewNotes(bool yesno) { 00180 m_bCreateNewNotes = yesno; 00181 }; 00182 00184 void StartOp(void); 00185 00190 bool EndOp(void); 00191 00193 void TransmitMarkupSegment(); 00194 }; 00195 00196 00197 #ifdef H_PACK_8 00198 #pragma pack(pop) 00199 #endif 00200 00201 #endif 00202 00203 00204 00205