Windows-Server-2003/net/wlbs/nlbmgr/exe2/detailsview.h

120 lines
2.8 KiB
C++

//***************************************************************************
//
// DETAILSVIEW.H
//
// Module: NLB Manager (client-side exe)
//
// Purpose: The (right hand side) view of details of something selected
// on the left hand side.
//
// Copyright (c)2001 Microsoft Corporation, All Rights Reserved
//
// History:
//
// 07/25/01 JosephJ Created, from the now defunct RightTopView.
//
//***************************************************************************
#pragma once
#include "stdafx.h"
#include "Document.h"
class DetailsView : public CFormView
{
DECLARE_DYNCREATE( DetailsView )
void SetFocus(void);
protected:
DetailsView(void); // protected constructor used by dynamic creation
~DetailsView();
public:
virtual void OnInitialUpdate();
virtual void DoDataExchange(CDataExchange* pDX);
//
// Called to indicate that deinitialization will soon follow.
// After return from this call, the the details view will ignore
// any HandleEngineEvent or HandleLeftViewSelChange requests.
//
void
PrepareToDeinitialize(void)
{
m_fPrepareToDeinitialize = TRUE;
}
void Deinitialize(void);
//
// Update the view because of change relating to a specific instance of
// a specific object type.
//
void
HandleEngineEvent(
IN IUICallbacks::ObjectType objtype,
IN ENGINEHANDLE ehClusterId, // could be NULL
IN ENGINEHANDLE ehObjId,
IN IUICallbacks::EventCode evt
);
//
// Handle a selection change notification from the left (tree) view
//
void
HandleLeftViewSelChange(
IN IUICallbacks::ObjectType objtype,
IN ENGINEHANDLE ehId
);
BOOL m_initialized; // is the dialog initialized?
afx_msg void OnSize( UINT nType, int cx, int cy );
void Resize();
protected:
Document* GetDocument();
afx_msg void OnColumnClick( NMHDR* pNMHDR, LRESULT* pResult );
afx_msg void OnNotifyKeyDown( NMHDR* pNMHDR, LRESULT* pResult );
private:
bool m_sort_ascending;
int m_sort_column;
ENGINEHANDLE m_ehObj; // currently displayed obj
IUICallbacks::ObjectType m_objType; // it's type.
CListCtrl m_ListCtrl;
CListCtrl&
GetListCtrl(void)
{
return m_ListCtrl;
}
VOID
mfn_UpdateCaption(LPCWSTR szText);
void
mfn_InitializeRootDisplay(VOID);
void
mfn_InitializeClusterDisplay(ENGINEHANDLE ehCluster);
void
mfn_InitializeInterfaceDisplay(ENGINEHANDLE ehInterface);
void
mfn_UpdateInterfaceInClusterDisplay(ENGINEHANDLE ehInterface, BOOL fDelete);
void
mfn_Clear(void);
CRITICAL_SECTION m_crit;
BOOL m_fPrepareToDeinitialize;
void mfn_Lock(void);
void mfn_Unlock(void) {LeaveCriticalSection(&m_crit);}
DECLARE_MESSAGE_MAP()
};