Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
#ifndef __ACTION_H
#define __ACTION_H
///////////////////////////////////////////////////////////////////////////////
/* File: action.h
Description: Declarations for classes to handle actions associated with user notifications (email, popup dialog etc). CAction CActionEmail CActionPopup
Revision History:
Date Description Programmer -------- --------------------------------------------------- ---------- 07/01/97 Initial creation. BrianAu */ ///////////////////////////////////////////////////////////////////////////////
#ifndef __MAPISEND_H
# include "mapisend.h"
#endif
//
// Fwd declarations. Don't need headers.
//
class CHistory; class CStatisticsList;
class CAction { public: CAction(VOID) { }; virtual ~CAction(VOID) { };
virtual HRESULT DoAction(CHistory& history) = 0;
private: //
// Prevent copy.
//
CAction(const CAction& rhs); CAction& operator = (const CAction& rhs); };
class CActionEmail : public CAction { public: CActionEmail(CMapiSession& MapiSession, LPMAPIFOLDER pMapiFolder, LPTSTR pszRecipientsTo, LPTSTR pszRecipientsCc, LPTSTR pszRecipientsBcc, LPCTSTR pszSubject, CMapiMessageBody& MsgBody);
virtual ~CActionEmail(VOID);
virtual HRESULT DoAction(CHistory& history);
private: CMapiSession& m_MapiSession; // Reference to MAPI session object.
CMapiRecipients m_MapiRecipients; // List of recipients for for message.
CMapiMessage m_MapiMsg; // MAPI message we'll build and send.
MAPI m_Mapi; // MAPI functions.
//
// Prevent copy.
//
CActionEmail(const CActionEmail& rhs); CActionEmail& operator = (const CActionEmail& rhs); };
class CActionPopup : public CAction { public: CActionPopup(CStatisticsList& stats);
virtual ~CActionPopup(VOID);
virtual HRESULT DoAction(CHistory& history);
private: CStatisticsList& m_stats; HWND m_hwnd; HINSTANCE m_hmodCOMCTL32; HICON m_hiconDialog; static UINT m_idAutoCloseTimer; static UINT m_uAutoCloseTimeout;
HRESULT CreateAndRunPopup( HINSTANCE hInst, LPCTSTR pszDlgTemplate, HWND hwndParent);
static INT_PTR CALLBACK DlgProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam); BOOL OnInitDialog(HWND hwnd); BOOL OnDestroy(HWND hwnd); BOOL OnNcDestroy(HWND hwnd); VOID InitializeList(HWND hwndList);
//
// Prevent copy.
//
CActionPopup(const CActionPopup& rhs); CActionPopup& operator = (const CActionPopup& rhs); };
#endif //__ACTION_H
|