Visual Basic | |
---|---|
Public Delegate Sub _IApplicationEvents_FileOpenPreNotifyEventHandler( _ ) |
C# | |
---|---|
public delegate void _IApplicationEvents_FileOpenPreNotifyEventHandler( ) |
JavaScript | |
---|---|
Event Not Supported ) |
C++ | |
---|---|
FileOpenPreNotify( ) |
Parameters
- FileName
- Name of the file about to be opened
- Option
- Open option as defined in dsDocumentOpenOption_e
See the following code snippets:
- COM native C++
- C++
COM native C++
Header file
//Register the events for the IApplication class
BEGIN_SINK_MAP(CDsAddinConnection)
SINK_ENTRY_EX(IDC_DSAPPLICATIONEVENT, DIID__IApplicationEvents, dsApplication_ActiveDocumetnChangedNotify_id, OnActiveDocumentChangedNotify)
SINK_ENTRY_EX(IDC_DSAPPLICATIONEVENT, DIID__IApplicationEvents, dsApplication_DestroyNotify_id, OnDestroyNotifyHandler)
SINK_ENTRY_EX(IDC_DSAPPLICATIONEVENT, DIID__IApplicationEvents, dsApplication_FileNewNotify_id, OnFileNewNotify)
SINK_ENTRY_EX(IDC_DSAPPLICATIONEVENT, DIID__IApplicationEvents, dsApplication_FileOpenPostNotify_id, OnFileOpenPostNotify)
SINK_ENTRY_EX(IDC_DSAPPLICATIONEVENT, DIID__IApplicationEvents, dsApplication_FileOpenPreNotify_id, OnFileOpenPreNotify)
END_SINK_MAP()
//Declare the callbacks for IApplication class
void __stdcall OnActiveDocumentChangedNotify();
void __stdcall OnDestroyNotify();
void __stdcall OnFileNewNotify(IDocument* Doc);
void __stdcall OnFileOpenPostNotify(IDocument* Doc);
void __stdcall OnFileOpenPreNotify(BSTR FileName, dsDocumentOpenOption_e Option);
Source file
void
__stdcall CDsAddinConnection::OnFileOpenPreNotify(BSTR FileName, dsDocumentOpenOption_e Option){
//TODO: Add your implementation code here
}
C++
Header file
class DSADDINSAMPLE_EXPORT myApplication :
public dsApplicationEvents_c, public dsCommandEvents_c
public:myApplication(dsApplication_c *dsApp) : m_dsApp(dsApp) {
RegisterApplicationFileNewNotifyHook(m_dsApp);
RegisterApplicationFileOpenPreNotifyHook(m_dsApp);
RegisterApplicationFileOpenPostNotifyHook(m_dsApp);
}
~myApplication() {
UnRegisterApplicationFileNewNotifyHook(m_dsApp);
UnRegisterApplicationFileOpenPreNotifyHook(m_dsApp);
UnRegisterApplicationFileOpenPostNotifyHook(m_dsApp);
}
DeclareApplicationFileNewNotifyHook
DeclareApplicationFileOpenPreNotifyHook
DeclareApplicationFileOpenPostNotifyHook
bool FileNewNotify(dsDocument_c * docIn); bool FileOpenPreNotify(dsString fileName, dsDocumentOpenOption_e Option); bool FileOpenPostNotify(dsDocument_c* docIn);
Source file
ImplementApplicationFileNewNotifyHook(myApplication)
ImplementApplicationFileOpenPreNotifyHook(myApplication)
ImplementApplicationFileOpenPostNotifyHook(myApplication)
bool
myApplication::FileNewNotify(dsDocument_c* docIn){
//TODO: Add your code here return true;
}
bool
myApplication::FileOpenPreNotify(dsString fileName, dsDocumentOpenOption_e Option){
//TODO: Add your code here return true;
}
bool
myApplication::FileOpenPostNotify(dsDocument_c *docIn){
//TODO: Add your code here return true;
}
Fire Application and Document Events (VB.NET)
Fire Application and Document Events (VBA)
If developing a C++ application, use dsApplication_FileOpenPreNotify_id to register for this notification.
See Getting Started for more information about C++ interface add-in template callback functions.
Interop.dsAutomation Namespace
IApplication Event FileOpenPostNotify