Alphabetical Class Index  Class Hierarchy   File Members   Compound Members   File List  

HOpObjectAnnotate.h
1 //
2 // Copyright (c) 2000 by Tech Soft 3D, LLC.
3 // The information contained herein is confidential and proprietary to
4 // Tech Soft 3D, LLC., and considered a trade secret as defined under
5 // civil and criminal statutes. Tech Soft 3D shall pursue its civil
6 // and criminal remedies in the event of unauthorized use or misappropriation
7 // of its trade secrets. Use of this information by anyone other than
8 // authorized employees of Tech Soft 3D, LLC. is granted only under a
9 // written non-disclosure agreement, expressly prescribing the scope and
10 // manner of such use.
11 //
12 // $Id: d86910a082928717d628387a3a43d4071ccada50 $
13 //
14 
15 // HOpObjectAnnotate.h : interface of the HOpObjectAnnotate class
16 //
17 // Draws a polyline in the view plane based on pointer input
18 // Polyline points are stored in protected member variables and ready after
19 // OnLButtonDblClk method has been called.
20 // Derived Classes should call this::OnLButtonDblClk in their overloaded implementation.
21 // Polyline points are in window space.
22 
23 
24 #ifndef _HOPOBJECTANNOTATE_H
25 #define _HOPOBJECTANNOTATE_H
26 
27 #ifdef H_PACK_8
28 #pragma pack(push)
29 #pragma pack(8)
30 #endif
31 
32 #include "HTools.h"
33 #include "HBaseOperator.h"
34 
36 
49 class MVO_API HOpObjectAnnotate : public HBaseOperator
50 {
51 public:
58  HOpObjectAnnotate(HBaseView* view, int DoRepeat=0, int DoCapture=1);
59  virtual ~HOpObjectAnnotate();
60 
64  virtual const char * GetName();
65 
66 
72  virtual HBaseOperator * Clone();
73 
83  static void AnnotateObject(HBaseView *pView,const char *segment, char *AnnotationText, HPoint lineStart,
84  HPoint lineEnd, bool emit_message);
91  static void AnnotateObjectFromMessage(HBaseView *pView, const char *in_data, unsigned int data_length);
92 
100  virtual int OnLButtonDown(HEventInfo &hevent);
101 
107  virtual int OnNoButtonDownAndMove(HEventInfo &hevent);
108 
109 
116  virtual int OnKeyDown(HEventInfo &hevent);
117 
118 protected:
119 
121  void finalize_text();
122 
123 private:
124  char *m_pString;
125  HPoint m_ptLast;
126  char m_sSegment[MVO_BUFFER_SIZE];
127  bool m_bObject;
128  static int m_iPathKeysCount;
129  static HC_KEY *m_pSelectionPath;
130 };
131 
132 #ifdef H_PACK_8
133 #pragma pack(pop)
134 #endif
135 
136 #endif
137 
138 
139 
140 
141 
142 
143 
144 
145 
virtual const char * GetName()
#define HC_KEY
virtual int OnNoButtonDownAndMove(HEventInfo &hevent)
virtual HBaseOperator * Clone()
The HBaseOperator class serves as a base for classes which handle user input and operate on the scene...
Definition: HBaseOperator.h:65
The HPoint class is the data type of a three-dimensional point.
Definition: HGlobals.h:126
The HBaseView class defines and manages a view of model information.
Definition: HBaseView.h:337
The HEventInfo class stores and manages event information.
Definition: HEventInfo.h:214
virtual int OnKeyDown(HEventInfo &hevent)
virtual int OnLButtonDown(HEventInfo &hevent)
The HOpObjectAnnotate class provides support for attaching text to an object.
Definition: HOpObjectAnnotate.h:49