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*/