diff --git a/stepmania/src/archutils/Darwin/Crash.cpp b/stepmania/src/archutils/Darwin/Crash.cpp deleted file mode 100644 index 8d0e6bf6f5..0000000000 --- a/stepmania/src/archutils/Darwin/Crash.cpp +++ /dev/null @@ -1,67 +0,0 @@ -#include "StdString.h" -#include "Crash.h" -#include "archutils/Unix/CrashHandler.h" -#include - -void InformUserOfCrash( const CString &sPath ) -{ - CFStringRef error; - - error = CFStringCreateWithCString(kCFAllocatorDefault, - "StepMania has crashed. Debug " - "information has been output to\n\n " - + sPath + "\n\nPlease report a bug at:" - "\n\nhttp://sourceforge.net/tracker/" - "?func=add&group_id=37892&atid=421366", - kCFStringEncodingASCII); - CFStringRef OK = CFSTR("Open crashinfo"); - CFStringRef Cancel = CFSTR("Cancel"); - struct AlertStdCFStringAlertParamRec params = {kStdCFStringAlertVersionOne, - true, false, OK, Cancel, NULL, kAlertStdAlertOKButton, - kAlertStdAlertCancelButton, kWindowAlertPositionParentWindowScreen, - NULL}; - DialogRef dialog; - SInt16 button; - - CreateStandardAlert(kAlertStopAlert, error, NULL, ¶ms, &dialog); - AutoSizeDialog(dialog); - RunStandardAlert(dialog, NULL, &button); - switch (button) - { - case kAlertStdAlertOKButton: - // This is lazy, and easy, and it seems to work. - if (system(NULL)) - system("open '" + sPath + "'"); - else - SysBeep(30); - break; - } - CFRelease(OK); - CFRelease(Cancel); - CFRelease(error); -} - -/* - * (c) 2003-2004 Steve Checkoway - * All rights reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the - * "Software"), to deal in the Software without restriction, including - * without limitation the rights to use, copy, modify, merge, publish, - * distribute, and/or sell copies of the Software, and to permit persons to - * whom the Software is furnished to do so, provided that the above - * copyright notice(s) and this permission notice appear in all copies of - * the Software and that both the above copyright notice(s) and this - * permission notice appear in supporting documentation. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF - * THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS - * INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT - * OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS - * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ diff --git a/stepmania/src/archutils/Darwin/Crash.mm b/stepmania/src/archutils/Darwin/Crash.mm new file mode 100644 index 0000000000..5730578c44 --- /dev/null +++ b/stepmania/src/archutils/Darwin/Crash.mm @@ -0,0 +1,45 @@ +#import + +void InformUserOfCrash( const CString& sPath ) +{ + int ret = NSRunAlertPanel(@"StepMania has crashed", + @"StepMania has crashed. Debugging information " + @"has been output to\n\n%s\n\nPlease file a bug " + @"report at\n\nhttp://sf.net/tracker/?func=add&" + @"group_id=37892&atid=421366", + @"Open crashinfo.txt", @"Quit", nil, + sPath.c_str()); + + if( ret == NSAlertDefaultReturn ) + { + NSWorkspace *ws = [NSWorkspace sharedWorkspace]; + + [ws openFile:[NSString stringWithUTF8String:sPath]]; + } +} + +/* + * (c) 2003-2004 Steve Checkoway + * All rights reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, and/or sell copies of the Software, and to permit persons to + * whom the Software is furnished to do so, provided that the above + * copyright notice(s) and this permission notice appear in all copies of + * the Software and that both the above copyright notice(s) and this + * permission notice appear in supporting documentation. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF + * THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS + * INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT + * OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS + * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + */ + \ No newline at end of file