Introduction

Getting Started

Programming Guides

API Reference

Additional Resources

HOpObjectAnnotate.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 // HOpObjectAnnotate.h : interface of the HOpObjectAnnotate class
11 //
12 // Draws a polyline in the view plane based on pointer input
13 // Polyline points are stored in protected member variables and ready after
14 // OnLButtonDblClk method has been called.
15 // Derived Classes should call this::OnLButtonDblClk in their overloaded implementation.
16 // Polyline points are in window space.
17 
18 
19 #ifndef _HOPOBJECTANNOTATE_H
20 #define _HOPOBJECTANNOTATE_H
21 
22 #ifdef H_PACK_8
23 #pragma pack(push)
24 #pragma pack(8)
25 #endif
26 
27 #include "HTools.h"
28 #include "HBaseOperator.h"
29 
31 
44 class MVO_API HOpObjectAnnotate : public HBaseOperator
45 {
46 public:
53  HOpObjectAnnotate(HBaseView* view, int DoRepeat=0, int DoCapture=1);
54  virtual ~HOpObjectAnnotate();
55 
59  virtual const char * GetName();
60 
61 
67  virtual HBaseOperator * Clone();
68 
78  static void AnnotateObject(HBaseView *pView,const char *segment, char *AnnotationText, HPoint lineStart,
79  HPoint lineEnd, bool emit_message);
86  static void AnnotateObjectFromMessage(HBaseView *pView, const char *in_data, unsigned int data_length);
87 
95  virtual int OnLButtonDown(HEventInfo &hevent);
96 
102  virtual int OnNoButtonDownAndMove(HEventInfo &hevent);
103 
104 
111  virtual int OnKeyDown(HEventInfo &hevent);
112 
113 protected:
114 
116  void finalize_text();
117 
118 private:
119  char *m_pString;
120  HPoint m_ptLast;
121  char m_sSegment[MVO_BUFFER_SIZE];
122  bool m_bObject;
123  static int m_iPathKeysCount;
124  static HC_KEY *m_pSelectionPath;
125 };
126 
127 #ifdef H_PACK_8
128 #pragma pack(pop)
129 #endif
130 
131 #endif
132 
133 
134 
135 
136 
137 
138 
139 
140 
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: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
The HEventInfo class stores and manages event information.
Definition: HEventInfo.h:207
virtual int OnKeyDown(HEventInfo &hevent)
virtual int OnLButtonDown(HEventInfo &hevent)
The HOpObjectAnnotate class provides support for attaching text to an object.
Definition: HOpObjectAnnotate.h:44