summaryrefslogtreecommitdiff
path: root/utilities.cpp
diff options
context:
space:
mode:
authorGluzskiy Alexandr <sss123next@list.ru>2010-08-08 14:56:54 +0300
committerGluzskiy Alexandr <sss123next@list.ru>2010-08-08 14:56:54 +0300
commit0df8e1c940479d1d9edd93f95483a5c1180e7bd5 (patch)
tree392da9b0a5be5777d8113531ddd43dccc80e1014 /utilities.cpp
parent3777be91f293eac73dad6355eb2c4a6261aad467 (diff)
modified: options.cpp
modified: utilities.cpp modified: utilities.h
Diffstat (limited to 'utilities.cpp')
-rw-r--r--utilities.cpp25
1 files changed, 25 insertions, 0 deletions
diff --git a/utilities.cpp b/utilities.cpp
index 0654bd6..0e4fc06 100644
--- a/utilities.cpp
+++ b/utilities.cpp
@@ -102,6 +102,31 @@ void GetFilePath(TCHAR *WindowTittle, char *szSetting, TCHAR *szExt, TCHAR *szEx
DBWriteContactSettingTString(0, szModuleName, szSetting, str);
}
+TCHAR *GetFilePath(TCHAR *WindowTittle, TCHAR *szExt, TCHAR *szExtDesc)
+{
+ TCHAR *str = new TCHAR [MAX_PATH+2];
+ OPENFILENAME ofn={0};
+ TCHAR filter[512], *pfilter;
+ ofn.lStructSize=CDSIZEOF_STRUCT(OPENFILENAME,lpTemplateName);
+ ofn.Flags=OFN_EXPLORER;
+ ofn.lpstrTitle=TranslateW(WindowTittle);
+ _tcscpy(filter,TranslateW(szExtDesc));
+ pfilter=filter+_tcslen(filter)+1;
+ _tcscpy(pfilter, szExt);
+ pfilter[_tcslen(pfilter)+1] = '\0';
+ pfilter[_tcslen(pfilter)+2] = '\0';
+ ofn.lpstrFilter=filter;
+ _tcscpy(str, _T(""));
+ if(_tcslen(str)< 2)
+ str[0] = '\0';
+ ofn.lpstrFile=str;
+ ofn.nMaxFile=_MAX_PATH;
+ ofn.nMaxFileTitle=MAX_PATH;
+ if(!GetOpenFileName(&ofn))
+ return _T("");
+ return str;
+}
+
void GetFolderPath(TCHAR *WindowTittle, char *szSetting)
{
BROWSEINFO pbi = {0};