HOpObjectTranslate.h
1 // Copyright (c) Tech Soft 3D
2 //
3 // The information contained herein is confidential and proprietary to Tech Soft 3D, Inc.,
4 // and considered a trade secret as defined under civil and criminal statutes.
5 // Tech Soft 3D, Inc. shall pursue its civil and criminal remedies in the event of
6 // unauthorized use or misappropriation of its trade secrets. Use of this information
7 // by anyone other than authorized employees of Tech Soft 3D, Inc. is granted only under
8 // a written non-disclosure agreement, expressly prescribing the scope and manner of such use.
9 
10 // HOpObjectTranslate.h : interface of the HOpObjectTranslate class
11 // translate items in the selection list of the associated view
12 //
13 // currently supports translation of item if it is a segment
14 
15 #ifndef _HOPOBJECTTRANSLATE_H
16 #define _HOPOBJECTTRANSLATE_H
17 
18 #ifdef H_PACK_8
19 #pragma pack(push)
20 #pragma pack(8)
21 #endif
22 
23 #include "HTools.h"
24 #include "HBaseOperator.h"
25 
26 class HKeyList;
27 
29 
41 class MVO_API HOpObjectTranslate : public HBaseOperator
42 {
43 
44 public:
51  HOpObjectTranslate (HBaseView* view, int DoRepeat=0, int DoCapture=1);
52  virtual ~HOpObjectTranslate();
53 
57  virtual const char * GetName();
58 
64  virtual int OnLButtonDown (HEventInfo &hevent);
65 
72  virtual int OnLButtonDownAndMove(HEventInfo &hevent);
73 
79  virtual int OnLButtonUp (HEventInfo &hevent);
80 
86  virtual int OnLButtonDblClk (HEventInfo &hevent);
87 
88 
96  virtual HBaseOperator * Clone();
97 
101  virtual void UpdateKeyList(void * data);
102 
103 protected:
106  void Init();
107 
110  void Cleanup();
111 
124  int GetMatrix(HEventInfo &hevent, int key_count, HC_KEY const *full_path_keys, float matrix_out[]);
125 
131  int UpdateMousePos(HEventInfo &hevent);
132 
135  HKeyList * m_KeyList;
136  HPoint m_ptLast;
137 private:
138  unsigned long m_cookie[2];
139 };
140 
141 
142 #ifdef H_PACK_8
143 #pragma pack(pop)
144 #endif
145 
146 #endif
147 
148 
149 
150 
virtual int OnLButtonDownAndMove(HEventInfo &hevent)
virtual const char * GetName()
HPoint m_ptRecentVP
Definition: HOpObjectTranslate.h:90
virtual int OnLButtonUp(HEventInfo &hevent)
bool m_bTemporarySelection
Definition: HOpObjectTranslate.h:133
HPoint m_ptRecent
Definition: HOpObjectTranslate.h:89
HKeyList * m_KeyList
Definition: HOpObjectTranslate.h:135
virtual HBaseOperator * Clone()
bool m_bInitialMatrix
Definition: HOpObjectTranslate.h:134
The HBaseOperator class serves as a base for classes which handle user input and operate on the scene...
Definition: HBaseOperator.h:60
The HPoint class is the data type of a three-dimensional point.
Definition: HGlobals.h:121
The HBaseView class defines and manages a view of model information.
Definition: HBaseView.h:332
virtual int OnLButtonDblClk(HEventInfo &hevent)
The HEventInfo class stores and manages event information.
Definition: HEventInfo.h:207
virtual int OnLButtonDown(HEventInfo &hevent)
The HOpObjectTranslate class translates a selected object.
Definition: HOpObjectTranslate.h:41