|
|
1.1 root 1: /************************************************************************
2:
3: File: title.c
4:
5: Purpose:
6:
7: Contains the functions that control CDTEST's GetFileTitle()
8: dialog box.
9:
10:
11: Functions:
12:
13: - DoTitleDialog() -- Creates CDTEST's GetFileTitle() dialog.
14:
15: - TitleProc() -- The callback function for CDTEST's
16: GetFileTitle() dialog box.
17:
18: ************************************************************************/
19:
20:
21: #include <windows.h>
22: #include <commdlg.h>
23: #include "cdtest.h"
24: #include "title.h"
25:
26: extern UINT uMode ; //see cdtest.c
27: extern LONG MyAtol(LPTSTR, BOOL, LPBOOL) ;
28:
29:
30: #define MAXTITLE 256
31:
32: TCHAR szTitle[MAXTITLE] ;
33: TCHAR szPath[MAXTITLE] ;
34: short nReturn ;
35: WORD wBufSize ;
36:
37:
38:
39:
40: /************************************************************************
41:
42: Function: DoTitleDialog(HWND)
43:
44: Purpose: Creates CDTEST's GetFileTitle() dialog box.
45:
46: Returns: Nothing.
47:
48: Comments:
49:
50: ************************************************************************/
51:
52: void DoTitleDialog(HWND hwnd)
53: {
54: DialogBox(hInst, MAKEINTRESOURCE(ID_TITLEDIALOG), hwnd, TitleProc) ;
55:
56: }
57:
58:
59:
60:
61:
62:
63: /************************************************************************
64:
65: Function: TitleProc(HWND, UINT, UINT, LONG)
66:
67: Purpose: Is the callback function for CDTEST's GetFileTitle() dialog.
68:
69: Returns: TRUE or FALSE depending on the situation.
70:
71: Comments:
72:
73: ************************************************************************/
74:
75:
76: BOOL APIENTRY TitleProc(HWND hwnd, UINT msg, UINT wParam, LONG lParam)
77: {
78: TCHAR szNum[30] ;
79: BOOL b ;
80:
81: switch (msg)
82: {
83: case WM_INITDIALOG:
84: SetDlgItemText(hwnd, ID_BUFFSIZETI, TEXT("256")) ;
85: break ;
86:
87: case WM_COMMAND:
88: {
89: switch (LOWORD(wParam))
90: {
91: case IDOK:
92: GetDlgItemText(hwnd, ID_PATHTI, szPath, MAXTITLE) ;
93: GetDlgItemText(hwnd, ID_BUFFSIZETI, szNum, 30) ;
94:
95: wBufSize = (WORD) MyAtol(szNum, uMode==IDM_HEXMODE, &b) ;
96:
97: if (wBufSize > 256)
98: {
99: wBufSize = 256 ;
100: SetDlgItemText(hwnd, ID_BUFFSIZETI, TEXT("256")) ;
101: }
102:
103: nReturn = GetFileTitle(szPath, szTitle, wBufSize) ;
104: wsprintf(szTemp, szShortFilter, nReturn) ;
105: SetDlgItemText(hwnd, ID_RETURNTI, szTemp) ;
106: SetDlgItemText(hwnd, ID_TITLETI, szTitle) ;
107:
108: break ;
109:
110: case IDCANCEL:
111: EndDialog(hwnd, FALSE) ;
112: break ;
113:
114: case ID_RESETTITLE:
115: szPath[0] = 0 ;
116: szNum[0] = 0 ;
117: szTemp[0] = 0 ;
118: szTitle[0] = 0 ;
119: SetDlgItemText(hwnd, ID_PATHTI, szPath) ;
120: SetDlgItemText(hwnd, ID_RETURNTI, szTemp) ;
121: SetDlgItemText(hwnd, ID_TITLETI, szTitle) ;
122: SetDlgItemText(hwnd, ID_BUFFSIZETI, TEXT("256")) ;
123: break ;
124:
125:
126: default: break ;
127: }
128: }
129:
130: default: break ;
131: }
132:
133: return FALSE ;
134: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.