23 template<typename TParam,
t_size paramCount>
CDialogResizeHelper(const TParam (& src)[paramCount],CRect const& minMaxRange = CRect(0,0,0,0)) {
32 bool EvalRect(UINT
id, CRect & out)
const;
37 void OnSize(UINT nType, CSize size);
54 CHAIN_MSG_MAP_MEMBER(m_tracker)
64 #define REDRAW_DIALOG_ON_RESIZE() if (uMsg == WM_SIZE) RedrawWindow(NULL, NULL, RDW_INVALIDATE | RDW_ERASE | RDW_ALLCHILDREN); void set_min_size(unsigned x, unsigned y)
pfc::map_t< UINT, CRect > m_origRects
bool EvalRect(UINT id, CRect &out) const
void InitMinMax(const CRect &range)
CDialogResizeHelperTracking(const TParam(&src)[paramCount], CRect const &minMaxRange, TCfgVar &cfgVar)
void OnGetMinMaxInfo(LPMINMAXINFO lpMMI) const
bool _EvalRect(t_size index, CSize wndSize, CRect &out) const
pfc::array_t< Param > m_table
void set_max_size(unsigned x, unsigned y)
void InitTable(const Param *table, t_size tableSize)
CDialogResizeHelperTracking< cfgDialogSizeTracker > CDialogResizeHelperST
CDialogResizeHelperTracking< cfgDialogPositionTracker > CDialogResizeHelperPT
void OnSize(UINT nType, CSize size)
dialog_resize_helper::param ParamOld
void OnInitDialog(CWindow thisWnd)
MSG_WM_SIZE(OnSize) MSG_WM_DESTROY(OnDestroy) MSG_WM_GETMINMAXINFO(OnGetMinMaxInfo) END_MSG_MAP() template< typename TParam
BEGIN_MSG_MAP_EX(CDialogResizeHelper) if(uMsg