windows-nt/Source/XPSP1/NT/termsrv/admtools/winutils/tsadmin/servpgs.h

413 lines
11 KiB
C
Raw Normal View History

2020-09-26 03:20:57 -05:00
/*******************************************************************************
*
* servpgs.h
*
* - declarations for the Server info pages
* - the server info pages are all CFormView derivatives
* based on dialog templates
*
* copyright notice: Copyright 1997, Citrix Systems Inc.
* Copyright (c) 1998 - 1999 Microsoft Corporation
*
* $Author: donm $ Don Messerli
*
* $Log: N:\nt\private\utils\citrix\winutils\winadmin\VCS\servpgs.h $
*
* Rev 1.2 03 Nov 1997 15:30:16 donm
* added descending sort
*
* Rev 1.1 13 Oct 1997 18:39:42 donm
* update
*
* Rev 1.0 30 Jul 1997 17:12:32 butchd
* Initial revision.
*
*******************************************************************************/
#ifndef _SERVERPAGES_H
#define _SERVERPAGES_H
#include "Resource.h"
#ifndef __AFXEXT_H__
#include <afxext.h>
#endif
#include "winadmin.h"
//////////////////////////
// CLASS: CUsersPage
//
class CUsersPage : public CAdminPage
{
friend class CServerView;
protected:
CUsersPage(); // protected constructor used by dynamic creation
DECLARE_DYNCREATE(CUsersPage)
// Form Data
public:
//{{AFX_DATA(CUsersPage)
enum { IDD = IDD_SERVER_USERS };
CListCtrl m_UserList;
//}}AFX_DATA
// Attributes
public:
protected:
CImageList m_ImageList; // image list associated with the tree control
int m_idxUser; // index of User image
int m_idxCurrentUser; // index of Current User image
private:
CServer* m_pServer; // pointer to current server's info
int m_CurrentSortColumn;
BOOL m_bSortAscending;
CCriticalSection m_ListControlCriticalSection;
// Operations
public:
void UpdateWinStations(CServer *pServer);
virtual void ClearSelections();
private:
int AddIconToImageList(int); // adds an icon's image to the image list and returns the image's index
void BuildImageList(); // builds the image list;
void DisplayUsers();
virtual void Reset(void *pServer);
int AddUserToList(CWinStation *pWinStation);
void LockListControl() { m_ListControlCriticalSection.Lock(); }
void UnlockListControl() { m_ListControlCriticalSection.Unlock(); }
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CUsersPage)
public:
virtual void OnInitialUpdate();
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CUsersPage();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
// Generated message map functions
//{{AFX_MSG(CUsersPage)
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnUserItemChanged(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnColumnClick(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
afx_msg void OnSetfocusUserList(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnKillfocusUserList(NMHDR* pNMHDR, LRESULT* pResult);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
}; // end class CUsersPage
//////////////////////////
// CLASS: CServerWinStationsPage
//
class CServerWinStationsPage : public CAdminPage
{
friend class CServerView;
protected:
CServerWinStationsPage(); // protected constructor used by dynamic creation
DECLARE_DYNCREATE(CServerWinStationsPage)
// Form Data
public:
//{{AFX_DATA(CServerWinStationsPage)
enum { IDD = IDD_SERVER_WINSTATIONS };
CListCtrl m_StationList;
//}}AFX_DATA
// Attributes
public:
protected:
CImageList m_ImageList; // image list associated with the tree control
int m_idxBlank; // index of Blank image
int m_idxCitrix; // index of Citrix image
int m_idxServer; // index of Server image
int m_idxConsole; // index of Console image
int m_idxNet; // index of Net image
int m_idxAsync; // index of Async image
int m_idxCurrentNet; // index of Current Net image
int m_idxCurrentConsole;// index of Current Console image
int m_idxCurrentAsync; // index of Current Async image
int m_idxDirectAsync; // index of Direct Async image
int m_idxCurrentDirectAsync; // index of Current Direct Async image
private:
CServer* m_pServer; // pointer to current server's info
int m_CurrentSortColumn;
BOOL m_bSortAscending;
CCriticalSection m_ListControlCriticalSection;
// Operations
public:
void UpdateWinStations(CServer *pServer);
virtual void ClearSelections();
private:
int AddIconToImageList(int); // adds an icon's image to the image list and returns the image's index
void BuildImageList(); // builds the image list;
void DisplayStations();
virtual void Reset(void *pServer);
int AddWinStationToList(CWinStation *pWinStation);
void LockListControl() { m_ListControlCriticalSection.Lock(); }
void UnlockListControl() { m_ListControlCriticalSection.Unlock(); }
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CServerWinStationsPage)
public:
virtual void OnInitialUpdate();
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CServerWinStationsPage();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
// Generated message map functions
//{{AFX_MSG(CServerWinStationsPage)
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnWinStationItemChanged(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnColumnClick(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
afx_msg void OnSetfocusWinstationList(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnKillfocusWinstationList(NMHDR* pNMHDR, LRESULT* pResult);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
}; // end class CServerWinStationsPage
////////////////////////////
// CLASS: CServerProcessesPage
//
class CServerProcessesPage : public CAdminPage
{
friend class CServerView;
protected:
CServerProcessesPage(); // protected constructor used by dynamic creation
DECLARE_DYNCREATE(CServerProcessesPage)
// Form Data
public:
//{{AFX_DATA(CServerProcessesPage)
enum { IDD = IDD_SERVER_PROCESSES };
CListCtrl m_ProcessList;
//}}AFX_DATA
// Attributes
public:
private:
CServer *m_pServer;
int m_CurrentSortColumn;
BOOL m_bSortAscending;
CCriticalSection m_ListControlCriticalSection;
// Operations
public:
void UpdateProcesses();
void RemoveProcess(CProcess *pProcess);
private:
void DisplayProcesses();
virtual void Reset(void *pServer);
int AddProcessToList(CProcess *pProcess);
void LockListControl() { m_ListControlCriticalSection.Lock(); }
void UnlockListControl() { m_ListControlCriticalSection.Unlock(); }
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CServerProcessesPage)
public:
virtual void OnInitialUpdate();
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CServerProcessesPage();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
// Generated message map functions
//{{AFX_MSG(CServerProcessesPage)
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnColumnClick(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnProcessItemChanged(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
afx_msg void OnSetfocusProcessList(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnKillfocusProcessList(NMHDR* pNMHDR, LRESULT* pResult);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
}; // end class CServerProcessesPage
//////////////////////////
// CLASS: CServerLicensesPage
//
class CServerLicensesPage : public CAdminPage
{
friend class CServerView;
protected:
CServerLicensesPage(); // protected constructor used by dynamic creation
DECLARE_DYNCREATE(CServerLicensesPage)
// Form Data
public:
//{{AFX_DATA(CServerLicencesPage)
enum { IDD = IDD_SERVER_LICENSES };
CListCtrl m_LicenseList;
//}}AFX_DATA
// Attributes
public:
protected:
CImageList m_ImageList; // image list associated with the tree control
int m_idxBase; // index of Base image
int m_idxBump; // index of Bump image
int m_idxEnabler; // index of Enabler image
int m_idxUnknown; // index of Unknown image
int m_idxBlank; // index of Blank image
private:
CServer* m_pServer; // pointer to current server's info
int m_CurrentSortColumn;
BOOL m_bSortAscending;
// Operations
public:
private:
int AddIconToImageList(int); // adds an icon's image to the image list and returns the image's index
void BuildImageList(); // builds the image list;
void DisplayLicenses();
void DisplayLicenseCounts();
virtual void Reset(void *pServer);
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CServerLicensesPage)
public:
virtual void OnInitialUpdate();
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CServerLicensesPage();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
// Generated message map functions
//{{AFX_MSG(CServerLicensesPage)
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnColumnClick(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnSetfocusLicenseList(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnKillfocusLicenseList(NMHDR* pNMHDR, LRESULT* pResult);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
}; // end class CServerLicensesPage
//////////////////////////
// CLASS: CServerInfoPage
//
class CServerInfoPage : public CAdminPage
{
friend class CServerView;
protected:
CServerInfoPage(); // protected constructor used by dynamic creation
DECLARE_DYNCREATE(CServerInfoPage)
// Form Data
public:
//{{AFX_DATA(CServerInfoPage)
enum { IDD = IDD_SERVER_INFO };
CListCtrl m_HotfixList;
//}}AFX_DATA
// Attributes
public:
protected:
CImageList m_StateImageList;
int m_idxNotSign; // index of Not Sign image (for non-valid hotfixes - state)
private:
CServer* m_pServer; // pointer to current server's info
int m_CurrentSortColumn;
BOOL m_bSortAscending;
// Operations
public:
private:
void DisplayInfo();
virtual void Reset(void *pServer);
void BuildImageList(); // builds the image list;
void TSAdminDateTimeString(LONG InstallDate, LPTSTR TimeString, BOOL LongDate=FALSE);
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CServerInfoPage)
public:
virtual void OnInitialUpdate();
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CServerInfoPage();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
// Generated message map functions
//{{AFX_MSG(CServerInfoPage)
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnColumnClick(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnSetfocusHotfixList(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnKillfocusHotfixList(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnCommandHelp(void);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
}; // end class CServerInfoPage
#endif // _SERVERPAGES_H