summaryrefslogtreecommitdiff
path: root/fpicker/source/win32/misc/WinImplHelper.cxx
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2009-07-28 16:11:04 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2009-07-28 16:11:04 +0000
commit29da2639353762a64673d6ae5b32a36045caa7d3 (patch)
tree566ace5cd576d6890a8ddc2b353e98e9970c71dc /fpicker/source/win32/misc/WinImplHelper.cxx
parent302383a919561946ac02473bdda8c425a7ca685e (diff)
CWS-TOOLING: integrate CWS filepicker01
2009-07-03 13:21:25 +0200 cd r273690 : #i102319# Use GetSelectedFiles() instead of GetMPath() to retrieve a set of selected files 2009-07-01 14:27:56 +0200 cd r273582 : #i64800# Use ParseDisplayName correctly and don't allocate memory for an output parameter 2009-07-01 10:47:47 +0200 cd r273553 : #i102701# Make P1 fix for CWS filepicker01, too. 2009-06-29 11:58:09 +0200 cd r273463 : i102319# File picker should NOT set multi selection as a default. 2009-06-29 11:49:10 +0200 cd r273461 : #i102319# Use XFilePicker2 interface to retrieve files from multi selection 2009-06-26 15:42:43 +0200 cd r273423 : #i99759# Release solar mutex before blocking on execute() when using system file picker 2009-06-26 15:35:50 +0200 cd r273422 : #i99759# Don't release solar mutex in shutdown(). Must be done before calling execute() 2009-06-23 11:40:02 +0200 cd r273267 : #i95425# Fixed wrong initialization of TimeValue members 2009-06-23 10:35:20 +0200 cd r273262 : #i99759# Fix deadlock on Windows XP/2000 because of removing Picker Thread from sfx2. Now CAsyncEventNotifierThread releases the solar mutex before blocking 2009-06-22 11:59:15 +0200 cd r273209 : #i102948# Remove links from toolbar object when using lazy delete as the toolbar manager is now destroyed before the toolbar 2009-06-22 11:22:14 +0200 cd r273204 : #i99759# Don't use a new thread to call the file picker. As a consequence this thread is also calling Application::Yield() and therefore is fighting with the main thread for messages 2009-06-22 11:13:32 +0200 cd r273203 : #i99759# Solar mutex must be locked before calling Application::Yield() 2009-06-19 15:23:01 +0200 cd r273161 : #i102948# Remove/add decorated window from/into old/new parent decorated window list 2009-06-19 12:49:37 +0200 cd r273156 : #i101843# Use new COM based dialog implementation from Windows Vista on
Diffstat (limited to 'fpicker/source/win32/misc/WinImplHelper.cxx')
-rw-r--r--fpicker/source/win32/misc/WinImplHelper.cxx46
1 files changed, 39 insertions, 7 deletions
diff --git a/fpicker/source/win32/misc/WinImplHelper.cxx b/fpicker/source/win32/misc/WinImplHelper.cxx
index befd02352243..e253385a3c3d 100644
--- a/fpicker/source/win32/misc/WinImplHelper.cxx
+++ b/fpicker/source/win32/misc/WinImplHelper.cxx
@@ -69,6 +69,7 @@ const sal_Unicode AMPERSAND_SIGN = L'&';
// Windows 2000 VER_PLATFORM_WIN32_NT 5 0
// Windows XP VER_PLATFORM_WIN32_NT 5 1
// Windows Vista VER_PLATFORM_WIN32_NT 6 0
+// Windows 7 VER_PLATFORM_WIN32_NT 6 1
// Windows 95 VER_PLATFORM_WIN32_WINDOWS 4 0
// Windows 98 VER_PLATFORM_WIN32_WINDOWS 4 10
// Windows ME VER_PLATFORM_WIN32_WINDOWS 4 90
@@ -94,25 +95,47 @@ bool SAL_CALL IsWindowsVersion(unsigned int PlatformId, unsigned int MajorVersio
}
//------------------------------------------------------------
-// determine if we are running under Win2000
+// determine if we are running under Vista or newer OS
//------------------------------------------------------------
-bool SAL_CALL IsWindowsVista()
+bool SAL_CALL IsWindowsVistaOrNewer()
{
- return IsWindowsVersion(VER_PLATFORM_WIN32_NT, 6, 0);
+ OSVERSIONINFO osvi;
+ osvi.dwOSVersionInfoSize = sizeof(osvi);
+
+ if(!GetVersionEx(&osvi))
+ return false;
+
+ bool bRet = (VER_PLATFORM_WIN32_NT == osvi.dwPlatformId) &&
+ (osvi.dwMajorVersion >= 6);
+
+ bRet = bRet &&
+ (osvi.dwMinorVersion >=
+ sal::static_int_cast< unsigned int >(0));
+
+ return bRet;
}
//------------------------------------------------------------
-// determine if we are running under Win2000
+// determine if we are running under Windows 7
//------------------------------------------------------------
-bool SAL_CALL IsWindows2000()
+bool SAL_CALL IsWindows7()
{
- return IsWindowsVersion(VER_PLATFORM_WIN32_NT, 5, 0);
+ return IsWindowsVersion(VER_PLATFORM_WIN32_NT, 6, 1);
}
//------------------------------------------------------------
-//
+// determine if we are running under Windows Vista
+//------------------------------------------------------------
+
+bool SAL_CALL IsWindowsVista()
+{
+ return IsWindowsVersion(VER_PLATFORM_WIN32_NT, 6, 0);
+}
+
+//------------------------------------------------------------
+// determine if we are running under Windows XP
//------------------------------------------------------------
bool SAL_CALL IsWindowsXP()
@@ -121,6 +144,15 @@ bool SAL_CALL IsWindowsXP()
}
//------------------------------------------------------------
+// determine if we are running under Windows 2000
+//------------------------------------------------------------
+
+bool SAL_CALL IsWindows2000()
+{
+ return IsWindowsVersion(VER_PLATFORM_WIN32_NT, 5, 0);
+}
+
+//------------------------------------------------------------
//
//------------------------------------------------------------