windows-nt/Source/XPSP1/NT/admin/activec/nodemgr/ccomboex.h
2020-09-26 16:20:57 +08:00

79 lines
1.8 KiB
C++

//+-------------------------------------------------------------------------
//
// Microsoft Windows
//
// Copyright (C) Microsoft Corporation, 1999 - 1999
//
// File: ccomboex.h
//
//--------------------------------------------------------------------------
// ccomboex.h - Class wrapper for ComboBoxEx control
#ifndef _CCOMBOEX_H_
#define _CCOMBOEX_H_
class CComboBoxEx2 : public WTL::CComboBox
{
public:
WTL::CImageList SetImageList ( WTL::CImageList ImageList );
int InsertItem ( COMBOBOXEXITEM* pItem );
int DeleteItem ( int iItem );
BOOL GetItem ( COMBOBOXEXITEM* pItem );
int FindItem ( COMBOBOXEXITEM* pItem, int nStart = -1 );
int FindNextBranch ( int iItem );
void DeleteBranch ( int iItem );
HWND GetComboControl( void );
void FixUp( void );
};
inline WTL::CImageList CComboBoxEx2::SetImageList( WTL::CImageList ImageList)
{
ASSERT(::IsWindow(m_hWnd));
HIMAGELIST himlOld = (HIMAGELIST) SendMessage(CBEM_SETIMAGELIST, 0, (LPARAM)(ImageList.m_hImageList));
return (WTL::CImageList (himlOld));
}
inline int CComboBoxEx2::InsertItem(COMBOBOXEXITEM* pItem)
{
ASSERT(::IsWindow(m_hWnd));
ASSERT(pItem != NULL);
return SendMessage(CBEM_INSERTITEM, (WPARAM)0, (LPARAM)pItem);
}
inline int CComboBoxEx2::DeleteItem(int iItem)
{
ASSERT(::IsWindow(m_hWnd));
return SendMessage(CBEM_DELETEITEM, (WPARAM)iItem, (LPARAM)0);
}
inline BOOL CComboBoxEx2::GetItem(COMBOBOXEXITEM* pItem)
{
ASSERT(::IsWindow(m_hWnd));
ASSERT(pItem != NULL);
return SendMessage(CBEM_GETITEM, (WPARAM)0, (LPARAM)pItem);
}
inline HWND CComboBoxEx2::GetComboControl(void)
{
ASSERT(::IsWindow(m_hWnd));
return (HWND)SendMessage(CBEM_GETCOMBOCONTROL, (WPARAM)0, (LPARAM)0);
}
#endif // _CCOMBOEX_H_