|
|
/****************************************************************************\
* * pleasdlg.h * * Created: William Taylor (wtaylor) 01/22/01 * * MS Ratings Access Denied Dialog * \****************************************************************************/
#ifndef PLEASE_DIALOG_H
#define PLEASE_DIALOG_H
#include "basedlg.h" // CBaseDialog
const UINT MAX_CACHED_LABELS = 16; const UINT WM_NEWDIALOG = WM_USER + 1000;
const DWORD PDD_DONE = 0x1; const DWORD PDD_ALLOW = 0x2;
// $BUG - This should be placed in pleasdlg.cpp.
const char szRatingsProp[] = "RatingsDialogHandleProp"; const char szRatingsValue[] = "RatingsDialogHandleValue";
struct PleaseDlgData { LPCSTR pszUsername; LPCSTR pszContentDescription; PicsUser *pPU; CParsedLabelList *pLabelList; HWND hwndDlg; HWND hwndOwner; DWORD dwFlags; HWND hwndEC; UINT cLabels; LPSTR apLabelStrings[MAX_CACHED_LABELS]; };
class CPleaseDialog: public CBaseDialog<CPleaseDialog> { private: static DWORD aIds[]; static DWORD aPleaseIds[]; PleaseDlgData * m_ppdd;
public: enum { IDD = IDD_PLEASE };
public: CPleaseDialog( PleaseDlgData * p_ppdd );
public: typedef CPleaseDialog thisClass; typedef CBaseDialog<thisClass> baseClass;
BEGIN_MSG_MAP(thisClass) MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
COMMAND_ID_HANDLER(IDCANCEL, OnCancel) COMMAND_ID_HANDLER(IDOK, OnOK)
MESSAGE_HANDLER(WM_HELP, OnHelp) MESSAGE_HANDLER(WM_CONTEXTMENU, OnContextMenu)
MESSAGE_HANDLER(WM_NEWDIALOG, OnNewDialog)
CHAIN_MSG_MAP(baseClass) END_MSG_MAP()
protected: LRESULT OnInitDialog(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnCancel(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled); LRESULT OnOK(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled); LRESULT OnHelp(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnContextMenu(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled); LRESULT OnNewDialog(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
protected: void AppendString(HWND hwndEC, LPCSTR pszString); void AddSeparator(HWND hwndEC, BOOL fAppendToEnd); void InitPleaseDialog( PleaseDlgData * pdd ); void EndPleaseDialog( BOOL fRet); HRESULT AddToApprovedSites( BOOL fAlwaysNever, BOOL fSitePage );
protected: BOOL IsPleaseDialog( void ) { ASSERT( m_ppdd ); return ( m_ppdd ? m_ppdd->pPU->fPleaseMom : TRUE ); } BOOL IsDenyDialog( void ) { return ! IsPleaseDialog(); } };
#endif
|