1// Windows/CommonDialog.h 2 3#ifndef ZIP7_INC_WINDOWS_COMMON_DIALOG_H 4#define ZIP7_INC_WINDOWS_COMMON_DIALOG_H 5 6#include "../Common/MyString.h" 7 8namespace NWindows { 9 10struct CCommonDialogInfo 11{ 12 /* (FilterIndex == -1) means no selected filter. 13 and (-1) also is reserved for unsupported custom filter. 14 if (FilterIndex >= 0), then FilterIndex is index of filter */ 15 int FilterIndex; // [in / out] 16 bool SaveMode; 17 #ifdef UNDER_CE 18 bool OpenFolderMode; 19 #endif 20 HWND hwndOwner; 21 // LPCWSTR lpstrInitialDir; 22 LPCWSTR lpstrTitle; 23 UString FilePath; // [in / out] 24 25 CCommonDialogInfo() 26 { 27 FilterIndex = -1; 28 SaveMode = false; 29 #ifdef UNDER_CE 30 OpenFolderMode = false; 31 #endif 32 hwndOwner = NULL; 33 // lpstrInitialDir = NULL; 34 lpstrTitle = NULL; 35 } 36 37 /* (filters) : 2 sequential vector strings (Description, Masks) represent each filter */ 38 bool CommonDlg_BrowseForFile(LPCWSTR lpstrInitialDir, const UStringVector &filters); 39}; 40 41} 42 43#endif 44