annotate foosdk/sdk/foobar2000/helpers/dialog_resize_helper.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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
1 #pragma once
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
2
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
3 #ifdef FOOBAR2000_DESKTOP_WINDOWS
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
4
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
5 #include <libPPUI/CDialogResizeHelperCompat.h>
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
6
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
7 // Legacy class referenced by old code
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
8 // Do not use in new code, use libPPUI instead
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
9 class dialog_resize_helper : public CDialogResizeHelperCompat
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
10 {
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
11 pfc::array_t<RECT> rects;
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
12 RECT orig_client;
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
13 HWND parent;
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
14 HWND sizegrip;
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
15 unsigned min_x,min_y,max_x,max_y;
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
16
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
17 pfc::array_t<param> m_table;
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
18
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
19 void set_parent(HWND wnd);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
20 void reset();
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
21 void on_wm_size();
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
22 public:
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
23 inline void set_min_size(unsigned x,unsigned y) {min_x = x; min_y = y;}
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
24 inline void set_max_size(unsigned x,unsigned y) {max_x = x; max_y = y;}
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
25 void add_sizegrip();
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
26
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
27 //the old way
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
28 bool process_message(HWND wnd,UINT msg,WPARAM wp,LPARAM lp);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
29
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
30 //ATL-compatible
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
31 BOOL ProcessWindowMessage(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT& lResult);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
32
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
33 dialog_resize_helper(const param * src,unsigned count,unsigned p_min_x,unsigned p_min_y,unsigned p_max_x,unsigned p_max_y);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
34
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
35 ~dialog_resize_helper();
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
36
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
37 PFC_CLASS_NOT_COPYABLE_EX(dialog_resize_helper);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
38 };
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
39
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
40 #endif // FOOBAR2000_DESKTOP_WINDOWS