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 // $Id$ 00013 // 00014 // HOpMarkupFreehand3D.h : interface of the HOpMarkupFreehand3D class 00015 // 00016 // Draws a polyline in the view plane based on pointer input 00017 // Polyline points are stored in protected member variables and ready after 00018 // OnLButtonDblClk method has been called. 00019 // Derived Classes should call this::OnLButtonDblClk in their overloaded implementation. 00020 // Polyline points are in window space. 00021 00022 00023 #ifndef _HOpMarkupFreehand3D_H 00024 #define _HOpMarkupFreehand3D_H 00025 00026 #ifdef H_PACK_8 00027 #pragma pack(push) 00028 #pragma pack(8) 00029 #endif 00030 00031 #include "HTools.h" 00032 #include "HBaseOperator.h" 00033 00035 00045 class MVO_API HOpMarkupFreehand3D : public HBaseOperator 00046 { 00047 public: 00055 HOpMarkupFreehand3D(HBaseView* view, int DoRepeat=0, int DoCapture=1); 00056 00065 static void CreateMarkupFreehand(HBaseView *pView, const char *segment, unsigned int PolyLineLength, HPoint *pPolyline, bool emit_message); 00066 00067 HBaseOperator * Clone(); 00071 virtual const char * GetName(); 00072 00073 HC_KEY m_lPolyline; 00074 00075 00084 virtual int OnLButtonDownAndMove(HEventInfo &hevent); 00085 00093 virtual int OnLButtonDown(HEventInfo &hevent); 00094 00101 virtual int OnLButtonUp(HEventInfo &hevent); 00102 00103 protected: 00104 00107 bool IsModelGeometry(); 00108 00109 HPoint m_ptLast; 00110 }; 00111 00112 00113 #ifdef H_PACK_8 00114 #pragma pack(pop) 00115 #endif 00116 00117 #endif 00118 00119 00120