18class SOUI_EXP
SHeaderCtrl :
public TWindowProxy<IHeaderCtrl> {
23 MARGIN_ADJUST_ENABLE = 4,
24 MARGIN_ADJUST_DISABLE = 2,
27 typedef struct SHDITEMEX :
public SHDITEM
56 (THIS_
int iItem, LPCTSTR pszText,
int nWidth, UINT fmt, LPARAM lParam, BOOL bDpiAware = FALSE,
float fWeight = 0.0f) OVERRIDE;
70 (THIS_
int iItem, LPCSTR pszText,
int nWidth, UINT fmt, LPARAM lParam, BOOL bDpiAware = FALSE,
float fWeight = 0.0f) OVERRIDE
72 SStringT str = S_CA2T(pszText, CP_UTF8);
73 return InsertItem(iItem, str, nWidth, fmt, lParam, bDpiAware, fWeight);
82 STDMETHOD_(BOOL, GetItem)(THIS_
int iItem, SHDITEM *pItem) SCONST OVERRIDE;
90 STDMETHOD_(BOOL, SetItem)(THIS_
int iItem,
const SHDITEM *pItem) OVERRIDE;
96 STDMETHOD_(UINT, GetItemCount)(THIS) SCONST OVERRIDE;
103 STDMETHOD_(
int, GetTotalWidth)(THIS_ BOOL bMinWid = FALSE) SCONST OVERRIDE;
109 STDMETHOD_(BOOL, IsAutoResize)(THIS) SCONST OVERRIDE;
116 STDMETHOD_(
int, GetItemWidth)(THIS_
int iItem) SCONST OVERRIDE;
123 STDMETHOD_(BOOL, DeleteItem)(THIS_
int iItem) OVERRIDE;
128 STDMETHOD_(
void, DeleteAllItems)(THIS) OVERRIDE;
135 STDMETHOD_(
void, SetItemSort)(THIS_
int iItem, UINT sortFlag) OVERRIDE;
142 STDMETHOD_(
void, SetItemVisible)(THIS_
int iItem, BOOL visible) OVERRIDE;
149 STDMETHOD_(BOOL, IsItemVisible)(THIS_
int iItem) SCONST OVERRIDE;
156 STDMETHOD_(
int, GetOriItemIndex)(CTHIS_
int iOrder) SCONST OVERRIDE;
163 STDMETHOD_(
void, GetItemRect)(CTHIS_
int iItem, LPRECT prc) SCONST OVERRIDE;
171 CRect GetItemRect(
int iItem)
const;
174 ATTR_SKIN(L
"itemSkin", m_pSkinItem, FALSE)
175 ATTR_SKIN(L
"sortSkin", m_pSkinSort, FALSE)
176 ATTR_INT(L
"fixWidth", m_bFixWidth, FALSE)
177 ATTR_INT(L
"itemSwapEnable", m_bItemSwapEnable, FALSE)
178 ATTR_INT(L
"sortHeader", m_bSortHeader, FALSE)
187 virtual BOOL CreateChildren(
SXmlNode xmlNode);
194 virtual BOOL OnSetCursor(const CPoint &pt);
208 virtual
void DrawItem(
IRenderTarget *pRT, CRect rcItem, const LPSHDITEMEX pItem);
214 virtual
void OnColorize(COLORREF cr);
220 virtual HRESULT OnLanguageChanged();
226 virtual
void OnScaleChanged(
int nScale);
233 virtual BOOL OnRelayout(const CRect &rcWnd);
240 DWORD HitTest(CPoint pt);
246 void RedrawItem(
int iItem);
252 void DrawDraggingState(DWORD dwDragTo);
261 return dwHitTest != -1 && LOWORD(dwHitTest) == HIWORD(dwHitTest);
269 HBITMAP CreateDragImage(UINT iItem);
307 void OnActivateApp(BOOL bActive, DWORD dwThreadID);
310 MSG_WM_PAINT_EX(OnPaint)
311 MSG_WM_LBUTTONDOWN(OnLButtonDown)
312 MSG_WM_LBUTTONUP(OnLButtonUp)
313 MSG_WM_MOUSEMOVE(OnMouseMove)
314 MSG_WM_MOUSELEAVE(OnMouseLeave)
315 MSG_WM_ACTIVATEAPP(OnActivateApp)
316 MSG_WM_DESTROY(OnDestroy)
Class for handling text with translation support.