OSDN Git Service

refactor
[winmerge-jp/winmerge-jp.git] / Src / DDXHelper.h
1 #pragma once\r
2 \r
3 inline void DDX_Check(CDataExchange* pDX, int nIDC, bool& value)\r
4 {\r
5         BOOL BOOL_value = value;\r
6         DDX_Check(pDX, nIDC, BOOL_value);\r
7         value = !!BOOL_value;\r
8 }\r
9 \r
10 inline void DDX_Radio(CDataExchange* pDX, int nIDC, bool& value)\r
11 {\r
12         BOOL BOOL_value = value;\r
13         DDX_Radio(pDX, nIDC, BOOL_value);\r
14         value = !!BOOL_value;\r
15 }\r
16 \r
17 template<typename T>\r
18 inline void DDX_Text(CDataExchange* pDX, int nIDC, std::basic_string<T>& value)\r
19 {\r
20         CString cstrValue = value.c_str();\r
21         DDX_Text(pDX, nIDC, cstrValue);\r
22         value = cstrValue;\r
23 }\r
24 \r
25 template<typename T>\r
26 inline void DDX_CBString(CDataExchange* pDX, int nIDC, std::basic_string<T>& value)\r
27 {\r
28         CString cstrValue = value.c_str();\r
29         DDX_CBString(pDX, nIDC, cstrValue);\r
30         value = cstrValue;\r
31 }\r
32 \r
33 template<typename T>\r
34 inline void DDX_CBStringExact(CDataExchange* pDX, int nIDC, std::basic_string<T>& value)\r
35 {\r
36         CString cstrValue = value.c_str();\r
37         DDX_CBStringExact(pDX, nIDC, cstrValue);\r
38         value = cstrValue;\r
39 }\r
40 \r