From 454cbe482efbc7338ccbeee9e94e89f0195390cf Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Fri, 16 Jan 2004 22:43:59 +0000 Subject: [PATCH] ID for MessageBoxError --- stepmania/src/arch/ArchHooks/ArchHooks.cpp | 10 ++++++---- stepmania/src/arch/ArchHooks/ArchHooks.h | 4 ++-- stepmania/src/arch/ArchHooks/ArchHooks_Win32.cpp | 2 +- stepmania/src/arch/ArchHooks/ArchHooks_Win32.h | 2 +- stepmania/src/arch/ArchHooks/ArchHooks_darwin.cpp | 2 +- stepmania/src/arch/ArchHooks/ArchHooks_darwin.h | 6 +++--- 6 files changed, 14 insertions(+), 12 deletions(-) diff --git a/stepmania/src/arch/ArchHooks/ArchHooks.cpp b/stepmania/src/arch/ArchHooks/ArchHooks.cpp index 7ff6a178bc..4ef59f85f7 100644 --- a/stepmania/src/arch/ArchHooks/ArchHooks.cpp +++ b/stepmania/src/arch/ArchHooks/ArchHooks.cpp @@ -26,10 +26,13 @@ void ArchHooks::IgnoreMessage( CString ID ) PREFSMAN->m_sIgnoredMessageWindows = join( ",", list ); PREFSMAN->SaveGlobalPrefsToDisk(); } -#include "RageLog.h" -void ArchHooks::MessageBoxError( CString sMessage ) + +void ArchHooks::MessageBoxError( CString sMessage, CString ID ) { - MessageBoxErrorPrivate( sMessage ); + if( ID != "" && MessageIsIgnored( ID ) ) + return; + + MessageBoxErrorPrivate( sMessage, ID ); } void ArchHooks::MessageBoxOK( CString sMessage, CString ID ) @@ -38,7 +41,6 @@ void ArchHooks::MessageBoxOK( CString sMessage, CString ID ) return; // don't show MessageBox if windowed - if(LOG)LOG->Trace("wind %i", DISPLAY->IsWindowed()); if( !DISPLAY->IsWindowed() ) ArchHooks::MessageBoxOKPrivate( sMessage, ID ); else diff --git a/stepmania/src/arch/ArchHooks/ArchHooks.h b/stepmania/src/arch/ArchHooks/ArchHooks.h index 2a0f2956a0..76b97e96d9 100644 --- a/stepmania/src/arch/ArchHooks/ArchHooks.h +++ b/stepmania/src/arch/ArchHooks/ArchHooks.h @@ -30,7 +30,7 @@ public: * to identify a class of messages, for "don't display this dialog"-type * prompts. (Don't overload these, overload *Private below.) */ enum MessageBoxResult { abort, retry, ignore, cancel }; - void MessageBoxError( CString error ); + void MessageBoxError( CString error, CString ID = "" ); void MessageBoxOK( CString sMessage, CString ID = "" ); MessageBoxResult MessageBoxAbortRetryIgnore( CString sMessage, CString ID = "" ); MessageBoxResult MessageBoxRetryCancel( CString sMessage, CString ID = "" ); @@ -43,7 +43,7 @@ public: virtual void RestartProgram() { } protected: - virtual void MessageBoxErrorPrivate( CString sMessage ) { printf("Error: %s\n", sMessage.c_str()); } + virtual void MessageBoxErrorPrivate( CString sMessage, CString ID ) { printf("Error: %s\n", sMessage.c_str()); } virtual void MessageBoxOKPrivate( CString sMessage, CString ID ) {} virtual MessageBoxResult MessageBoxAbortRetryIgnorePrivate( CString sMessage, CString ID ) { return ignore; } virtual MessageBoxResult MessageBoxRetryCancelPrivate( CString sMessage, CString ID ) { return cancel; } diff --git a/stepmania/src/arch/ArchHooks/ArchHooks_Win32.cpp b/stepmania/src/arch/ArchHooks/ArchHooks_Win32.cpp index 7004f9a9ee..e85e07433f 100644 --- a/stepmania/src/arch/ArchHooks/ArchHooks_Win32.cpp +++ b/stepmania/src/arch/ArchHooks/ArchHooks_Win32.cpp @@ -145,7 +145,7 @@ static BOOL CALLBACK ErrorWndProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lP return FALSE; } -void ArchHooks_Win32::MessageBoxErrorPrivate( CString error ) +void ArchHooks_Win32::MessageBoxErrorPrivate( CString error, CString ID ) { g_sErrorString = error; // throw up a pretty error dialog diff --git a/stepmania/src/arch/ArchHooks/ArchHooks_Win32.h b/stepmania/src/arch/ArchHooks/ArchHooks_Win32.h index 19619bf7eb..6ffc814ee8 100644 --- a/stepmania/src/arch/ArchHooks/ArchHooks_Win32.h +++ b/stepmania/src/arch/ArchHooks/ArchHooks_Win32.h @@ -8,7 +8,7 @@ public: ArchHooks_Win32(); void DumpDebugInfo(); void MessageBoxOKPrivate( CString sMessage, CString ID ); - void MessageBoxErrorPrivate( CString error ); + void MessageBoxErrorPrivate( CString error, CString ID ); MessageBoxResult MessageBoxAbortRetryIgnorePrivate( CString sMessage, CString ID ); MessageBoxResult MessageBoxRetryCancelPrivate( CString sMessage, CString ID ); void RestartProgram(); diff --git a/stepmania/src/arch/ArchHooks/ArchHooks_darwin.cpp b/stepmania/src/arch/ArchHooks/ArchHooks_darwin.cpp index c160fafc2d..fb780cc844 100644 --- a/stepmania/src/arch/ArchHooks/ArchHooks_darwin.cpp +++ b/stepmania/src/arch/ArchHooks/ArchHooks_darwin.cpp @@ -255,7 +255,7 @@ void ArchHooks_darwin::MessageBoxOKPrivate(CString sMessage, CString ID) IgnoreMessage(ID); } -void ArchHooks_darwin::MessageBoxErrorPrivate(CString sError) +void ArchHooks_darwin::MessageBoxErrorPrivate(CString sError, CString ID) { CFStringRef error = CFStringCreateWithCString(NULL, sError, kCFStringEncodingASCII); ShowAlert(kAlertStopAlert, error, CFSTR("OK")); diff --git a/stepmania/src/arch/ArchHooks/ArchHooks_darwin.h b/stepmania/src/arch/ArchHooks/ArchHooks_darwin.h index 9dfaa792d4..a8ed912bc0 100644 --- a/stepmania/src/arch/ArchHooks/ArchHooks_darwin.h +++ b/stepmania/src/arch/ArchHooks/ArchHooks_darwin.h @@ -21,9 +21,9 @@ public: ~ArchHooks_darwin() { } void DumpDebugInfo(); protected: - void MessageBoxErrorPrivate(CString sError); - void MessageBoxOKPrivate(CString sMessage, CString ID = ""); - MessageBoxResult MessageBoxAbortRetryIgnorePrivate(CString sMessage, CString ID = ""); + void MessageBoxErrorPrivate(CString sError, CString ID); + void MessageBoxOKPrivate(CString sMessage, CString ID); + MessageBoxResult MessageBoxAbortRetryIgnorePrivate(CString sMessage, CString ID); }; #undef ARCH_HOOKS