Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HOpObjectTranslate.h

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: ca33efba434da31b6dd29e3d786753598a26e352 $
00013 //
00014 
00015 // HOpObjectTranslate.h : interface of the HOpObjectTranslate class
00016 // translate items in the selection list of the associated view 
00017 //
00018 // currently supports translation of item if it is a segment
00019 
00020 #ifndef _HOPOBJECTTRANSLATE_H
00021 #define _HOPOBJECTTRANSLATE_H
00022 
00023 #ifdef H_PACK_8
00024 #pragma pack(push)
00025 #pragma pack(8)
00026 #endif
00027 
00028 #include "HTools.h"
00029 #include "HBaseOperator.h"
00030 
00031 class HKeyList;
00032 
00034 
00046 class MVO_API HOpObjectTranslate : public HBaseOperator
00047 {
00048 
00049 public:
00056     HOpObjectTranslate (HBaseView* view, int DoRepeat=0, int DoCapture=1);
00057     virtual ~HOpObjectTranslate();
00058 
00062     virtual const char * GetName();  
00063 
00069     virtual int OnLButtonDown (HEventInfo &hevent);
00070 
00077     virtual int OnLButtonDownAndMove(HEventInfo &hevent);
00078 
00084     virtual int OnLButtonUp (HEventInfo &hevent);
00085 
00091     virtual int OnLButtonDblClk (HEventInfo &hevent);
00092 
00093 
00094     HPoint m_ptRecent;      
00095     HPoint m_ptRecentVP;    
00101     virtual HBaseOperator * Clone(); 
00102 
00106     virtual void UpdateKeyList(void * data);
00107 
00108 protected:
00111     void Init();
00112 
00115     void Cleanup();
00116 
00129     int GetMatrix(HEventInfo &hevent, int key_count, HC_KEY const *full_path_keys, float *matrix_out);
00130 
00136     int UpdateMousePos(HEventInfo &hevent);
00137 
00138     bool    m_bTemporarySelection;  
00139     bool m_bInitialMatrix;          
00140     HKeyList * m_KeyList;               
00141     HPoint m_ptLast;
00142 private:
00143     unsigned long m_cookie[2];      
00144 };
00145 
00146 
00147 #ifdef H_PACK_8
00148 #pragma pack(pop)
00149 #endif
00150 
00151 #endif
00152 
00153 
00154 
00155