diff options
author | Jens-Heiner Rechtien <hr@openoffice.org> | 2003-03-27 16:59:30 +0000 |
---|---|---|
committer | Jens-Heiner Rechtien <hr@openoffice.org> | 2003-03-27 16:59:30 +0000 |
commit | 2f382d6c2579a25c68dbd121af7f1f5dc7ec9852 (patch) | |
tree | 8c6c555a872e6812cd3f76de570b06683526ad14 /vcl/source/window/dialog.cxx | |
parent | f7a0cc83bb59efd6abd820bd78acc75e8313ea4e (diff) |
MWS_SRX644: migrate branch mws_srx644 -> HEAD
Diffstat (limited to 'vcl/source/window/dialog.cxx')
-rw-r--r-- | vcl/source/window/dialog.cxx | 16 |
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 |