-
Notifications
You must be signed in to change notification settings - Fork 1
/
DataSourceDlg.h
113 lines (92 loc) · 3.4 KB
/
DataSourceDlg.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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
#if !defined(AFX_DATASOURCEDLG_H__40646A61_2741_4177_A31A_A594D1F08709__INCLUDED_)
#define AFX_DATASOURCEDLG_H__40646A61_2741_4177_A31A_A594D1F08709__INCLUDED_
#include "ComboBoxExt.h"
#include "DatabaseExplorerDoc.h"
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// DataSourceDlg.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// CDataSourceDlg dialog
class CDataSourceDlg : public CDialog
{
/////////////////////////////////////////////////////////////////////////////
// CRestoreConnectionSettings class
class CRestoreConnectionSettings
{
public:
CRestoreConnectionSettings(CDatabaseExplorerDoc* pDoc);
~CRestoreConnectionSettings();
CRestoreConnectionSettings(const CRestoreConnectionSettings& rhs) = delete;
CRestoreConnectionSettings& operator=(const CRestoreConnectionSettings& rhs) = delete;
CRestoreConnectionSettings(CRestoreConnectionSettings&& rhs) = delete;
CRestoreConnectionSettings& operator=(CRestoreConnectionSettings&& rhs) = delete;
public:
void GiveUpRestoreDSNOrg() { m_bRestore = FALSE; }
private:
CString m_sDSN;
BOOL m_bRestore{ TRUE };
UINT m_nRSType{ CRecordset::dynaset };
CDatabaseExplorerDoc* m_pDoc{ nullptr };
};
/////////////////////////////////////////////////////////////////////////////
// CPasswordHandler class
class CPasswordHandler
{
public:
CPasswordHandler(BOOL bAdmin, const CString& sDSN, const BOOL bSetDelete);
~CPasswordHandler();
CPasswordHandler(const CPasswordHandler& rhs) = delete;
CPasswordHandler& operator=(const CPasswordHandler& rhs) = delete;
CPasswordHandler(CPasswordHandler&& rhs) = delete;
CPasswordHandler& operator=(CPasswordHandler&& rhs) = delete;
public:
void GiveUpDeletePassword() { m_bDeletePassword = FALSE; }
private:
BOOL m_bAdmin{ FALSE };
CString m_sDSN;
BOOL m_bDeletePassword{ TRUE };
};
// Construction
public:
CDataSourceDlg(CDatabaseExplorerDoc* pDoc, CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CDataSourceDlg)
enum { IDD = IDD_DIALOG_DATASOURCE };
CComboBoxExt m_ComboDSN;
//}}AFX_DATA
private:
const CString GetKeyData(const CString& sKeyName) const;
const DatabaseType DecodeDatabaseType(CString sData) const;
void PopulateDSN(const BOOL bSystemDSN);
const CString GetComboSelection(const BOOL bUpdateData = FALSE);
int GetDSNIndex(const CString& sName) const;
CString GetMsSQLAuthenticationRequiredUser(const CString& sDSN) const;
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CDataSourceDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
HICON m_hIcon;
CDatabaseExplorerDoc* m_pDoc;
protected:
BOOL IsSystemDsnSelected() const;
UINT GetSelectedRSType() const;
void Test(CDatabaseExt* pDB, const DatabaseType DBType) const;
protected:
// Generated message map functions
//{{AFX_MSG(CDataSourceDlg)
virtual BOOL OnInitDialog();
virtual void OnOK();
afx_msg void OnRadioUserDsn();
afx_msg void OnRadioSystemDsn();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_DATASOURCEDLG_H__40646A61_2741_4177_A31A_A594D1F08709__INCLUDED_)