windows-nt/Source/XPSP1/NT/base/cluster/admin/cluadmin/barfdlg.h

244 lines
5.9 KiB
C
Raw Normal View History

2020-09-26 03:20:57 -05:00
/////////////////////////////////////////////////////////////////////////////
//
// 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_