CFx SDK Documentation  2023 SP0
FxInputContextReactor.h
Go to the documentation of this file.
1 //
2 // (C) Copyright 2005-2022 by Graebert GmbH.
3 //
4 // Permission to use, copy, modify, and distribute this software in
5 // object code form for any purpose and without fee is hereby granted,
6 // provided that the above copyright notice appears in all copies and
7 // that both that copyright notice and the limited warranty and
8 // restricted rights notice below appear in all supporting
9 // documentation.
10 //
11 // GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
12 // GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
13 // MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
14 // DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
15 // UNINTERRUPTED OR ERROR FREE.
16 
17 #pragma once
18 
19 #include "FxPragmaPush.h"
20 
21 #include "DDKERNEL.h"
22 
23 #include <RxObject.h>
24 #include <IdArrays.h>
25 #include <DbSubentId.h>
26 
27 #include <Ge/GePoint3d.h>
28 
29 #include "FxString.h"
30 
31 class CFxUserIO;
33 
40 {
41  friend class CFxInputPointManagerImpl;
42 
43 public:
45  ~CFxInputContextReactor(void) override;
46 
48 
53  virtual void BeginQuiescentState(){};
54 
59  virtual void EndQuiescentState(){};
60 
67  virtual void BeginGetPoint( CFxUserIO* ) { }
68 
77  virtual void EndGetPoint( int returnStatus, CFxUserIO*, const OdGePoint3d& pointOut ){ }
78 
85  virtual void BeginGetAngle( CFxUserIO* ){ }
86 
95  virtual void EndGetAngle( int returnStatus, CFxUserIO*, double dAngle ){ }
96 
103  virtual void BeginGetDistance( CFxUserIO* ){ }
104 
113  virtual void EndGetDistance( int returnStatus, CFxUserIO*, double dDistance ){ }
114 
121  virtual void BeginGetOrientation( CFxUserIO* ){ }
122 
131  virtual void EndGetOrientation( int returnStatus, CFxUserIO*, double dAngle ){ }
132 
139  virtual void BeginGetCorner( CFxUserIO* ){ }
140 
149  virtual void EndGetCorner( int returnStatus, CFxUserIO*, const OdGePoint3d& secondPoint ){ }
150 
151  // *ScaleFactor is the same as *Distance, except a negative
152  // value can be returned. There is no exported ADS/LISP/ActiveX equivalent.
153  //
154  virtual void BeginGetScaleFactor( CFxUserIO* ){ }
155 
164  virtual void EndGetScaleFactor( int returnStatus, CFxUserIO*, double dScale ){ }
165 
172  virtual void BeginGetString( CFxUserIO* ){ }
173 
182  virtual void EndGetString ( int returnStatus, CFxUserIO*, const CFxString& outString ){ }
183 
190  virtual void BeginGetKeyword( CFxUserIO* ){ }
191 
200  virtual void EndGetKeyword ( int returnStatus, CFxUserIO*, const CFxString& outKeyword ){ }
201 
209  virtual void BeginGetInteger( const int* pDefault, CFxUserIO* ){ }
210 
219  virtual void EndGetInteger( int returnStatus, CFxUserIO*, int retValue ){ }
220 
227  virtual void BeginGetFileName( CFxUserIO* ){ }
228 
237  virtual void EndGetFileName( int returnStatus, CFxUserIO*, const CFxString& retValue ){ }
238 
245  virtual void BeginGetFileNames( CFxUserIO* ){ }
246 
255  virtual void EndGetFileNames( int returnStatus, CFxUserIO*, const CFxStringArray& retValue ){ }
263  virtual void BeginGetColor( const int* pDefault, CFxUserIO* ){ }
264 
273  virtual void EndGetColor( int returnStatus, CFxUserIO*, int retValue ){ }
274 
282  virtual void BeginGetReal( const double* pDefault, CFxUserIO* ){ }
283 
292  virtual void EndGetReal( int returnStatus, CFxUserIO*, double retValue ){ }
293 
300  virtual void BeginEntsel( CFxUserIO* ){ }
301 
310  virtual void EndEntsel( int returnStatus, CFxUserIO*, const OdDbObjectId& entPicked ){ }
311 
318  virtual void BeginNentsel( CFxUserIO* ){ }
319 
329  virtual void EndNentsel( int returnStatus, CFxUserIO*, const OdDbFullSubentPath& entPicked, const OdGePoint3d& pickPoint ){ }
330 
337  virtual void BeginSSGet( CFxUserIO* ){ }
338 
347  virtual void EndSSGet( int iResult, CFxUserIO*, const OdDbObjectIdArray &ss ){ }
348 
355  virtual void BeginDragSequence( CFxUserIO* ){ }
356 
366  virtual void EndDragSequence( int iResult, OdGePoint3d& pickPoint, OdGeVector3d& vector, CFxUserIO* ){ }
367 
374  {
375  return m_pInputContextManager;
376  }
377 
378 private:
379  CFxInputPointManager* m_pInputContextManager;
380 };
381 
383 {
384 public:
391  virtual void BeginModifier( CFxUserIO* )
392  {
393  };
394 
402  virtual void EndModifier( CFxUserIO*, const CFxString& modifier )
403  {
404  };
405 };
406 
407 #include "FxPragmaPop.h"
#define DDKERNEL_API
Definition: DDKERNEL.h:32
std::vector< CFxString > CFxStringArray
Definition: FxString.h:34
virtual void EndModifier(CFxUserIO *, const CFxString &modifier)
virtual void BeginModifier(CFxUserIO *)
virtual void EndGetReal(int returnStatus, CFxUserIO *, double retValue)
virtual void BeginGetColor(const int *pDefault, CFxUserIO *)
virtual void EndEntsel(int returnStatus, CFxUserIO *, const OdDbObjectId &entPicked)
virtual void BeginGetPoint(CFxUserIO *)
virtual void BeginEntsel(CFxUserIO *)
virtual void BeginGetAngle(CFxUserIO *)
virtual void BeginGetFileNames(CFxUserIO *)
virtual void EndGetOrientation(int returnStatus, CFxUserIO *, double dAngle)
virtual void EndGetDistance(int returnStatus, CFxUserIO *, double dDistance)
virtual void EndSSGet(int iResult, CFxUserIO *, const OdDbObjectIdArray &ss)
virtual void EndDragSequence(int iResult, OdGePoint3d &pickPoint, OdGeVector3d &vector, CFxUserIO *)
virtual void EndGetScaleFactor(int returnStatus, CFxUserIO *, double dScale)
virtual void EndGetPoint(int returnStatus, CFxUserIO *, const OdGePoint3d &pointOut)
virtual void BeginGetDistance(CFxUserIO *)
virtual void BeginGetOrientation(CFxUserIO *)
virtual void BeginGetCorner(CFxUserIO *)
virtual void EndGetFileNames(int returnStatus, CFxUserIO *, const CFxStringArray &retValue)
const CFxInputPointManager * GetInputContextManager() const
virtual void EndGetInteger(int returnStatus, CFxUserIO *, int retValue)
virtual void EndGetCorner(int returnStatus, CFxUserIO *, const OdGePoint3d &secondPoint)
virtual void EndGetKeyword(int returnStatus, CFxUserIO *, const CFxString &outKeyword)
virtual void BeginQuiescentState()
virtual void BeginGetFileName(CFxUserIO *)
virtual void BeginGetKeyword(CFxUserIO *)
virtual void BeginNentsel(CFxUserIO *)
virtual void BeginSSGet(CFxUserIO *)
virtual void BeginGetScaleFactor(CFxUserIO *)
~CFxInputContextReactor(void) override
virtual void EndGetAngle(int returnStatus, CFxUserIO *, double dAngle)
virtual void BeginGetReal(const double *pDefault, CFxUserIO *)
virtual void EndGetString(int returnStatus, CFxUserIO *, const CFxString &outString)
virtual void EndGetColor(int returnStatus, CFxUserIO *, int retValue)
virtual void EndNentsel(int returnStatus, CFxUserIO *, const OdDbFullSubentPath &entPicked, const OdGePoint3d &pickPoint)
virtual void BeginGetInteger(const int *pDefault, CFxUserIO *)
virtual void BeginGetString(CFxUserIO *)
virtual void EndGetFileName(int returnStatus, CFxUserIO *, const CFxString &retValue)
virtual void BeginDragSequence(CFxUserIO *)
ODRX_DECLARE_MEMBERS(CFxInputContextReactor)