/*++ Module Name: pubProp.h Abstract: --*/ #ifndef __PUBPROP_H_ #define __PUBPROP_H_ #include "dfscore.h" #include "dfsenums.h" #include "qwizpage.h" // The base class that implements the common functionality // of property and wizard pages // ---------------------------------------------------------------------------- // CPublishPropPage: Property Page for publishing root as volume object class CPublishPropPage : public CQWizardPageImpl { public: enum { IDD = IDD_PUBLISH_PROP }; BEGIN_MSG_MAP(CPublishPropPage) MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog) MESSAGE_HANDLER(WM_HELP, OnCtxHelp) MESSAGE_HANDLER(WM_CONTEXTMENU, OnCtxMenuHelp) MESSAGE_HANDLER(WM_PARENT_NODE_CLOSING, OnParentClosing) COMMAND_ID_HANDLER(IDC_PUBPROP_PUBLISH, OnPublish) COMMAND_ID_HANDLER(IDC_PUBPROP_DESCRIPTION, OnDescription) COMMAND_ID_HANDLER(IDC_PUBPROP_KEYWORDS_EDIT, OnEditKeywords) COMMAND_ID_HANDLER(IDC_PUBPROP_MANAGEDBY, OnManagedBy) CHAIN_MSG_MAP(CQWizardPageImpl) END_MSG_MAP() CPublishPropPage(); ~CPublishPropPage(); LRESULT OnInitDialog( IN UINT i_uMsg, IN WPARAM i_wParam, LPARAM i_lParam, IN OUT BOOL& io_bHandled ); LRESULT OnCtxHelp( IN UINT i_uMsg, IN WPARAM i_wParam, IN LPARAM i_lParam, IN OUT BOOL& io_bHandled ); LRESULT OnCtxMenuHelp( IN UINT i_uMsg, IN WPARAM i_wParam, IN LPARAM i_lParam, IN OUT BOOL& io_bHandled ); HRESULT Initialize(IN IDfsRoot* i_piDfsRoot); // Message handlers LRESULT OnApply( ); LRESULT OnPublish( IN WORD i_wNotifyCode, IN WORD i_wID, IN HWND i_hWndCtl, IN OUT BOOL& io_bHandled ); LRESULT OnDescription( IN WORD i_wNotifyCode, IN WORD i_wID, IN HWND i_hWndCtl, IN OUT BOOL& io_bHandled ); LRESULT OnEditKeywords( IN WORD i_wNotifyCode, IN WORD i_wID, IN HWND i_hWndCtl, IN OUT BOOL& io_bHandled ); LRESULT OnManagedBy( IN WORD i_wNotifyCode, IN WORD i_wID, IN HWND i_hWndCtl, IN OUT BOOL& io_bHandled ); // Used by the node to tell the propery page to close. LRESULT OnParentClosing( IN UINT i_uMsg, IN WPARAM i_wParam, LPARAM i_lParam, IN OUT BOOL& io_bHandled ); // Used to set notification data HRESULT SetNotifyData( IN LONG_PTR i_lNotifyHandle, IN LPARAM i_lParam ); protected: void _Reset(); void _Load(); HRESULT _Save( IN BOOL i_bPublish, IN BSTR i_bstrDescription, IN BSTR i_bstrKeywords, IN BSTR i_bstrManagedBy ); private: LONG_PTR m_lNotifyHandle; LPARAM m_lNotifyParam; CComPtr m_piDfsRoot; BOOL m_bPublish; CComBSTR m_bstrUNCPath; CComBSTR m_bstrDescription; CComBSTR m_bstrKeywords; CComBSTR m_bstrManagedBy; CComBSTR m_bstrError; }; #endif // __PUBPROP_H_