Post-notifies an application when a new file is created.
See the following code snippets:
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::OnFileNewNotify(IDocument* Doc)
{
// TODO: Add your 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;
}
Back to top