Commit 74cb23a9 authored by Dick Hollenbeck's avatar Dick Hollenbeck

Quasimodo is not a monster, he is your friend.

parent bb374d26
...@@ -246,14 +246,20 @@ int DIALOG_SHIM::ShowQuasiModal() ...@@ -246,14 +246,20 @@ int DIALOG_SHIM::ShowQuasiModal()
wxWindow* parent = GetParentForModalDialog( GetParent(), GetWindowStyle() ); wxWindow* parent = GetParentForModalDialog( GetParent(), GetWindowStyle() );
ENABLE_DISABLE toggle( parent ); ENABLE_DISABLE toggle( parent ); // quasi-modal: disable only my "optimal" parent
Show( true ); Show( true );
m_qmodal_showing = true; m_qmodal_showing = true;
WX_EVENT_LOOP event_loop; WX_EVENT_LOOP event_loop;
#if wxCHECK_VERSION( 2, 9, 4 ) // 2.9.4 is only approximate.
// new code needs this, old code does it in wxEventLoop::Run() and cannot
// tolerate it here. Where that boundary is as a version number, I don't know.
// A closer look at the subversion repo for wx would tell.
wxEventLoopActivator event_loop_stacker( &event_loop ); wxEventLoopActivator event_loop_stacker( &event_loop );
#endif
m_qmodal_loop = &event_loop; m_qmodal_loop = &event_loop;
...@@ -269,7 +275,7 @@ void DIALOG_SHIM::EndQuasiModal( int retCode ) ...@@ -269,7 +275,7 @@ void DIALOG_SHIM::EndQuasiModal( int retCode )
if( !IsQuasiModal() ) if( !IsQuasiModal() )
{ {
wxFAIL_MSG( "either DIALOG_SHIM::EndQuasiModal called twice or ShowQuasiModal wasn't called" ); wxFAIL_MSG( wxT( "either DIALOG_SHIM::EndQuasiModal called twice or ShowQuasiModal wasn't called" ) );
return; return;
} }
......
...@@ -74,7 +74,7 @@ void KIWAY_PLAYER::KiwayMailIn( KIWAY_EXPRESS& aEvent ) ...@@ -74,7 +74,7 @@ void KIWAY_PLAYER::KiwayMailIn( KIWAY_EXPRESS& aEvent )
bool KIWAY_PLAYER::ShowModal( wxString* aResult ) bool KIWAY_PLAYER::ShowModal( wxString* aResult )
{ {
wxASSERT_MSG( IsModal(), "ShowModal() shouldn't be called on non-modal frame" ); wxASSERT_MSG( IsModal(), wxT( "ShowModal() shouldn't be called on non-modal frame" ) );
/* /*
This function has a nice interface but a necessarily unsightly implementation. This function has a nice interface but a necessarily unsightly implementation.
...@@ -95,13 +95,19 @@ bool KIWAY_PLAYER::ShowModal( wxString* aResult ) ...@@ -95,13 +95,19 @@ bool KIWAY_PLAYER::ShowModal( wxString* aResult )
} clear_this( (void*&) m_modal_loop ); } clear_this( (void*&) m_modal_loop );
// exception safe way to disable all frames except the modal one, // exception safe way to disable all frames except the modal one,
// re-enable on exit // re-enables only those that were disabled on exit
wxWindowDisabler toggle( this ); wxWindowDisabler toggle( this );
Show( true ); Show( true );
WX_EVENT_LOOP event_loop; WX_EVENT_LOOP event_loop;
#if wxCHECK_VERSION( 2, 9, 4 ) // 2.9.4 is only approximate.
// new code needs this, old code does it in wxEventLoop::Run() and cannot
// tolerate it here. Where that boundary is as a version number, I don't know.
// A closer look at the subversion repo for wx would tell.
wxEventLoopActivator event_loop_stacker( &event_loop ); wxEventLoopActivator event_loop_stacker( &event_loop );
#endif
m_modal_loop = &event_loop; m_modal_loop = &event_loop;
......
...@@ -203,7 +203,7 @@ bool TRACKS_CLEANER::clean_vias() ...@@ -203,7 +203,7 @@ bool TRACKS_CLEANER::clean_vias()
// Correct via m_End defects (if any), should never happen // Correct via m_End defects (if any), should never happen
if( via->GetStart() != via->GetEnd() ) if( via->GetStart() != via->GetEnd() )
{ {
wxFAIL_MSG( "Via with mismatching ends" ); wxFAIL_MSG( wxT( "Via with mismatching ends" ) );
via->SetEnd( via->GetStart() ); via->SetEnd( via->GetStart() );
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment