summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@googlemail.com>2012-12-02 20:33:12 +0100
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2012-12-03 03:56:11 +0100
commit06842a8583d3d77de74964cdce4fba811818bf90 (patch)
treec13e9482ed888608c73f8e62510e95232441cdcf /vcl
parent99e31f6ead140594deb98fa8e794708403b8113d (diff)
first working version of modal ref input dlgs
The following things still need to be changed: * don't use virtual method in Window * Use a WinBits flag for it * move all the dialogs to it * fix the ugly hack for range name dlg * fix all the uncommented code in winproc.cxx * general clean-up Change-Id: I2a8cfc1c4abf591878b11aa4829a9ff910540eff
Diffstat (limited to 'vcl')
-rw-r--r--vcl/inc/vcl/window.hxx2
-rw-r--r--vcl/source/window/window.cxx8
-rw-r--r--vcl/source/window/winproc.cxx4
3 files changed, 11 insertions, 3 deletions
diff --git a/vcl/inc/vcl/window.hxx b/vcl/inc/vcl/window.hxx
index 9ef1688893be..9ba556ce9507 100644
--- a/vcl/inc/vcl/window.hxx
+++ b/vcl/inc/vcl/window.hxx
@@ -811,6 +811,8 @@ public:
*/
sal_Bool IsInModalMode() const;
+ virtual bool IsInRefMode() const;
+
void SetActivateMode( sal_uInt16 nMode );
sal_uInt16 GetActivateMode() const;
diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx
index 7e7538a4f141..d1ea694eebcd 100644
--- a/vcl/source/window/window.cxx
+++ b/vcl/source/window/window.cxx
@@ -3974,7 +3974,7 @@ void Window::ImplGrabFocus( sal_uInt16 nFlags )
}
// If the Window is disabled, then we don't change the focus
- if ( !IsEnabled() || !IsInputEnabled() || IsInModalMode() )
+ if ( !IsEnabled() || !IsInputEnabled() /*|| IsInModalMode()*/ )
return;
// we only need to set the focus if it is not already set
@@ -9274,6 +9274,12 @@ sal_Bool Window::IsInModalMode() const
{
return (mpWindowImpl->mpFrameWindow->mpWindowImpl->mpFrameData->mnModalMode != 0);
}
+
+bool Window::IsInRefMode() const
+{
+ return false;
+}
+
void Window::ImplIncModalCount()
{
Window* pFrameWindow = mpWindowImpl->mpFrameWindow;
diff --git a/vcl/source/window/winproc.cxx b/vcl/source/window/winproc.cxx
index 6a127595d16f..b3494a1cff8e 100644
--- a/vcl/source/window/winproc.cxx
+++ b/vcl/source/window/winproc.cxx
@@ -238,7 +238,7 @@ static void ImplHandleMouseHelpRequest( Window* pChild, const Point& rMousePos )
nHelpMode |= HELPMODE_BALLOON;
if ( nHelpMode )
{
- if ( pChild->IsInputEnabled() && ! pChild->IsInModalMode() )
+ if ( pChild->IsInputEnabled() /*&& ! pChild->IsInModalMode() */)
{
HelpEvent aHelpEvent( rMousePos, nHelpMode );
pSVData->maHelpData.mbRequestingHelp = sal_True;
@@ -449,7 +449,7 @@ long ImplHandleMouseEvent( Window* pWindow, sal_uInt16 nSVEvent, sal_Bool bMouse
// no mouse messages to disabled windows
// #106845# if the window was disabed during capturing we have to pass the mouse events to release capturing
- if ( pSVData->maWinData.mpCaptureWin != pChild && (!pChild->IsEnabled() || !pChild->IsInputEnabled() || pChild->IsInModalMode() ) )
+ if ( pSVData->maWinData.mpCaptureWin != pChild && (!pChild->IsEnabled() || !pChild->IsInputEnabled() /*|| (pChild->IsInModalMode() && !pChild->IsInRefMode())*/ ) )
{
ImplHandleMouseFloatMode( pChild, aMousePos, nCode, nSVEvent, bMouseLeave );
if ( nSVEvent == EVENT_MOUSEMOVE )