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.
|
|
/////////////////////////////////////////////////////////////////////////////
//
// Copyright (c) 1996-1997 Microsoft Corporation
//
// Module Name:
// BarfDlg.h
//
// Abstract:
// Definition of the Basic Artifical Resource Failure dialog classes.
//
// Implementation File:
// BarfDlg.cpp
//
// Author:
// David Potter (davidp) April 11, 1997
//
// Revision History:
//
// Notes:
// This file compiles only in _DEBUG mode.
//
// To implement a new BARF type, declare a global instance of CBarf:
// CBarf g_barfMyApi(_T("My API"));
//
// To bring up the BARF dialog:
// DoBarfDialog();
// This brings up a modeless dialog with the BARF settings.
//
// A few functions are provided for special circumstances.
// Usage of these should be fairly limited:
// BarfAll(void); Top Secret -> NYI.
// EnableBarf(BOOL); Allows you to disable/reenable BARF.
// FailOnNextBarf; Force the next failable call to fail.
//
// NOTE: Your code calls the standard APIs (e.g. LoadIcon) and the
// BARF files do the rest.
//
/////////////////////////////////////////////////////////////////////////////
#ifndef _BARFDLG_H_
#define _BARFDLG_H_
/////////////////////////////////////////////////////////////////////////////
// Forward Class Declarations
/////////////////////////////////////////////////////////////////////////////
class CBarfDialog; class CBarfAllDialog;
/////////////////////////////////////////////////////////////////////////////
// External Class Declarations
/////////////////////////////////////////////////////////////////////////////
class CBarf;
/////////////////////////////////////////////////////////////////////////////
// Include Files
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
//
// class CBarfDialog
//
// Purpose:
// Implements the BARF Settings dialog
//
// Usage:
// Use the constructor, then Create().
// Update() is called by CBarf::BFail() to indicate
// one of the current counts has changed.
//
/////////////////////////////////////////////////////////////////////////////
#ifdef _DEBUG
class CBarfDialog : public CDialog { // Construction
public: CBarfDialog(void); BOOL Create(CWnd * pParentWnd = NULL);
// Dialog Data
//{{AFX_DATA(CBarfDialog)
enum { IDD = IDD_BARF_SETTINGS }; CButton m_ckbGlobalEnable; CButton m_ckbDisable; CButton m_ckbContinuous; CListCtrl m_lcCategories; DWORD m_nFailAt; BOOL m_bContinuous; BOOL m_bDisable; BOOL m_bGlobalEnable; //}}AFX_DATA
// CButton m_ckbGlobalEnable;
// CButton m_ckbDisable;
// CButton m_ckbContinuous;
// CListCtrl m_lcCategories;
// DWORD m_nFailAt;
// BOOL m_bContinuous;
// BOOL m_bDisable;
// BOOL m_bGlobalEnable;
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CBarfDialog)
protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
virtual void PostNcDestroy(); //}}AFX_VIRTUAL
// Implementation
protected:
private: static CBarfDialog * s_pdlg; static HICON s_hicon;
protected: CBarf * m_pbarfSelected;
// Generated message map functions
//{{AFX_MSG(CBarfDialog)
virtual BOOL OnInitDialog(); afx_msg void OnResetCurrentCount(); afx_msg void OnResetAllCounts(); afx_msg void OnGlobalEnable(); afx_msg void OnItemChanged(NMHDR* pNMHDR, LRESULT* pResult); afx_msg void OnStatusChange(); afx_msg void OnClose(); //}}AFX_MSG
virtual void OnCancel(); afx_msg LRESULT OnBarfUpdate(WPARAM wparam, LPARAM lparam); DECLARE_MESSAGE_MAP()
// virtual LRESULT LDlgProc(UINT, WPARAM, LPARAM);
// void GetSelection(void);
// void OnGlobalEnable(void);
// void OnResetAllCounts(void);
// void OnSelectionChange(void);
// void OnStatusChange(IN BOOL bReset);
// void FormatBarfString(CBarf *, CString * pstr);
void FillList(void);
static void PostUpdate(void);
public: static CBarfDialog * Pdlg() { return s_pdlg; } void OnUpdate(void);
}; //*** class CBarfDialog
#endif // _DEBUG
/////////////////////////////////////////////////////////////////////////////
//
// class CBarfAllDialog
//
// Purpose:
// Implements the Barf Everything dialog.
//
// Usage:
// Similar to most Modal dialogs: Construct, then do dlg.DoModal()
// In addition, the methods Hwnd(), Wm(), Wparam() and Lparam()
// can be called when the dialog is dismissed (only if DoModal()
// returns IDOK).
//
/////////////////////////////////////////////////////////////////////////////
#ifdef _DEBUG
class CBarfAllDialog : public CDialog { // Construction
public: CBarfAllDialog(IN OUT CWnd * pParent);
protected: // Dialog Data
//{{AFX_DATA(CBarfAllDialog)
enum { IDD = IDD_BARF_ALL_SETTINGS }; CEdit m_editLparam; CEdit m_editWparam; CEdit m_editWm; CEdit m_editHwnd; //}}AFX_DATA
HWND m_hwndBarf; UINT m_wmBarf; WPARAM m_wparamBarf; LPARAM m_lparamBarf;
public: HWND HwndBarf(void) { return m_hwndBarf; } UINT WmBarf(void) { return m_wmBarf; } WPARAM WparamBarf(void) { return m_wparamBarf; } LPARAM LparamBarf(void) { return m_lparamBarf; }
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CBarfAllDialog)
protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CBarfAllDialog)
virtual BOOL OnInitDialog(); afx_msg void OnMenuItem(); virtual void OnOK(); //}}AFX_MSG
DECLARE_MESSAGE_MAP()
// virtual void OnButton(ID id);
// virtual void OnOK(void);
}; //*** class CBarfAllDialog
#endif // _DEBUG
/////////////////////////////////////////////////////////////////////////////
// Global Functions and Data
/////////////////////////////////////////////////////////////////////////////
#ifdef _DEBUG
void DoBarfDialog(void); void BarfAll(void);
#else
inline void DoBarfDialog(void) { } inline void BarfAll(void) { }
#endif // _DEBUG
/////////////////////////////////////////////////////////////////////////////
#endif // _BARFDLG_H_
|