|
1
|
1 #pragma once
|
|
|
2
|
|
|
3 #include "WindowPositionUtils.h"
|
|
|
4
|
|
|
5 #include <libPPUI/CDialogResizeHelper.h>
|
|
|
6
|
|
|
7 template<typename TTracker> class CDialogResizeHelperTracking : public CDialogResizeHelper {
|
|
|
8 public:
|
|
|
9 template<typename TParam, t_size paramCount, typename TCfgVar> CDialogResizeHelperTracking(const TParam (& src)[paramCount],CRect const& minMaxRange, TCfgVar & cfgVar) : CDialogResizeHelper(src, minMaxRange), m_tracker(cfgVar) {}
|
|
|
10
|
|
|
11 BEGIN_MSG_MAP_EX(CDialogResizeHelperST)
|
|
|
12 CHAIN_MSG_MAP(CDialogResizeHelper)
|
|
|
13 CHAIN_MSG_MAP_MEMBER(m_tracker)
|
|
|
14 END_MSG_MAP()
|
|
|
15
|
|
|
16 private:
|
|
|
17 TTracker m_tracker;
|
|
|
18 };
|
|
|
19
|
|
|
20 typedef CDialogResizeHelperTracking<cfgDialogSizeTracker> CDialogResizeHelperST;
|
|
|
21 typedef CDialogResizeHelperTracking<cfgDialogPositionTracker> CDialogResizeHelperPT;
|
|
|
22 typedef CDialogResizeHelperTracking<cfgWindowSizeTracker2> CDialogResizeHelperST2;
|
|
|
23
|
|
|
24 #define REDRAW_DIALOG_ON_RESIZE() if (uMsg == WM_SIZE) RedrawWindow(NULL, NULL, RDW_INVALIDATE | RDW_ERASE | RDW_ALLCHILDREN);
|