-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathSrInputDialog.h
139 lines (106 loc) · 4.59 KB
/
SrInputDialog.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
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
/*===========================================================================
*
* File: Srinputdialog.H
* Author: Dave Humphrey ([email protected])
* Created On: 26 November 2011
*
* Description
*
*=========================================================================*/
#ifndef __SRINPUTDIALOG_H
#define __SRINPUTDIALOG_H
/*===========================================================================
*
* Begin Required Includes
*
*=========================================================================*/
#include "common/srerrorhandler.h"
/*===========================================================================
* End of Required Includes
*=========================================================================*/
/*===========================================================================
*
* Begin Type Definitions
*
*=========================================================================*/
/* Function used to determine if an input string is valid or not */
typedef int (*INPUTDLGCHECKFUNC) ( const char* pString, const char* pOrigString, long UserData );
/* Check validation codes */
#define SR_INPUTDLG_CHECK_OK 0
#define SR_INPUTDLG_CHECK_NOCHANGE 1
#define SR_INPUTDLG_CHECK_ERROR -1
/* Validation colors */
#define SR_INPUTDLG_NOCHANGECOLOR RGB(255,255,255)
#define SR_INPUTDLG_OKCOLOR RGB(204,255,204)
#define SR_INPUTDLG_ERRORCOLOR RGB(255,204,204)
/*===========================================================================
* End of Type Definitions
*=========================================================================*/
/*===========================================================================
*
* Begin Class CSrInputDialog Definition
*
*=========================================================================*/
class CSrInputDialog : public CDialog {
/*---------- Begin Protected Class Members --------------------------*/
protected:
CString m_LabelValue;
CString m_TextValue;
CString m_OrigTextValue;
CString m_TitleValue;
INPUTDLGCHECKFUNC m_CheckFunction;
long m_CheckUserData;
int m_CheckCode;
ISCHARFUNC m_ValidCharFunc;
/*---------- Begin Public Class Methods -----------------------------*/
public:
/* Constructor */
CSrInputDialog(CWnd* pParent = NULL);
/* Get class members */
const TCHAR* GetTextValue (void) { return m_TextValue; }
/* Set class members */
void SetTitleValue (const TCHAR* pString) { m_TitleValue = pString; }
void SetTextValue (const TCHAR* pString) { m_TextValue = pString; }
void SetLabelValue (const TCHAR* pString) { m_LabelValue = pString; }
void SetCheckFunction (INPUTDLGCHECKFUNC Function, const long UserData) { m_CheckFunction = Function; m_CheckUserData = UserData; }
void SetValidCharFunc (ISCHARFUNC Function) { m_ValidCharFunc = Function; }
//{{AFX_DATA(CSrInputDialog)
enum { IDD = IDD_INPUT_DLG };
CStatic m_Label;
CEdit m_InputText;
//}}AFX_DATA
/* ClassWizard generated virtual function overrides */
//{{AFX_VIRTUAL(CSrInputDialog)
protected:
virtual void DoDataExchange(CDataExchange* pDX);
//}}AFX_VIRTUAL
protected:
/* Generated message map functions */
//{{AFX_MSG(CSrInputDialog)
virtual BOOL OnInitDialog();
virtual void OnOK();
afx_msg void OnChangeInputText (void);
afx_msg HBRUSH OnCtlColor (CDC* pDC, CWnd* pWnd, UINT nCtlColor);
//}}AFX_MSG
DECLARE_MESSAGE_MAP();
};
/*===========================================================================
* End of Class CSrInputDialog Definition
*=========================================================================*/
/*===========================================================================
*
* Begin Function Prototypes
*
*=========================================================================*/
/* Main input dialog access */
bool SrInputDialog (CString& Buffer, const TCHAR* pTitle, const TCHAR* pLabel);
bool SrInputDialogValidate (CString& Buffer, const TCHAR* pTitle, const TCHAR* pLabel, INPUTDLGCHECKFUNC FheckFunc, const long UserData, ISCHARFUNC ValidFunc);
/*===========================================================================
* End of Function Prototypes
*=========================================================================*/
//{{AFX_INSERT_LOCATION}}
//}}AFF_INSERT_LOCATION
#endif
/*===========================================================================
* End of File Srinputdialog.H
*=========================================================================*/