source: src/advtabs/TrackerAddDialog.hpp @ 128

Revision 128, 1.4 KB checked in by Eoin, 13 years ago (diff)

Segmented ini file implemented.

Line 
1
2#pragma once
3
4#include "../DdxEx.hpp"
5
6class TrackerAddDialog :
7        public CDialogImpl<TrackerAddDialog>,
8    public CWinDataExchangeEx<TrackerAddDialog>
9{
10protected:
11        typedef TrackerAddDialog thisClass;
12        typedef CDialogImpl<TrackerAddDialog> baseClass;
13       
14public:
15        TrackerAddDialog(wstring title, hal::TrackerDetail& tracker) :
16                title_(title),
17                tracker_(tracker)
18        {}
19       
20        enum { IDD = IDD_TRACKEDIT };
21
22    BEGIN_MSG_MAP_EX(TrackerAddDialog)
23        MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
24                MSG_WM_CLOSE(OnClose)   
25                COMMAND_ID_HANDLER_EX(IDOK, OnOk)
26                COMMAND_ID_HANDLER_EX(IDCANCEL, OnCancel)
27    END_MSG_MAP()
28
29    BEGIN_DDX_MAP(TrackerAddDialog)
30                DDX_EX_STDWSTRING(IDC_TRACKER_EDIT_URL, tracker_.url);
31        DDX_INT(IDC_TRACKER_EDIT_TIER, tracker_.tier)
32    END_DDX_MAP()
33       
34        LRESULT OnInitDialog(...)
35        {
36                SetWindowText(title_.c_str());
37                CenterWindow();
38                BOOL retval =  DoDataExchange(false);
39               
40                return TRUE;
41        }
42       
43        void OnClose()
44        {
45                DoDataExchange(true);
46                EndDialog(0);
47        }
48
49        void OnCancel(...)
50        {
51                DoDataExchange(true);
52                EndDialog(0);
53        }
54
55        void OnOk(...)
56        {
57                DoDataExchange(true);
58                EndDialog(1);
59        }
60
61        BOOL PreTranslateMessage(MSG* pMsg)
62        {
63                return this->IsDialogMessage(pMsg);
64        }
65       
66        void onCancel(UINT, int, HWND hWnd)
67        {
68       
69        }
70
71private:
72        wstring title_;
73        hal::TrackerDetail& tracker_;
74};
Note: See TracBrowser for help on using the repository browser.