summaryrefslogtreecommitdiff
path: root/framework
diff options
context:
space:
mode:
authorNorbert Thiebaud <nthiebaud@gmail.com>2010-10-14 16:43:16 -0500
committerNorbert Thiebaud <nthiebaud@gmail.com>2010-10-25 19:55:33 -0500
commitdbd5e19301cfae96600724cfdcfa004a08b50afd (patch)
treea5d9d886eb967df2e3842d51a902486dcf446e98 /framework
parentf4f4a8ed4f56035cc9f536d00f62a552af974cf0 (diff)
Use SolarMutexGuard where appropriate
Diffstat (limited to 'framework')
-rw-r--r--framework/source/dispatch/closedispatcher.cxx2
-rw-r--r--framework/source/inc/pattern/window.hxx27
-rw-r--r--framework/source/layoutmanager/layoutmanager.cxx2
3 files changed, 15 insertions, 16 deletions
diff --git a/framework/source/dispatch/closedispatcher.cxx b/framework/source/dispatch/closedispatcher.cxx
index 25f8f0f005b6..693bda1e07df 100644
--- a/framework/source/dispatch/closedispatcher.cxx
+++ b/framework/source/dispatch/closedispatcher.cxx
@@ -630,7 +630,7 @@ css::uno::Reference< css::frame::XFrame > CloseDispatcher::static_impl_searchRig
// Attention ! Checking Window->GetParent() isnt the right approach here.
// Because sometimes VCL create "implicit border windows" as parents even we created
// a simple XWindow using the toolkit only .-(
- ::vos::OGuard aSolarLock(&Application::GetSolarMutex());
+ SolarMutexGuard aSolarLock;
Window* pWindow = VCLUnoHelper::GetWindow( xWindow );
if (
(pWindow ) &&
diff --git a/framework/source/inc/pattern/window.hxx b/framework/source/inc/pattern/window.hxx
index c185e5644348..0741a35d2018 100644
--- a/framework/source/inc/pattern/window.hxx
+++ b/framework/source/inc/pattern/window.hxx
@@ -71,20 +71,20 @@ static ::rtl::OUString getWindowState(const css::uno::Reference< css::awt::XWind
if (!xWindow.is())
return ::rtl::OUString();
- // SOLAR SAFE -> ----------------------------
- ::vos::OClearableGuard aSolarGuard(Application::GetSolarMutex());
-
ByteString sWindowState;
- Window* pWindow = VCLUnoHelper::GetWindow(xWindow);
- // check for system window is neccessary to guarantee correct pointer cast!
- if (pWindow!=NULL && pWindow->IsSystemWindow())
+ // SOLAR SAFE -> ----------------------------
{
- ULONG nMask = WINDOWSTATE_MASK_ALL;
- nMask &= ~(WINDOWSTATE_MASK_MINIMIZED);
- sWindowState = ((SystemWindow*)pWindow)->GetWindowState(nMask);
+ SolarMutexGuard aSolarGuard;
+
+ Window* pWindow = VCLUnoHelper::GetWindow(xWindow);
+ // check for system window is neccessary to guarantee correct pointer cast!
+ if (pWindow!=NULL && pWindow->IsSystemWindow())
+ {
+ ULONG nMask = WINDOWSTATE_MASK_ALL;
+ nMask &= ~(WINDOWSTATE_MASK_MINIMIZED);
+ sWindowState = ((SystemWindow*)pWindow)->GetWindowState(nMask);
+ }
}
-
- aSolarGuard.clear();
// <- SOLAR SAFE ----------------------------
return B2U_ENC(sWindowState,RTL_TEXTENCODING_UTF8);
@@ -101,7 +101,7 @@ static void setWindowState(const css::uno::Reference< css::awt::XWindow >& xWind
return;
// SOLAR SAFE -> ----------------------------
- ::vos::OClearableGuard aSolarGuard(Application::GetSolarMutex());
+ SolarMutexGuard aSolarGuard;
Window* pWindow = VCLUnoHelper::GetWindow(xWindow);
// check for system window is neccessary to guarantee correct pointer cast!
@@ -118,7 +118,6 @@ static void setWindowState(const css::uno::Reference< css::awt::XWindow >& xWind
((SystemWindow*)pWindow)->SetWindowState(U2B_ENC(sWindowState,RTL_TEXTENCODING_UTF8));
}
- aSolarGuard.clear();
// <- SOLAR SAFE ----------------------------
}
@@ -134,7 +133,7 @@ static ::sal_Bool isTopWindow(const css::uno::Reference< css::awt::XWindow >& xW
// Attention ! Checking Window->GetParent() isnt the right approach here.
// Because sometimes VCL create "implicit border windows" as parents even we created
// a simple XWindow using the toolkit only .-(
- ::vos::OGuard aSolarLock(&Application::GetSolarMutex());
+ SolarMutexGuard aSolarGuard;
Window* pWindow = VCLUnoHelper::GetWindow( xWindow );
if (
(pWindow ) &&
diff --git a/framework/source/layoutmanager/layoutmanager.cxx b/framework/source/layoutmanager/layoutmanager.cxx
index f94037909ef8..73fa53b6a3d6 100644
--- a/framework/source/layoutmanager/layoutmanager.cxx
+++ b/framework/source/layoutmanager/layoutmanager.cxx
@@ -293,7 +293,7 @@ static sal_Bool implts_isFrameOrWindowTop( const css::uno::Reference< css::frame
if (xWindowCheck.is())
{
// --> PB 2007-06-18 #i76867# top and system window is required.
- ::vos::OGuard aSolarLock(&Application::GetSolarMutex());
+ SolarMutexGuard aGuard;
css::uno::Reference< css::awt::XWindow > xWindow( xWindowCheck, UNO_QUERY );
Window* pWindow = VCLUnoHelper::GetWindow( xWindow );
return ( pWindow && pWindow->IsSystemWindow() );