Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HOpObjectTranslate.h
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 // HOpObjectTranslate.h : interface of the HOpObjectTranslate class
00011 // translate items in the selection list of the associated view 
00012 //
00013 // currently supports translation of item if it is a segment
00014 
00015 #ifndef _HOPOBJECTTRANSLATE_H
00016 #define _HOPOBJECTTRANSLATE_H
00017 
00018 #ifdef H_PACK_8
00019 #pragma pack(push)
00020 #pragma pack(8)
00021 #endif
00022 
00023 #include "HTools.h"
00024 #include "HBaseOperator.h"
00025 
00026 class HKeyList;
00027 
00029 
00041 class MVO_API HOpObjectTranslate : public HBaseOperator
00042 {
00043 
00044 public:
00051     HOpObjectTranslate (HBaseView* view, int DoRepeat=0, int DoCapture=1);
00052     virtual ~HOpObjectTranslate();
00053 
00057     virtual const char * GetName();  
00058 
00064     virtual int OnLButtonDown (HEventInfo &hevent);
00065 
00072     virtual int OnLButtonDownAndMove(HEventInfo &hevent);
00073 
00079     virtual int OnLButtonUp (HEventInfo &hevent);
00080 
00086     virtual int OnLButtonDblClk (HEventInfo &hevent);
00087 
00088 
00089     HPoint m_ptRecent;      
00090     HPoint m_ptRecentVP;    
00096     virtual HBaseOperator * Clone(); 
00097 
00101     virtual void UpdateKeyList(void * data);
00102 
00103 protected:
00106     void Init();
00107 
00110     void Cleanup();
00111 
00124     int GetMatrix(HEventInfo &hevent, int key_count, HC_KEY const *full_path_keys, float matrix_out[]);
00125 
00131     int UpdateMousePos(HEventInfo &hevent);
00132 
00133     bool m_bTemporarySelection;     
00134     bool m_bInitialMatrix;          
00135     HKeyList * m_KeyList;           
00136     HPoint m_ptLast;
00137 private:
00138     unsigned long m_cookie[2];      
00139 };
00140 
00141 
00142 #ifdef H_PACK_8
00143 #pragma pack(pop)
00144 #endif
00145 
00146 #endif
00147 
00148 
00149 
00150