summaryrefslogtreecommitdiff
path: root/vcl/source/window/dialog.cxx
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2003-03-27 16:59:30 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2003-03-27 16:59:30 +0000
commit2f382d6c2579a25c68dbd121af7f1f5dc7ec9852 (patch)
tree8c6c555a872e6812cd3f76de570b06683526ad14 /vcl/source/window/dialog.cxx
parentf7a0cc83bb59efd6abd820bd78acc75e8313ea4e (diff)
MWS_SRX644: migrate branch mws_srx644 -> HEAD
Diffstat (limited to 'vcl/source/window/dialog.cxx')
-rw-r--r--vcl/source/window/dialog.cxx16
1 files changed, 12 insertions, 4 deletions
diff --git a/vcl/source/window/dialog.cxx b/vcl/source/window/dialog.cxx
index 02a3297f8ad7..9b5c523d2db1 100644
--- a/vcl/source/window/dialog.cxx
+++ b/vcl/source/window/dialog.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: dialog.cxx,v $
*
- * $Revision: 1.24 $
+ * $Revision: 1.25 $
*
- * last change: $Author: pl $ $Date: 2002-12-10 16:50:31 $
+ * last change: $Author: hr $ $Date: 2003-03-27 17:58:20 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -138,6 +138,9 @@ static ByteString ImplGetDialogText( Dialog* pDialog )
static BOOL ImplIsMnemonicCtrl( Window* pWindow )
{
+ if( ! pWindow->GetSettings().GetStyleSettings().GetAutoMnemonic() )
+ return FALSE;
+
if ( (pWindow->GetType() == WINDOW_RADIOBUTTON) ||
(pWindow->GetType() == WINDOW_CHECKBOX) ||
(pWindow->GetType() == WINDOW_TRISTATEBOX) ||
@@ -193,7 +196,7 @@ void ImplWindowAutoMnemonic( Window* pWindow )
if ( (pParent->GetStyle() & (WB_DIALOGCONTROL | WB_NODIALOGCONTROL)) == WB_DIALOGCONTROL )
{
- pGetChild = pWindow->GetWindow( WINDOW_FIRSTCHILD );
+ pGetChild = pParent->GetWindow( WINDOW_FIRSTCHILD );
while ( pGetChild )
{
pChild = pGetChild->ImplGetWindow();
@@ -531,7 +534,7 @@ void Dialog::StateChanged( StateChangedType nType )
if ( nType == STATE_CHANGE_INITSHOW )
{
- if ( Application::IsAutoMnemonicEnabled() )
+ if ( GetSettings().GetStyleSettings().GetAutoMnemonic() )
ImplWindowAutoMnemonic( this );
//if ( IsDefaultPos() && !mbFrame )
@@ -695,9 +698,14 @@ short Dialog::Execute()
ImplDelData aDelData;
ImplAddDel( &aDelData );
pSVData->maAppData.mnModalMode++;
+ //DBG_ASSERT( mpDialogParent, "Dialog::Execute() - no Parent: cannot set modal count!" );
+ if( mpDialogParent )
+ mpDialogParent->ImplIncModalCount(); // #106303# support frame based modal count
while ( !aDelData.IsDelete() && mbInExecute )
Application::Yield();
pSVData->maAppData.mnModalMode--;
+ if( mpDialogParent )
+ mpDialogParent->ImplDecModalCount(); // #106303# support frame based modal count
if ( !aDelData.IsDelete() )
ImplRemoveDel( &aDelData );
#ifdef DBG_UTIL