summaryrefslogtreecommitdiff
path: root/NSCmpts/Backup.h
diff options
context:
space:
mode:
Diffstat (limited to 'NSCmpts/Backup.h')
-rw-r--r--NSCmpts/Backup.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/NSCmpts/Backup.h b/NSCmpts/Backup.h
new file mode 100644
index 0000000..8cc0c3e
--- /dev/null
+++ b/NSCmpts/Backup.h
@@ -0,0 +1,64 @@
+// Backup.h : Declaration of the CBackup
+
+#ifndef __BACKUP_H_
+#define __BACKUP_H_
+
+#include "resource.h" // main symbols
+
+#include "ActionEngine.h"
+#include "BackupActions.h"
+
+#include "../common/interfaces.h"
+#include <atlextra.h>
+
+/////////////////////////////////////////////////////////////////////////////
+// CBackup
+class ATL_NO_VTABLE CBackup :
+ public CComObjectRootEx<CComSingleThreadModel>,
+ public CComCoClass<CBackup, &CLSID_Backup>,
+ public ISupportErrorInfo,
+ public IDispatchImpl<ISecureShutdownWin, &IID_ISecureShutdownWin, &LIBID_NightSecCmpts>,
+ public IObjectWithSiteImpl<CBackup>,
+ public ISpecifyPropertyPagesImplEx
+{
+public:
+ CBackup()
+ { }
+ ~CBackup()
+ { ATLTRACE(_T("Destroying Backup\n")); }
+
+DECLARE_REGISTRY_RESOURCEID(IDR_BACKUP)
+
+DECLARE_PROTECT_FINAL_CONSTRUCT()
+
+BEGIN_COM_MAP(CBackup)
+ COM_INTERFACE_ENTRY(ISecureShutdownWin)
+ COM_INTERFACE_ENTRY(IDispatch)
+ COM_INTERFACE_ENTRY(ISupportErrorInfo)
+ COM_INTERFACE_ENTRY(IObjectWithSite)
+ COM_INTERFACE_ENTRY(ISpecifyPropertyPages)
+END_COM_MAP()
+
+ // Custom version of normal property Map Mechanism (atlextra.h)
+ virtual ATL_PROPMAP_ENTRY* GetPropertyMap();
+
+// ISupportsErrorInfo
+ STDMETHOD(InterfaceSupportsErrorInfo)(REFIID riid);
+
+// ISecureShutdownWin
+public:
+ STDMETHOD(get_Info)(/*[in]*/ NightSecInfo nsItem, /*[out, retval]*/ VARIANT* pvVal);
+ STDMETHOD(DoShutdown)(/*[in]*/ long hParent, /*[in]*/ long lMode);
+ STDMETHOD(SetData)(/*[in]*/ IUnknown* pUnk);
+
+protected:
+
+ CActionEngine m_Engine; // The Engine
+ CPropertyBag m_Data; // Standard Data Object
+
+// UINT LoadPaths();
+// string_array m_srcPaths;
+// file_path m_destPath;
+};
+
+#endif //__BACKUP_H_