FRX SDK Documentation 2025 SP0
Loading...
Searching...
No Matches
AcDbHostApplicationServices.h
Go to the documentation of this file.
1#pragma once
2
3//
4// (C) Copyright 2005-2024 by Graebert GmbH.
5//
6// Permission to use, copy, modify, and distribute this software in
7// object code form for any purpose and without fee is hereby granted,
8// provided that the above copyright notice appears in all copies and
9// that both that copyright notice and the limited warranty and
10// restricted rights notice below appear in all supporting
11// documentation.
12//
13// GRAEBERT PROVIDES THIS PROGRAM "AS IS" AND WITH ALL FAULTS.
14// GRAEBERT SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTY OF
15// MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. GRAEBERT GMBH
16// DOES NOT WARRANT THAT THE OPERATION OF THE PROGRAM WILL BE
17// UNINTERRUPTED OR ERROR FREE.
18
19#include "..\acad\Acad.h"
20#include "..\acad\AcadInet.h"
21#include "..\acdb17\AcadApp.h"
23
25class AcDbAuditInfo;
26class AcDbDatabase;
27class AcDbGlobals;
33class AcRxClass;
35class CArchive;
36class COleClientItem;
39class AcPwdCache;
40struct flagmat;
41
42typedef Acad::ErrorStatus(*SELECTFILEPROC)(short *, ACHAR *&, void*, const int, const ACHAR *, const ACHAR *, const ACHAR *,
43 const ACHAR *, int*, bool*, const ACHAR *, AcStringArray*);
44
45typedef Acad::ErrorStatus(*REMAPPROC) (ACHAR *&, const ACHAR *, int, void*);
46
47typedef void(*MAPFILENOTIFYPROC) (const ACHAR *, const ACHAR *, int, void*);
48
50{
51public:
53
55 {
56 kPasswordOptionDefault = 0,
57 kPasswordOptionUpperCase = 1,
58 kPasswordOptionIsExternalReference = 2
59 };
60
78
86
88 {
89 kModelerFull = 0,
90 kModelerRegionsOnly = 1,
91 kModelerObjectsOnly = 2
92 };
93
95 kNoOpen = 0,
96 kReadOnly = 1,
97 kWriteAllowed = 2
98 };
99
103 virtual bool getPassword(wchar_t const *, PasswordOptions, wchar_t *, unsigned int);
104 virtual bool loadApp(wchar_t const *, AcadApp::LoadReasons, bool, bool);
109 virtual AcDbLayoutManager * layoutManager(void)const;
112 virtual Acad::ErrorStatus getLocalRootFolder(wchar_t const * &);
113 virtual Acad::ErrorStatus getNewOleClientItem(COleClientItem * &);
114 virtual Acad::ErrorStatus getRoamableRootFolder(wchar_t const * &);
115 virtual Acad::ErrorStatus putRemoteFile(wchar_t const *, wchar_t const *)const;
116 virtual Acad::ErrorStatus serializeOleItem(COleClientItem *, CArchive *);
117 virtual Acad::ErrorStatus signingComplete(Acad::ErrorStatus, wchar_t const *, bool *);
118 virtual const ProdIdCode prodcode(void);
119 virtual int _entToWorldTransform(double * const, flagmat *);
120 virtual int doFullCRCCheck(void);
121 virtual int getSubstituteFont(wchar_t * *, wchar_t *, int, int);
122 virtual int isURL(wchar_t const *)const;
123 virtual Adesk::Boolean launchBrowserDialog(wchar_t *, wchar_t const *, wchar_t const *, wchar_t const *, wchar_t const *, Adesk::Boolean = Adesk::kFalse)const;
124 virtual int readyToDisplayMessages(void);
125 virtual int releaseMajorVersion(void);
126 virtual int releaseMinorVersion(void);
127 virtual int userBreak(bool = true)const;
128 unsigned int getTempPath(unsigned long, wchar_t *);
129 unsigned long getRegistryProductLCID(void);
130 virtual void alert(wchar_t const *)const;
131 virtual void auditPrintReport(AcDbAuditInfo *, wchar_t const *, int)const;
132 virtual void displayChar(wchar_t)const;
133 virtual void displayString(wchar_t const *, int)const;
134 virtual void drawOleOwnerDrawItem(COleClientItem *, long, long, long, long, long);
135 virtual void enableMessageDisplay(int);
136 virtual void missingCryptoProviderMsg(void);
137 virtual void usedPasswordFromCacheMsg(wchar_t const *);
138 virtual wchar_t const * companyName(void);
139 virtual wchar_t const * getEnv(wchar_t const *);
140 virtual wchar_t const * product(void);
141 virtual wchar_t const * program(void);
142 virtual wchar_t const * releaseMajorMinorString(void);
143 virtual wchar_t const * versionString(void);
144 void * acadInternalGetvar(wchar_t const *);
154 virtual ACHAR * getAlternateFontName() const;
155 virtual ACHAR * getFontMapFileName() const;
156 virtual bool cacheSymbolIndices() const;
158 virtual wchar_t const * getMachineRegistryProductRootKey(void);
159 virtual wchar_t const * getUserRegistryProductRootKey(void);
161 virtual Acad::ErrorStatus getAllUsersRootFolder(const ACHAR*&);
162 virtual Acad::ErrorStatus getGraphicsCacheFolder(const ACHAR *&);
163 virtual Acad::ErrorStatus selectFile(short *, ACHAR *&, void*, const int, const ACHAR *, const ACHAR *, const ACHAR *,
164 const ACHAR *, int*, bool*, const ACHAR *, AcStringArray*);
165 virtual Acad::ErrorStatus registerSelectFileCallback(const ACHAR *, SELECTFILEPROC, bool = false, bool = false);
168 virtual Acad::ErrorStatus mapFile(ACHAR *&, const ACHAR *, int, void*);
169 virtual Acad::ErrorStatus registerMapFileCallback(const ACHAR *, REMAPPROC, bool = false, bool = false);
171 virtual bool setMapFlag(bool);
173 virtual Acad::ErrorStatus registerMapFileNotification(const ACHAR *, MAPFILENOTIFYPROC, bool = false);
175 virtual void fatalError(const ACHAR *, ...);
176 virtual void reportUnhandledArxException(const ACHAR*, const ACHAR *);
178 virtual bool notifyCorruptDrawingFoundOnOpen(AcDbObjectId, Acad::ErrorStatus);
181 virtual const ACHAR * getColorBookLocation() const;
183 virtual short getKeyState(int) const;
184 virtual Acad::ErrorStatus getRemoteFile(const ACHAR *, ACHAR *, size_t, bool) const;
185 Acad::ErrorStatus getRemoteFile(const ACHAR *, AcString&, bool) const;
186 virtual void terminateScript();
189 virtual const ACHAR* releaseMarketVersion();
190 virtual bool supportsMultiRedo() const;
193 virtual bool isRemoteFile(const ACHAR *, ACHAR *, size_t) const;
194 bool isRemoteFile(const ACHAR *, AcString&);
195 virtual bool getDefaultPlotCfgInfo(ACHAR *, size_t, ACHAR *, size_t);
197
198protected:
200 void acadInternalSetvar(wchar_t const *, void *);
201
202private:
203 AcString m_getMachineRegistryProductRootKey;
204 AcString m_getUserRegistryProductRootKey;
205 code_page_id m_systemCodePage;
206};
Acad::ErrorStatus(* REMAPPROC)(ACHAR *&, const ACHAR *, int, void *)
void(* MAPFILENOTIFYPROC)(const ACHAR *, const ACHAR *, int, void *)
Acad::ErrorStatus(* SELECTFILEPROC)(short *, ACHAR *&, void *, const int, const ACHAR *, const ACHAR *, const ACHAR *, const ACHAR *, int *, bool *, const ACHAR *, AcStringArray *)
TCHAR ACHAR
@ kDefault
virtual bool getPassword(wchar_t const *, PasswordOptions, wchar_t *, unsigned int)
virtual void drawOleOwnerDrawItem(COleClientItem *, long, long, long, long, long)
virtual wchar_t const * getMachineRegistryProductRootKey(void)
virtual wchar_t const * product(void)
virtual void fatalError(const ACHAR *,...)
virtual Acad::ErrorStatus mapFile(ACHAR *&, const ACHAR *, int, void *)
AcPwdCache * getPasswordCache() const
virtual Adesk::Boolean launchBrowserDialog(wchar_t *, wchar_t const *, wchar_t const *, wchar_t const *, wchar_t const *, Adesk::Boolean=Adesk::kFalse) const
virtual Acad::ErrorStatus getRegisteredSelectFileClients(AcArray< const ACHAR * > &)
unsigned int getTempPath(unsigned long, wchar_t *)
bool getPassword(const ACHAR *, AcDbHostApplicationServices::PasswordOptions, AcString &)
void getDefaultPlotCfgInfo(AcString &, AcString &)
virtual bool requiredVersionNotAvailable(AcDbHostApplicationServices::RequiredVersionFlags, AcDbDatabase *) const
ACRX_DECLARE_MEMBERS(AcDbHostApplicationServices)
virtual AcDbPlotSettingsValidator * plotSettingsValidator(void) const
virtual Acad::ErrorStatus getRemoteFile(const ACHAR *, ACHAR *, size_t, bool) const
virtual bool notifyCorruptDrawingFoundOnOpen(AcDbObjectId, Acad::ErrorStatus)
Acad::ErrorStatus getRemoteFile(const ACHAR *, AcString &, bool) const
void setWorkingGlobals(AcDbGlobals *)
void setWorkingAppSysvars(AcDbAppSystemVariables *)
void setWorkingDatabase(AcDbDatabase *)
virtual const ACHAR * primaryClientForSelectFileCallback()
virtual Acad::ErrorStatus getRegisteredFileMapClients(AcArray< const ACHAR * > &)
virtual Acad::ErrorStatus putRemoteFile(wchar_t const *, wchar_t const *) const
virtual int releaseMajorVersion(void)
virtual void displayChar(wchar_t) const
AcDbDatabase * workingDatabase()
void acadInternalSetvar(wchar_t const *, void *)
virtual AcDbAbstractClipBoundaryDefinition * newClipBoundaryRectangular(void)
virtual AcDbHostApplicationProgressMeter * newProgressMeter(void)
void * acadInternalGetvar(wchar_t const *)
virtual wchar_t const * companyName(void)
virtual bool cacheSymbolIndices() const
virtual const ACHAR * getColorBookLocation() const
unsigned long getRegistryProductLCID(void)
virtual int releaseMinorVersion(void)
virtual void missingCryptoProviderMsg(void)
virtual void usedPasswordFromCacheMsg(wchar_t const *)
virtual void enableMessageDisplay(int)
virtual wchar_t const * program(void)
virtual bool isRemoteFile(const ACHAR *, ACHAR *, size_t) const
void setDefaultUndoController(AcDbUndoController *)
virtual AcDbTransactionManager * workingTransactionManager()
code_page_id getSystemCodePage(void)
virtual Acad::ErrorStatus serializeOleItem(COleClientItem *, CArchive *)
virtual Acad::ErrorStatus selectFile(short *, ACHAR *&, void *, const int, const ACHAR *, const ACHAR *, const ACHAR *, const ACHAR *, int *, bool *, const ACHAR *, AcStringArray *)
virtual void terminateScript()
virtual bool supportsMultiRedo() const
virtual int readyToDisplayMessages(void)
virtual ACHAR * getFontMapFileName() const
virtual Acad::ErrorStatus registerMapFileNotification(const ACHAR *, MAPFILENOTIFYPROC, bool=false)
virtual wchar_t const * getEnv(wchar_t const *)
virtual ClipBoundaryArray * newClipBoundaryArray(void)
virtual int userBreak(bool=true) const
virtual AcadInternalServices2 * acadInternalServices2()
virtual ModelerFlavor getModelerFlavor() const
virtual ~AcDbHostApplicationServices(void)
virtual void reportUnhandledArxException(const ACHAR *, const ACHAR *)
virtual AcDbLayoutManager * layoutManager(void) const
virtual const ProdIdCode prodcode(void)
virtual bool setMapFlag(bool)
virtual int isURL(wchar_t const *) const
Acad::ErrorStatus mapInetStatusToAcadStatus(AcadInet::Status) const
virtual int getSubstituteFont(wchar_t **, wchar_t *, int, int)
virtual AcDbUndoController * defaultUndoController()
virtual void displayString(wchar_t const *, int) const
virtual wchar_t const * releaseMajorMinorString(void)
virtual int _entToWorldTransform(double *const, flagmat *)
virtual const ACHAR * releaseMarketVersion()
virtual Acad::ErrorStatus getLocalRootFolder(wchar_t const *&)
virtual AcLocale getProductLocale()
virtual bool loadApp(wchar_t const *, AcadApp::LoadReasons, bool, bool)
virtual Acad::ErrorStatus getGraphicsCacheFolder(const ACHAR *&)
virtual wchar_t const * getUserRegistryProductRootKey(void)
virtual void alert(wchar_t const *) const
virtual int doFullCRCCheck(void)
bool isRemoteFile(const ACHAR *, AcString &)
virtual AcDbGlobals * createWorkingGlobals(void)
virtual Acad::ErrorStatus registerSelectFileCallback(const ACHAR *, SELECTFILEPROC, bool=false, bool=false)
virtual AcadInternalServices * acadInternalServices()
virtual wchar_t const * versionString(void)
virtual ACHAR * getAlternateFontName() const
virtual const ACHAR * primaryClientForMapFileCallback()
virtual Acad::ErrorStatus getNewOleClientItem(COleClientItem *&)
virtual bool getDefaultPlotCfgInfo(ACHAR *, size_t, ACHAR *, size_t)
virtual Acad::ErrorStatus signingComplete(Acad::ErrorStatus, wchar_t const *, bool *)
void setSystemCodePage(code_page_id)
virtual Acad::ErrorStatus registerMapFileCallback(const ACHAR *, REMAPPROC, bool=false, bool=false)
void setWorkingTransactionManager(AcDbTransactionManager *)
virtual AcDbAbstractClipBoundaryDefinition * newClipBoundaryPolygonal(void)
Acad::ErrorStatus findFile(AcString &, const ACHAR *, AcDbDatabase *=nullptr, AcDbHostApplicationServices::FindFileHint=AcDbHostApplicationServices::kDefault)
virtual Acad::ErrorStatus getRoamableRootFolder(wchar_t const *&)
virtual short getKeyState(int) const
void setWorkingProgressMeter(AcDbHostApplicationProgressMeter *)
virtual Acad::ErrorStatus getAllUsersRootFolder(const ACHAR *&)
virtual void auditPrintReport(AcDbAuditInfo *, wchar_t const *, int) const
AcDbAppSystemVariables * workingAppSysvars() const
LoadReasons
Definition AcadApp.h:38
@ kFalse
Definition AddStruct.h:26