Mercurial > foo_out_sdl
comparison foosdk/sdk/libPPUI/CListControlTruncationTooltipImpl.h @ 1:20d02a178406 default tip
*: check in everything else
yay
| author | Paper <paper@tflc.us> |
|---|---|
| date | Mon, 05 Jan 2026 02:15:46 -0500 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 0:e9bb126753e7 | 1:20d02a178406 |
|---|---|
| 1 #pragma once | |
| 2 | |
| 3 class CListControlTruncationTooltipImpl : public CListControlHeaderImpl { | |
| 4 private: | |
| 5 typedef CListControlHeaderImpl TParent; | |
| 6 public: | |
| 7 CListControlTruncationTooltipImpl(); | |
| 8 | |
| 9 BEGIN_MSG_MAP_EX(CListControlTruncationTooltipImpl) | |
| 10 MESSAGE_HANDLER(WM_MOUSEHOVER,OnHover); | |
| 11 MESSAGE_HANDLER(WM_MOUSEMOVE,OnMouseMovePassThru); | |
| 12 MESSAGE_HANDLER(WM_TIMER,OnTimer); | |
| 13 MESSAGE_HANDLER(WM_DESTROY,OnDestroyPassThru); | |
| 14 CHAIN_MSG_MAP(TParent) | |
| 15 NOTIFY_CODE_HANDLER(TTN_GETDISPINFO,OnTTGetDispInfo); | |
| 16 NOTIFY_CODE_HANDLER(TTN_POP,OnTTPop); | |
| 17 NOTIFY_CODE_HANDLER(TTN_SHOW,OnTTShow); | |
| 18 END_MSG_MAP() | |
| 19 | |
| 20 void OnViewOriginChange(CPoint p_delta) override {TParent::OnViewOriginChange(p_delta);TooltipRemove();} | |
| 21 void TooltipRemove(); | |
| 22 virtual void RefreshDarkMode(); | |
| 23 protected: | |
| 24 virtual bool GetTooltipData( CPoint ptAbs, pfc::string_base & text, CRect & rc, CFontHandle & font) const; | |
| 25 private: | |
| 26 enum { | |
| 27 KTooltipTimer = 0x51dbee9e, | |
| 28 KTooltipTimerDelay = 50, | |
| 29 }; | |
| 30 LRESULT OnHover(UINT,WPARAM,LPARAM,BOOL&); | |
| 31 LRESULT OnMouseMovePassThru(UINT,WPARAM,LPARAM,BOOL&); | |
| 32 LRESULT OnTimer(UINT,WPARAM,LPARAM,BOOL&); | |
| 33 LRESULT OnTTGetDispInfo(int,LPNMHDR,BOOL&); | |
| 34 LRESULT OnTTShow(int,LPNMHDR,BOOL&); | |
| 35 LRESULT OnTTPop(int,LPNMHDR,BOOL&); | |
| 36 LRESULT OnDestroyPassThru(UINT,WPARAM,LPARAM,BOOL&); | |
| 37 | |
| 38 void InitTooltip(); | |
| 39 void TooltipActivateAbs(const char * label, const CRect & rect); | |
| 40 void TooltipActivate(const char * label, const CRect & rect); | |
| 41 void TooltipRemoveCheck(LPARAM pos); | |
| 42 void TooltipRemoveCheck(); | |
| 43 void TooltipUpdateFont(); | |
| 44 void OnSetFont(bool) override {TooltipUpdateFont();} | |
| 45 bool IsRectFullyVisibleAbs(CRect const & r); | |
| 46 bool IsRectPartiallyObscuredAbs(CRect const & r) const; | |
| 47 CRect m_tooltipRect; | |
| 48 CToolTipCtrl m_tooltip; | |
| 49 TOOLINFO m_toolinfo; | |
| 50 pfc::stringcvt::string_os_from_utf8 m_tooltipText; | |
| 51 CFontHandle m_tooltipFont; | |
| 52 }; |
