2 * Implementation of IShellBrowser for the File Open common dialog
8 #define SHBROWSER_H TRUE
15 /***********************************************************************
16 * Defines and global variables
18 #define _ICommDlgBrowser_Offset ((int)(&(((IShellBrowserImpl*)0)->lpVtblCommDlgBrowser)))
19 #define _ICOM_THIS_FromICommDlgBrowser(class, name) class* This = (class*)(((char*)name)-_ICommDlgBrowser_Offset);
21 #define _IServiceProvider_Offset ((int)(&(((IShellBrowserImpl*)0)->lpVtblServiceProvider)))
22 #define _ICOM_THIS_FromIServiceProvider(class, name) class* This = (class*)(((char*)name)-_IServiceProvider_Offset);
24 /* dialog internal property */
26 #define FODPROP_SAVEDLG 0x0001 /* File dialog is a Save file dialog */
27 #define FODPROP_USEVIEW 0x0002 /* Indicates the user selection must be taken
28 from the IShellView */
30 /***********************************************************************
38 LPOPENFILENAMEA ofnInfos
;
40 IShellBrowser
*FOIShellBrowser
;
41 IShellFolder
*FOIShellFolder
;
42 IShellView
*FOIShellView
;
43 IDataObject
*FOIDataObject
;
50 FOLDERSETTINGS folderSettings
;
51 LPITEMIDLIST pidlAbsCurrent
;
52 LPWSTR lpstrCurrentFilter
;
73 /***********************************************************************
76 #define IDS_ABOUTBOX 101
77 #define IDS_DOCUMENTFOLDERS 102
78 #define IDS_PERSONAL 103
79 #define IDS_FAVORITES 104
81 #define IDS_DESKTOP 106
84 #define IDS_MYCOMPUTER 110
85 #define IDS_SYSTEMFOLDERS 112
86 #define IDS_LOCALHARDRIVES 113
87 #define IDS_FILENOTFOUND 114
88 #define IDS_VERIFYFILE 115
89 #define IDS_CREATEFILE 116
90 #define IDS_CREATEFOLDER_DENIED 117
91 #define IDS_FILEOPEN_CAPTION 118
92 #define IDL_OVERWRITEFILE 119
93 #define IDS_INVALID_FILENAME_TITLE 120
94 #define IDS_INVALID_FILENAME 121
95 #define IDS_PATHNOTEXISTING 122
96 #define IDS_FILENOTEXISTING 123
98 /* File Dialog Tooltips string IDs */
100 #define IDS_UPFOLDER 150
101 #define IDS_NEWFOLDER 151
102 #define IDS_LISTVIEW 152
103 #define IDS_REPORTVIEW 153
104 #define IDS_TODESKTOP 154
106 #define IDC_OPENREADONLY chx1
108 #define IDC_TOOLBARSTATIC stc1
109 #define IDC_FILETYPESTATIC stc2
110 #define IDC_FILENAMESTATIC stc3
111 #define IDC_LOOKINSTATIC stc4
113 #define IDC_SHELLSTATIC lst1
115 #define IDC_FILETYPE cmb1
116 #define IDC_LOOKIN cmb2
118 #define IDC_FILENAME edt1
120 #define IDC_TOOLBAR ctl1
122 /***********************************************************************
123 * Prototypes for the methods of the IShellBrowserImpl class
126 IShellBrowser
* IShellBrowserImpl_Construct(HWND hwndOwner
);
129 LPITEMIDLIST
GetPidlFromDataObject ( IDataObject
*doSelected
, UINT nPidlIndex
);
130 UINT
GetNumSelected(IDataObject
*doSelected
);
133 BOOL
IsPidlFolder (LPSHELLFOLDER psf
, LPITEMIDLIST pidl
);
135 /* Functions used by the EDIT box */
136 void FILEDLG95_FILENAME_FillFromSelection (HWND hwnd
);
137 int FILEDLG95_FILENAME_GetFileNames (HWND hwnd
, LPSTR
* lpstrFileList
, UINT
* sizeUsed
);
139 #endif /*SHBROWSER_H*/