CFx SDK Documentation  2023 SP0
FxEditorReactor.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 #include "FxFileData.h"
23 
24 #include <Editor.h>
25 #include <Ed/EdCommandStack.h>
26 #include <Ed/EdLispEngine.h>
27 
28 class CFxSelectionSet;
29 class CFxDatabase;
30 
31 class QWidget;
32 
39  public OdEditorReactor,
42 {
43  friend class CFxEditor;
44 
45 public:
47  ~CFxEditorReactor() override;
49  {
51  eAppWindow
52  };
53 
54  enum WindowState {
55  eWindowNoState = 0x00000000,
56  eWindowMinimized = 0x00000001,
57  eWindowMaximized = 0x00000002,
58  eWindowFullScreen = 0x00000004,
59  eWindowActive = 0x00000008
60  };
61 
62  static OdRxClass* g_pDesc;
63  static OdRxClass* desc();
64 
65  OdRxClass* isA() const override;
66  OdRxObject* queryX(const OdRxClass* protocolClass) const override;
67 
68  static void rxInit();
69  static void rxUninit();
70 
71  virtual void mainFrameCreated( QWidget* pWidget ){};
72  virtual void mainFrameDestroyed( QWidget* pWidget ){};
73 
74  virtual void appActivated() {};
75  virtual void appDeactivated() {};
76  virtual void windowStateChanged(WindowType type, WindowState state) {};
77 
78  virtual void selectionSetCreated( CFxSelectionSet* pSS ){};
79  virtual void selectionSetDestroyed( CFxSelectionSet* pSS ){};
80 
81  virtual void gripEditCustomOp( OdRxObject * pEnt, const std::string & action, const OdGeMatrix3d & matrix ){};
82 
83  virtual void beginSaveEx( CFxDatabase* pDb, const CFxString& sFileName, CFxFileData::FileType iFileType, int iFileVersion){};
84  virtual void cancelDwgOpen( const CFxString& sFileName ) {};
85  virtual void closeAborted(OdDbDatabase* pDb) {};
86  virtual void beginModalState() {};
87  virtual void endModalState() {};
88 
89 protected:
99 
100 private:
101  OdUInt8 m_Veto;
102 };
103 
104 #include "FxPragmaPop.h"
#define DDKERNEL_API
Definition: DDKERNEL.h:32
unsigned char OdUInt8
OdResult
Definition: OdResult.h:29
virtual void appDeactivated()
virtual void cancelDwgOpen(const CFxString &sFileName)
virtual void appActivated()
static OdRxClass * desc()
virtual void closeAborted(OdDbDatabase *pDb)
virtual void windowStateChanged(WindowType type, WindowState state)
virtual void mainFrameCreated(QWidget *pWidget)
virtual void mainFrameDestroyed(QWidget *pWidget)
virtual void selectionSetCreated(CFxSelectionSet *pSS)
static OdRxClass * g_pDesc
virtual void gripEditCustomOp(OdRxObject *pEnt, const std::string &action, const OdGeMatrix3d &matrix)
virtual void selectionSetDestroyed(CFxSelectionSet *pSS)
virtual void endModalState()
virtual void beginModalState()
OdRxObject * queryX(const OdRxClass *protocolClass) const override
OdRxClass * isA() const override
static void rxUninit()
~CFxEditorReactor() override
static void rxInit()
OdResult veto()
virtual void beginSaveEx(CFxDatabase *pDb, const CFxString &sFileName, CFxFileData::FileType iFileType, int iFileVersion)
GLuint GLsizei GLsizei GLint GLenum * type
Definition: gles2_ext.h:274
GLsizei const GLchar *const * string
Definition: gles2_ext.h:292