82 lines
1.8 KiB
C++
82 lines
1.8 KiB
C++
//=======================================================================
|
|
//
|
|
// Copyright (c) 1998-1999 Microsoft Corporation. All Rights Reserved.
|
|
//
|
|
// File: Selection.h
|
|
//
|
|
// Owner: CharlMa
|
|
//
|
|
// Description:
|
|
//
|
|
// interface for the CSelection class. It implements
|
|
// a collection of type CORP_SELECTION, used to
|
|
// record the selected (checked) status of items in the
|
|
// corporate catalog.
|
|
//
|
|
// structure type CORP_SELECTOIN is also defined here
|
|
//
|
|
//=======================================================================
|
|
// Selection.h: interface for the CSelection class.
|
|
//
|
|
//////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef _SELECTION_H_INCLUDED_
|
|
|
|
|
|
typedef struct _CORP_SELECTION
|
|
{
|
|
PUID puid;
|
|
DWORD dwLocale;
|
|
enumV3Platform platform;
|
|
BOOL bSelected;
|
|
int iStatus; //installation status
|
|
HRESULT hrError; //installation error code
|
|
} CORP_SELECTION, *PCORP_SELECTION;
|
|
|
|
|
|
class CSelections
|
|
{
|
|
public:
|
|
CSelections();
|
|
CSelections(int iSize);
|
|
|
|
~CSelections();
|
|
|
|
//
|
|
// adjust the collection size
|
|
//
|
|
HRESULT SetCollectionSize(int iSize);
|
|
void Clear(void);
|
|
|
|
//
|
|
// add a new item to the selection collection
|
|
//
|
|
HRESULT AddItem(PUID puid, DWORD dwLocale, enumV3Platform platform, BOOL bSelected);
|
|
HRESULT AddItem(CORP_SELECTION Item);
|
|
|
|
//
|
|
// retrive item information from collection
|
|
//
|
|
inline int GetCount(void) { return m_iCount; };
|
|
PCORP_SELECTION GetItem(int Index);
|
|
inline BOOL isItemChecked(int Index)
|
|
{return m_pSelections[Index].bSelected; };
|
|
|
|
//
|
|
// modify the selection status of one item
|
|
//
|
|
HRESULT SetItemSelection(int index, BOOL bSelected);
|
|
HRESULT SetItemErrorCode(int index, HRESULT hr);
|
|
|
|
private:
|
|
|
|
PCORP_SELECTION m_pSelections;
|
|
int m_iSize;
|
|
int m_iCount;
|
|
};
|
|
|
|
|
|
|
|
#define _SELECTION_H_INCLUDED_
|
|
#endif // !defined(_SELECTION_H_INCLUDED_)
|