CFx SDK Documentation 2026 SP0
Loading...
Searching...
No Matches
FxSystemServices.h
Go to the documentation of this file.
1//
2// (C) Copyright 2005-2025 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 "DDKERNEL.h"
20#include "FxUserIO.h"
21#include "FxUI.h"
22
23#include <DbHostAppServices.h>
24
25#include "FxPragmaPush.h"
26
27class CFxMainFrame;
30class CFxLicenseInfo;
31class QGLWidget;
33class CFxIO;
34class CFxApplications;
35class CFxVSTA;
36class CFxUI;
38class CFxFileData;
39class CFxObjectManager;
40class CFxBagFiler;
41class CFxInferencePointManager;
42class QMimeData;
43class CFxGeomUtils;
44class CFxEvalModeHandler;
45class CFxViewDrawInfo;
46class CXeRemoteFileManager;
47class CFxSelectionSetFilterHolder;
48class CFxTrackerData;
49class CXeStorageServices;
50class CXeHostServices;
51class CFxAPI;
52class CFxOutputDevice;
53
54struct IDispatch;
55
58
59class OdGiRasterImage;
61
64
65class CFxDatabase;
67
68class CFxRasterImage;
70
72
73class CFxActionMacroManager;
74
81{
82public:
83
87
89 {
90 MBButtonOk = 0x00000000L,
91 MBButtonOkCancel = 0x00000001L,
93 MBButtonYesNoCancel = 0x00000003L,
94 MBButtonYesNo = 0x00000004L,
95 MBButtonRetryCancel = 0x00000005L,
97 MBIconStop = 0x00000010L,
98 MBIconQuestion = 0x00000020L,
99 MBIconExclamation = 0x00000030L,
100 MBIconAsterisk = 0x00000040L,
101 MBModalSystem = 0x00001000L,
102 MBModalTask = 0x00002000L
103 };
104
106
108
115 virtual bool GetPassword(const CFxString& dwgName, bool isXref, OdPassword& password) const = 0;
116
117
123 virtual void AuditPrintReport(OdDbAuditInfo* pAuditInfo, const CFxString& str) const = 0;
124
131 virtual CFxString FindFile( const CFxString& sFile, bool bDisplayMessage = false, const OdDbBaseDatabase* pDb = 0, OdDbHostAppServices::FindFileHint hint = OdDbHostAppServices::kDefault) const = 0;
132
136 virtual bool IsValidFileName( const CFxString& fileName ) const = 0;
137
141 virtual void Write( const CFxString& str, const CFxDocument* pContext = 0 ) const = 0;
142
147 virtual void WriteLine( const CFxString& str, const CFxDocument* pContext = 0, bool bShowCommandWindowOutput = false ) const = 0;
148
152 virtual CFxMainFrame* GetMainFrame() const = 0;
153
157 virtual int MessageBox( const CFxString& csText, const CFxString& csCaption, unsigned int uType) const = 0;
158
162
165 virtual CFxHostAppServices* GetHostAppServices() noexcept = 0;
166
169 virtual OdDbSystemServices* GetSystemServices() noexcept = 0;
170
173 virtual CFxEvalModeHandler* GetFxEvalModeHandler() noexcept = 0;
174
241
246 virtual OdResBufPtr SendStringToExecute( const CFxString& strCommand, const CFxExpressionParserData* pData = 0 ) = 0;
247
248 virtual OdResBufPtr SendStringToExecute( const CFxExpressionParserData* pData, int rtype, ... ) = 0;//variable argument list
249
250 virtual OdResBufPtr SendStringToExecute( const CFxExpressionParserData* pData, int rtype, va_list vaList ) = 0;//variable argument list
251
253
255
256 virtual void QueueExpr( const CFxExpressionParserData* pData, const OdResBufPtr& pExpr ) = 0;
257 virtual void QueueExpr( const CFxExpressionParserData* pData, int rtype, ... ) = 0;
258
262
266
270 typedef enum _FontType
271 {
275 } FontType;
276
284
286
291
295 virtual CFxIO* GetFxIO() = 0;
296
300 virtual CFxApplications* GetFxApplications() noexcept = 0;
303 virtual CFxVSTA* GetVSTA() = 0;
304 virtual void ActivateRibbon( bool enable ) = 0;
305
308 virtual IDispatch* GetIApplication() = 0;
309
327 virtual int FileDialog(
328 CFxUserIO::FileNameRetVal* pResultMode,
329 CFxString* pResultStr,
330 FxWId parent,
331 CFxUserIO::FileNameType eType,
332 const CFxString& dialogCaption,
333 const CFxString& defaultExtension,
334 const CFxString& filter,
335 const CFxString& initialDir,
336 int* filterIndex = 0, // filterIndex is zero-based
337 CFxString* templateName = 0,
338 CFxUserIO::FileNameFlags flags = CFxUserIO::eFileNameNoFlags,
339 OdCodePageId** codepage = 0) = 0;
340
358 virtual int FileDialog(
359 CFxUserIO::FileNameRetVal* pResultMode,
360 CFxStringArray* pResultStrs,
361 FxWId parent,
362 CFxUserIO::FileNameType eType,
363 const CFxString& dialogCaption,
364 const CFxString& defaultExtension,
365 const CFxString& filter,
366 const CFxString& initialDir,
367 int* filterIndex = 0, // filterIndex is zero-based
368 CFxString* templateName = 0,
369 CFxUserIO::FileNameFlags flags = CFxUserIO::eFileNameNoFlags,
370 OdCodePageId** codepage = 0) = 0;
371
372 virtual int FolderDialog( const CFxString& dialogCaption,
373 const CFxString& defaultDirectoryName,
374 CFxString* pResultStr,
375 FxWId parent ) = 0;
376
380 virtual CFxUI* GetFxUI() = 0;
381
387 virtual void Help( const CFxString& lpCommandName ) const = 0;
388
394 virtual void ExitApplication( int nReturnCode = 0 ) = 0;
395
401 virtual bool IsApplicationExiting( ) const = 0;
402
407
410// virtual CFxExtentsAccumulator* CreateExtentsAccumulator() = 0;
411
415
427
431 virtual void GetInitialDirPath( InitialDir type, CFxString& initialDir, const CFxFileData* info = 0 ) const = 0;
432
437 virtual void SetInitialDirPath( InitialDir type, const CFxString& fileNamePath ) = 0;
438
442 virtual CFxObjectManager* GetObjectManager() = 0;
443
448 OdDbDatabase* db,
450 fdt_resbufW* resBuf = 0,
451 bool bIncludesDefaultValues = false) = 0;
452
456 virtual bool userBreak() = 0;
457
461 virtual void SetUserBreak( bool bUserBreak = true ) = 0;
462
468 virtual CFxInferencePointManager* GetInferencePointManager() = 0;
469
475 virtual OdCodePageId GetSystemCodepage() const = 0;
476
482 virtual void SetSystemCodepage( OdCodePageId codepage ) = 0;
483
491 virtual bool DoVerb( const OdDbObjectId& idOleObject ) const = 0;
492
503 virtual bool AddOleDataToClipboard( QMimeData* pClipboardData, CFxDatabasePtr pData, int iFrameWidth, int iFrameHeight ) const = 0;
504
510 virtual CFxGeomUtils* GetGeomUtils() const = 0;
511
522
529
540 virtual bool GetVersion( int* major, int* minor, int* product, int* build ) const = 0;
541
547 virtual CFxString GetVersion() const = 0;
548
554 virtual void SetOEMVersion( const CFxString& sOEMVersion ) = 0;
555
561 virtual CFxString GetOEMVersion() const = 0;
562
568 virtual CFxString GetAppDataVersion() const = 0;
569
574
583 virtual void DisableUI(bool disable, bool includeCommandWindow = true, bool includeDocumentWindows = true, bool includeStatusBar = true ) = 0;
584
590 virtual void AuthoriseOEMModule(bool authorise) = 0;
591
597 virtual bool IsOEMModuleAuthorised() = 0;
598
604 virtual CFxActionMacroManager* GetFxActionMacroManager() = 0;
605
611 virtual const CFxActionMacroManager* GetFxActionMacroManager() const = 0;
612
618 virtual CFxRasterImagePtr CreateDrawablePreview( OdUInt32 iWidth, OdUInt32 iHeight, OdDbDatabase* pDatabase, const OdGiDrawableArray& drawables, const CFxViewDrawInfo* pInfo ) = 0;
619
623 virtual CFxAPI* GetFxAPI(CFxDocument * pDocument) = 0;
624
628 virtual void StopATFBomb() = 0;
629
631 virtual void SetRibbonTheme( const CFxUIStyle::UIStyle value ) = 0;
632
636 virtual void AddOutputDevice(CFxOutputDevice *device) = 0;
637
641 virtual void RemoveOutputDevice(CFxOutputDevice *device) = 0;
642
646 virtual OdResBufPtr ExecuteStringOnPause( CFxDocument* pDoc, const CFxString& strCommand, const CFxExpressionParserData* pData = 0 ) = 0;
647};
648
651
652#include "FxPragmaPop.h"
OdRxObject OdDbBaseDatabase
#define DDKERNEL_API
Definition DDKERNEL.h:32
OdSmartPtr< OdResBuf > OdResBufPtr
Definition DbDatabase.h:105
OdSmartPtr< OdGiRasterImage > OdGiRasterImagePtr
Definition DbLayout.h:36
OdString OdPassword
Definition DbSecurity.h:52
OdRxSystemServices OdDbSystemServices
std::vector< OdBmObjectPtr > drawables
OdSmartPtr< CFxDatabase > CFxDatabasePtr
Definition FxDatabase.h:38
OdSmartPtr< CFxRasterImage > CFxRasterImagePtr
OdSmartPtr< CFxGeometryClipper > CFxGeometryClipperPtr
int FxWId
std::vector< CFxString > CFxStringArray
Definition FxString.h:37
OdSmartPtr< OdGiRasterImage > OdGiRasterImagePtr
OdSmartPtr< CFxDatabase > CFxDatabasePtr
OdSmartPtr< CFxRasterImage > CFxRasterImagePtr
OdArray< const OdGiDrawable * > OdGiDrawableArray
DDKERNEL_API CFxSystemServices * GetFxSystemServices() noexcept
OdSmartPtr< CFxGeometryClipper > CFxGeometryClipperPtr
OdSmartPtr< CFxVectorizeDevice > CFxVectorizeDevicePtr
ModelerType
Definition IfcCore.h:57
OdCodePageId
Definition OdCodePage.h:31
unsigned int OdUInt32
virtual bool IsValidFileName(const CFxString &fileName) const =0
enum CFxSystemServices::_ModelerType ModelerType
virtual void QueueExpr(const CFxExpressionParserData *pData, int rtype,...)=0
virtual OdResBufPtr SendStringToExecute(CFxDocument *pDoc, const CFxExpressionParserData *pData, OdResBufPtr pResbuf)=0
virtual const CFxActionMacroManager * GetFxActionMacroManager() const =0
virtual bool GetPassword(const CFxString &dwgName, bool isXref, OdPassword &password) const =0
virtual CFxInferencePointManager * GetInferencePointManager()=0
virtual void AuditPrintReport(OdDbAuditInfo *pAuditInfo, const CFxString &str) const =0
virtual void SetRibbonTheme(const CFxUIStyle::UIStyle value)=0
virtual CFxGeomUtils * GetGeomUtils() const =0
virtual CFxString GetVersion() const =0
virtual void SetInitialDirPath(InitialDir type, const CFxString &fileNamePath)=0
virtual CFxString GetOEMVersion() const =0
virtual void SetSystemCodepage(OdCodePageId codepage)=0
virtual CFxString GetOpenDefaultExtension() const =0
virtual bool AddOleDataToClipboard(QMimeData *pClipboardData, CFxDatabasePtr pData, int iFrameWidth, int iFrameHeight) const =0
virtual OdArray< CFxString > GetAvailableFonts(FontType eType) const =0
virtual void QueueExpr(const CFxExpressionParserData *pData, const OdResBufPtr &pExpr)=0
enum CFxSystemServices::_FontType FontType
virtual CFxVSTA * GetVSTA()=0
virtual CFxProfileManager * GetFxProfileManager()=0
virtual void DisableUI(bool disable, bool includeCommandWindow=true, bool includeDocumentWindows=true, bool includeStatusBar=true)=0
virtual ~CFxSystemServices()
virtual CFxEvalModeHandler * GetFxEvalModeHandler() noexcept=0
virtual CFxAPI * GetFxAPI(CFxDocument *pDocument)=0
virtual CFxUIStyle::UIStyle GetRibbonTheme() const =0
virtual CFxMainFrame * GetMainFrame() const =0
virtual OdCodePageId GetSystemCodepage() const =0
virtual OdResBufPtr SendStringToExecute(const CFxExpressionParserData *pData, int rtype,...)=0
virtual CFxVectorizeDevicePtr GetFxGDIDevice()=0
virtual int FileDialog(CFxUserIO::FileNameRetVal *pResultMode, CFxString *pResultStr, FxWId parent, CFxUserIO::FileNameType eType, const CFxString &dialogCaption, const CFxString &defaultExtension, const CFxString &filter, const CFxString &initialDir, int *filterIndex=0, CFxString *templateName=0, CFxUserIO::FileNameFlags flags=CFxUserIO::eFileNameNoFlags, OdCodePageId **codepage=0)=0
virtual int FolderDialog(const CFxString &dialogCaption, const CFxString &defaultDirectoryName, CFxString *pResultStr, FxWId parent)=0
virtual OdResBufPtr ExecuteStringOnPause(CFxDocument *pDoc, const CFxString &strCommand, const CFxExpressionParserData *pData=0)=0
virtual OdResBufPtr SendStringToExecute(const CFxString &strCommand, const CFxExpressionParserData *pData=0)=0
virtual bool IsApplicationExiting() const =0
virtual void ActivateRibbon(bool enable)=0
virtual CFxObjectManager * GetObjectManager()=0
virtual void GetInitialDirPath(InitialDir type, CFxString &initialDir, const CFxFileData *info=0) const =0
virtual void AddOutputDevice(CFxOutputDevice *device)=0
virtual CFxNetworkAccessManager * GetFxNetworkAccessManager()=0
virtual OdGiRasterImagePtr CreateRasterImage() const =0
virtual ModelerType GetModelerManufacture() const =0
virtual CFxDocumentManager * GetFxDocumentManager() noexcept=0
virtual bool DoVerb(const OdDbObjectId &idOleObject) const =0
virtual CFxHostAppServices * GetHostAppServices() noexcept=0
virtual CFxActionMacroManager * GetFxActionMacroManager()=0
virtual void SetUserBreak(bool bUserBreak=true)=0
virtual bool GetVersion(int *major, int *minor, int *product, int *build) const =0
virtual CFxGeometryClipperPtr CreateGeometryClipper()=0
virtual OdResBufPtr SendStringToExecute(const CFxExpressionParserData *pData, OdResBufPtr pResbuf)=0
virtual OdResBufPtr SendStringToExecute(const CFxExpressionParserData *pData, int rtype, va_list vaList)=0
virtual OdDbSystemServices * GetSystemServices() noexcept=0
virtual CFxRasterImagePtr CreateDrawablePreview(OdUInt32 iWidth, OdUInt32 iHeight, OdDbDatabase *pDatabase, const OdGiDrawableArray &drawables, const CFxViewDrawInfo *pInfo)=0
virtual IDispatch * GetIApplication()=0
virtual int MessageBox(const CFxString &csText, const CFxString &csCaption, unsigned int uType) const =0
virtual void Write(const CFxString &str, const CFxDocument *pContext=0) const =0
virtual void Help(const CFxString &lpCommandName) const =0
virtual CFxString GetAppDataVersion() const =0
virtual void WriteLine(const CFxString &str, const CFxDocument *pContext=0, bool bShowCommandWindowOutput=false) const =0
virtual void RemoveOutputDevice(CFxOutputDevice *device)=0
virtual CFxUI * GetFxUI()=0
virtual void StopATFBomb()=0
virtual bool userBreak()=0
virtual CFxIO * GetFxIO()=0
virtual void ExitApplication(int nReturnCode=0)=0
virtual bool IsOEMModuleAuthorised()=0
virtual CFxString FindFile(const CFxString &sFile, bool bDisplayMessage=false, const OdDbBaseDatabase *pDb=0, OdDbHostAppServices::FindFileHint hint=OdDbHostAppServices::kDefault) const =0
virtual void AuthoriseOEMModule(bool authorise)=0
virtual void SetOEMVersion(const CFxString &sOEMVersion)=0
virtual CFxApplications * GetFxApplications() noexcept=0
virtual OdSmartPtr< CFxBagFiler > CreateBagFiler(OdDbDatabase *db, OdDb::DwgVersion version=OdDb::kDHL_CURRENT, fdt_resbufW *resBuf=0, bool bIncludesDefaultValues=false)=0
Definition FxUI.h:90
GLuint GLsizei GLsizei GLint GLenum * type
Definition gles2_ext.h:274
GLsizei const GLfloat * value
Definition gles2_ext.h:302
DwgVersion
Definition OdaDefs.h:47
@ kDHL_CURRENT
Definition OdaDefs.h:102