mirror of https://github.com/tongzx/nt5src
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
368 lines
8.7 KiB
368 lines
8.7 KiB
/*--------------------------------------------------------------------------*
|
|
*
|
|
* Microsoft Windows
|
|
* Copyright (C) Microsoft Corporation, 1992 - 00
|
|
*
|
|
* File: controls.inl
|
|
*
|
|
* Contents: Inline functions for controls.h
|
|
*
|
|
* History: 7-Jul-2000 jeffro Created
|
|
*
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
#pragma once
|
|
|
|
|
|
/*+-------------------------------------------------------------------------*
|
|
* CToolBarCtrlBase inline functions
|
|
*
|
|
*
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
inline CImageList* CToolBarCtrlBase::GetImageList_(int msg)
|
|
{
|
|
return (CImageList::FromHandle ((HIMAGELIST) SendMessage (msg)));
|
|
}
|
|
|
|
// Toolbar with multiple imagelists.
|
|
inline CImageList* CToolBarCtrlBase::SetImageList_(int msg, CImageList* pImageList, int idImageList)
|
|
{
|
|
return (CImageList::FromHandle ((HIMAGELIST) SendMessage (msg, idImageList, (LPARAM)pImageList->GetSafeHandle())));
|
|
}
|
|
|
|
inline CImageList* CToolBarCtrlBase::GetImageList()
|
|
{
|
|
return (GetImageList_(TB_GETIMAGELIST));
|
|
}
|
|
|
|
// Toolbar with multiple imagelists.
|
|
inline CImageList* CToolBarCtrlBase::SetImageList(CImageList* pImageList, int idImageList)
|
|
{
|
|
return (SetImageList_(TB_SETIMAGELIST, pImageList, idImageList));
|
|
}
|
|
|
|
inline CImageList* CToolBarCtrlBase::GetHotImageList()
|
|
{
|
|
return (GetImageList_(TB_GETHOTIMAGELIST));
|
|
}
|
|
|
|
inline CImageList* CToolBarCtrlBase::SetHotImageList(CImageList* pImageList)
|
|
{
|
|
return (SetImageList_(TB_SETHOTIMAGELIST, pImageList));
|
|
}
|
|
|
|
inline CImageList* CToolBarCtrlBase::GetDisabledImageList()
|
|
{
|
|
return (GetImageList_(TB_GETDISABLEDIMAGELIST));
|
|
}
|
|
|
|
inline CImageList* CToolBarCtrlBase::SetDisabledImageList(CImageList* pImageList)
|
|
{
|
|
return (SetImageList_(TB_SETDISABLEDIMAGELIST, pImageList));
|
|
}
|
|
|
|
inline void CToolBarCtrlBase::SetMaxTextRows(int iMaxRows)
|
|
{
|
|
SendMessage (TB_SETMAXTEXTROWS, iMaxRows);
|
|
}
|
|
|
|
inline void CToolBarCtrlBase::SetButtonWidth(int cxMin, int cxMax)
|
|
{
|
|
SendMessage (TB_SETBUTTONWIDTH, 0, MAKELPARAM(cxMin, cxMax));
|
|
}
|
|
|
|
inline DWORD CToolBarCtrlBase::GetButtonSize(void)
|
|
{
|
|
return SendMessage (TB_GETBUTTONSIZE);
|
|
}
|
|
|
|
inline CWnd* CToolBarCtrlBase::SetOwner(CWnd* pwndNewParent)
|
|
{
|
|
return (CWnd::FromHandle ((HWND) SendMessage (TB_SETPARENT, (WPARAM) pwndNewParent->GetSafeHwnd())));
|
|
}
|
|
|
|
#if (_WIN32_IE >= 0x0400)
|
|
inline int CToolBarCtrlBase::GetHotItem ()
|
|
{
|
|
return (SendMessage (TB_GETHOTITEM));
|
|
}
|
|
|
|
inline int CToolBarCtrlBase::SetHotItem (int iHot)
|
|
{
|
|
return (SendMessage (TB_SETHOTITEM, iHot));
|
|
}
|
|
|
|
inline CSize CToolBarCtrlBase::GetPadding ()
|
|
{
|
|
return (CSize (SendMessage (TB_GETPADDING)));
|
|
}
|
|
|
|
inline CSize CToolBarCtrlBase::SetPadding (CSize size)
|
|
{
|
|
return (CSize (SendMessage (TB_SETPADDING, 0, MAKELPARAM (size.cx, size.cy))));
|
|
}
|
|
|
|
inline bool CToolBarCtrlBase::GetButtonInfo (int iID, LPTBBUTTONINFO ptbbi)
|
|
{
|
|
return (SendMessage (TB_GETBUTTONINFO, iID, (LPARAM) ptbbi) != 0);
|
|
}
|
|
|
|
inline bool CToolBarCtrlBase::SetButtonInfo (int iID, LPTBBUTTONINFO ptbbi)
|
|
{
|
|
return (SendMessage (TB_SETBUTTONINFO, iID, (LPARAM) ptbbi) != 0);
|
|
}
|
|
#endif // _WIN32_IE >= 0x0400
|
|
|
|
|
|
|
|
/*+-------------------------------------------------------------------------*
|
|
* CToolBarCtrlEx inline functions
|
|
*
|
|
*
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
inline BOOL CToolBarCtrlEx::SetBitmapSize(CSize sz)
|
|
{
|
|
if (!BaseClass::SetBitmapSize(sz))
|
|
return (FALSE);
|
|
|
|
m_sizeBitmap = sz;
|
|
return (TRUE);
|
|
}
|
|
|
|
inline CSize CToolBarCtrlEx::GetBitmapSize(void)
|
|
{
|
|
return m_sizeBitmap;
|
|
}
|
|
|
|
|
|
/*+-------------------------------------------------------------------------*
|
|
* CTabCtrlEx inline functions
|
|
*
|
|
*
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
inline void CTabCtrlEx::DeselectAll (bool fExcludeFocus)
|
|
{
|
|
SendMessage (TCM_DESELECTALL, fExcludeFocus);
|
|
}
|
|
|
|
inline bool CTabCtrlEx::HighlightItem (UINT nItem, bool fHighlight)
|
|
{
|
|
return (SendMessage (TCM_HIGHLIGHTITEM, nItem, MAKELONG (fHighlight, 0)) ? true : false);
|
|
}
|
|
|
|
inline DWORD CTabCtrlEx::GetExtendedStyle ()
|
|
{
|
|
return (SendMessage (TCM_GETEXTENDEDSTYLE));
|
|
}
|
|
|
|
inline DWORD CTabCtrlEx::SetExtendedStyle (DWORD dwExStyle, DWORD dwMask /* =0 */)
|
|
{
|
|
return (SendMessage (TCM_SETEXTENDEDSTYLE, dwMask, dwExStyle));
|
|
}
|
|
|
|
inline bool CTabCtrlEx::GetUnicodeFormat ()
|
|
{
|
|
return (SendMessage (TCM_GETUNICODEFORMAT) ? true : false);
|
|
}
|
|
|
|
inline bool CTabCtrlEx::SetUnicodeFormat (bool fUnicode)
|
|
{
|
|
return (SendMessage (TCM_SETUNICODEFORMAT, fUnicode) ? true : false);
|
|
}
|
|
|
|
inline void CTabCtrlEx::SetCurFocus (UINT nItem)
|
|
{
|
|
SendMessage (TCM_SETCURFOCUS, nItem);
|
|
}
|
|
|
|
inline bool CTabCtrlEx::SetItemExtra (UINT cbExtra)
|
|
{
|
|
return (SendMessage (TCM_SETITEMEXTRA, cbExtra) ? true : false);
|
|
}
|
|
|
|
inline int CTabCtrlEx::SetMinTabWidth (int cx)
|
|
{
|
|
return (SendMessage (TCM_SETMINTABWIDTH, 0, cx));
|
|
}
|
|
|
|
|
|
|
|
/*+-------------------------------------------------------------------------*
|
|
* CRebarWnd inline functions
|
|
*
|
|
*
|
|
*--------------------------------------------------------------------------*/
|
|
|
|
inline LRESULT CRebarWnd::SetBarInfo(REBARINFO* prbi)
|
|
{
|
|
ASSERT (prbi != NULL);
|
|
return SendMessage (RB_SETBARINFO, 0, (LPARAM)prbi);
|
|
}
|
|
|
|
inline LRESULT CRebarWnd::GetBarInfo(REBARINFO* prbi)
|
|
{
|
|
ASSERT (prbi != NULL);
|
|
return SendMessage (RB_GETBARINFO, 0, (LPARAM)prbi);
|
|
}
|
|
|
|
inline LRESULT CRebarWnd::InsertBand(LPREBARBANDINFO lprbbi)
|
|
{
|
|
ASSERT(lprbbi!=NULL);
|
|
return SendMessage (RB_INSERTBAND, -1, (LPARAM)lprbbi);
|
|
}
|
|
|
|
inline LRESULT CRebarWnd::SetBandInfo(UINT uBand, LPREBARBANDINFO lprbbi)
|
|
{
|
|
ASSERT(lprbbi!=NULL);
|
|
return SendMessage (RB_SETBANDINFO, uBand, (LPARAM)lprbbi);
|
|
}
|
|
|
|
inline LRESULT CRebarWnd::GetBandInfo(UINT uBand, LPREBARBANDINFO lprbbi)
|
|
{
|
|
ASSERT(lprbbi!=NULL);
|
|
return SendMessage (RB_GETBANDINFO, uBand, (LPARAM)lprbbi);
|
|
}
|
|
|
|
inline LRESULT CRebarWnd::DeleteBand(UINT uBand)
|
|
{
|
|
return SendMessage (RB_DELETEBAND, uBand);
|
|
}
|
|
|
|
inline CWnd* CRebarWnd::SetParent(CWnd* pwndParent)
|
|
{
|
|
return CWnd::FromHandle((HWND)SendMessage (RB_SETPARENT, (WPARAM) pwndParent->GetSafeHwnd()));
|
|
}
|
|
|
|
inline UINT CRebarWnd::GetBandCount()
|
|
{
|
|
return SendMessage (RB_GETBANDCOUNT);
|
|
}
|
|
|
|
inline UINT CRebarWnd::GetRowCount()
|
|
{
|
|
return SendMessage (RB_GETROWCOUNT);
|
|
}
|
|
|
|
inline UINT CRebarWnd::GetRowHeight(UINT uRow)
|
|
{
|
|
return SendMessage (RB_GETROWHEIGHT);
|
|
}
|
|
|
|
#if (_WIN32_IE >= 0x0400)
|
|
inline int CRebarWnd::HitTest (LPRBHITTESTINFO lprbht)
|
|
{
|
|
ASSERT (lprbht != NULL);
|
|
return SendMessage (RB_HITTEST, 0, (LPARAM) lprbht);
|
|
}
|
|
|
|
inline BOOL CRebarWnd::GetRect (UINT uBand, LPRECT lprc)
|
|
{
|
|
ASSERT (lprc != NULL);
|
|
return SendMessage (RB_GETRECT, uBand, (LPARAM) lprc);
|
|
}
|
|
|
|
inline int CRebarWnd::IdToIndex (UINT uBandID)
|
|
{
|
|
return SendMessage (RB_IDTOINDEX, uBandID);
|
|
}
|
|
|
|
inline CWnd* CRebarWnd::GetToolTips ()
|
|
{
|
|
return CWnd::FromHandle ((HWND)SendMessage (RB_GETTOOLTIPS));
|
|
}
|
|
|
|
inline void CRebarWnd::SetToolTips (CWnd* pwndTips)
|
|
{
|
|
SendMessage (RB_SETTOOLTIPS, (WPARAM) pwndTips->GetSafeHwnd());
|
|
}
|
|
|
|
inline COLORREF CRebarWnd::GetBkColor ()
|
|
{
|
|
return SendMessage (RB_GETBKCOLOR);
|
|
}
|
|
|
|
inline COLORREF CRebarWnd::SetBkColor (COLORREF clrBk)
|
|
{
|
|
return SendMessage (RB_SETBKCOLOR, 0, clrBk);
|
|
}
|
|
|
|
inline COLORREF CRebarWnd::GetTextColor ()
|
|
{
|
|
return SendMessage (RB_GETTEXTCOLOR);
|
|
}
|
|
|
|
inline COLORREF CRebarWnd::SetTextColor (COLORREF clrText)
|
|
{
|
|
return SendMessage (RB_SETTEXTCOLOR, 0, clrText);
|
|
}
|
|
|
|
inline LRESULT CRebarWnd::SizeToRect (LPRECT lprc)
|
|
{
|
|
ASSERT (lprc != NULL);
|
|
return SendMessage (RB_SIZETORECT, 0, (LPARAM) lprc);
|
|
}
|
|
|
|
inline void CRebarWnd::BeginDrag (UINT uBand, CPoint point)
|
|
{
|
|
BeginDrag (uBand, MAKELONG (point.x, point.y));
|
|
}
|
|
|
|
inline void CRebarWnd::BeginDrag (UINT uBand, DWORD dwPos)
|
|
{
|
|
SendMessage (RB_BEGINDRAG, uBand, dwPos);
|
|
}
|
|
|
|
inline void CRebarWnd::EndDrag ()
|
|
{
|
|
SendMessage (RB_ENDDRAG);
|
|
}
|
|
|
|
inline void CRebarWnd::DragMove (CPoint point)
|
|
{
|
|
DragMove (MAKELONG (point.x, point.y));
|
|
}
|
|
|
|
inline void CRebarWnd::DragMove (DWORD dwPos)
|
|
{
|
|
SendMessage (RB_BEGINDRAG, 0, dwPos);
|
|
}
|
|
|
|
inline UINT CRebarWnd::GetBarHeight()
|
|
{
|
|
return SendMessage (RB_GETBARHEIGHT);
|
|
}
|
|
|
|
inline void CRebarWnd::MinimizeBand(UINT uBand)
|
|
{
|
|
SendMessage (RB_MINIMIZEBAND, uBand);
|
|
}
|
|
|
|
inline void CRebarWnd::MaximizeBand(UINT uBand, BOOL fIdeal /* =false */)
|
|
{
|
|
SendMessage (RB_MAXIMIZEBAND, uBand, fIdeal);
|
|
}
|
|
|
|
inline void CRebarWnd::GetBandBorders(UINT uBand, LPRECT lprc)
|
|
{
|
|
ASSERT (lprc != NULL);
|
|
SendMessage (RB_GETBANDBORDERS, uBand, (LPARAM) lprc);
|
|
}
|
|
|
|
inline LRESULT CRebarWnd::ShowBand(UINT uBand, BOOL fShow)
|
|
{
|
|
return SendMessage (RB_SHOWBAND, uBand, fShow);
|
|
}
|
|
|
|
inline CPalette* CRebarWnd::GetPalette()
|
|
{
|
|
return CPalette::FromHandle((HPALETTE) SendMessage (RB_GETPALETTE));
|
|
}
|
|
|
|
inline CPalette* CRebarWnd::SetPalette(CPalette * ppal)
|
|
{
|
|
return CPalette::FromHandle((HPALETTE)SendMessage (RB_SETPALETTE, 0, (LPARAM)ppal->GetSafeHandle()));
|
|
}
|
|
#endif
|