00001 // Copyright (c) 1998-2014 by Tech Soft 3D, Inc. 00002 // 00003 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc., 00004 // and considered a trade secret as defined under civil and criminal statutes. 00005 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of 00006 // unauthorized use or misappropriation of its trade secrets. Use of this information 00007 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under 00008 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use. 00009 00010 // HOpMarkupAnnotate.h : interface of the HOpMarkupAnnotate class 00011 // inserts annotation into the current scene 00012 00013 #ifndef _HOpMarkupAnnotate_H 00014 #define _HOpMarkupAnnotate_H 00015 00016 #ifdef H_PACK_8 00017 #pragma pack(push) 00018 #pragma pack(8) 00019 #endif 00020 00021 #include "HTools.h" 00022 #include "HBaseOperator.h" 00023 #include "HUtilityAnnotation.h" 00024 00026 00036 class MVO_API HOpMarkupAnnotate : public HBaseOperator 00037 { 00038 public: 00047 HOpMarkupAnnotate (HBaseView* view, bool bAddToLayer = false, int DoRepeat=0, int DoCapture=1, bool create_new_notes = true); 00048 00050 virtual ~HOpMarkupAnnotate(); 00051 00055 virtual const char * GetName(); 00056 00062 virtual int OnLButtonDown (HEventInfo &hevent); 00063 00070 virtual int OnLButtonDownAndMove(HEventInfo &hevent); 00071 00077 virtual int OnRButtonDown (HEventInfo &hevent); 00078 00084 virtual int OnLButtonUp (HEventInfo &hevent); 00085 00092 virtual int OnKeyDown(HEventInfo &hevent); 00093 00099 virtual HBaseOperator * Clone(); 00100 00101 protected: 00102 00104 int m_iBackgroundType; 00106 int GetBackgroundType() const { 00107 return m_iBackgroundType; 00108 } 00110 void SetBackgroundType(int const type){ 00111 m_iBackgroundType = type; 00112 } 00113 00115 HC_KEY m_pNoteKey; 00117 HC_KEY GetNoteKey() const { 00118 return m_pNoteKey; 00119 } 00121 void SetNoteKey(HC_KEY const key) { 00122 m_pNoteKey = key; 00123 } 00124 00126 HUtilityAnnotation m_Annotation; 00128 HUtilityAnnotation & GetAnnotation() { 00129 return m_Annotation; 00130 } 00132 void SetAnnotation(HUtilityAnnotation const & rNote){ 00133 m_Annotation = rNote; 00134 } 00135 00137 bool m_bAddToLayer; 00139 bool GetAddToLayer() const { 00140 return m_bAddToLayer; 00141 } 00143 void SetAddToLayer(bool value){ 00144 m_bAddToLayer = value; 00145 } 00146 00148 bool m_bTouchedText; 00150 bool GetTouchedText() const { 00151 return m_bTouchedText; 00152 } 00154 void SetTouchedText(bool value){ 00155 m_bTouchedText = value; 00156 } 00157 00159 bool m_bHideOverlappedText; 00161 bool GetHideOverlappedText() const { 00162 return m_bHideOverlappedText; 00163 } 00165 void SetHideOverlappedText(bool onoff){ 00166 m_bHideOverlappedText = onoff; 00167 } 00168 00170 bool m_bCreateNewNotes; 00172 bool GetCreateNewNotes() const { 00173 return m_bCreateNewNotes; 00174 }; 00176 void SetCreateNewNotes(bool yesno) { 00177 m_bCreateNewNotes = yesno; 00178 }; 00179 00181 void StartOp(); 00182 00187 bool EndOp(); 00188 00190 void TransmitMarkupSegment(); 00191 }; 00192 00193 00194 #ifdef H_PACK_8 00195 #pragma pack(pop) 00196 #endif 00197 00198 #endif 00199 00200 00201 00202