forked from deepskystacker/DSS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathFolderDlg.h
98 lines (67 loc) · 1.82 KB
/
FolderDlg.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
// -----------
// FolderDlg.h
// -----------
/**
* @file
* @brief Re: CFolderDlg
* @author Achim Klein
* @version 0.1
*/
// -------------------
// One-Definition-Rule
// -------------------
#ifndef FOLDERDLG_H_INCLUDE_NR1
#define FOLDERDLG_H_INCLUDE_NR1
// ----------------------------------
// Definition of the CFolderDlg class
// ----------------------------------
/**
* This class displays a dialog box that enables the user to select a shell folder.
*/
class CFolderDlg
{
public:
// ------------
// Construction
// ------------
/// constructor
CFolderDlg(BOOL HideNewFolderButton, const CString& InitialFolder, CWnd* pParent);
/// virtual destructor
virtual ~CFolderDlg();
// --------
// Handling
// --------
/// call this member function to invoke the modal dialog box and return the dialog-box result when done
virtual int DoModal();
// --------------
// Setter methods
// --------------
/// sets the text that is displayed above the tree view control
void SetTitle(const CString& Title);
// --------------
// Getter methods
// --------------
/// call this member function to get the name of the selected folder
CString GetFolderName() const;
protected:
// ----------------
// Internal methods
// ----------------
/// the browse dialog box calls this function to notify it about events
static INT CALLBACK BrowseCallbackProc(HWND hwnd, UINT uMsg, LPARAM lp, LPARAM pData);
private:
// ----------
// Attributes
// ----------
/// the initial folder (used in the static callback function)
static CString m_initialFolder;
/// show or hide 'New Folder' button
BOOL m_hideNewFolderButton;
/// the parent window
CWnd* m_parent;
/// the text that is displayed above the tree view control
CString m_title;
/// the selected folder
CString m_selectedFolder;
};
#endif // FOLDERDLG_H_INCLUDE_NR1