|
fltk 1.3.0rc3
About: FLTK (Fast Light Tool Kit) is a cross-platform C++ GUI toolkit for UNIX/Linux (X11), Microsoft Windows, and MacOS X. Release candidate.
SfR Fresh Dox: fltk-1.3.0rc3-source.tar.gz ("inofficial" and yet experimental doxygen-generated source code documentation) ![]() |
00001 // 00002 // "$Id: Fl_abort.cxx 7903 2010-11-28 21:06:39Z matt $" 00003 // 00004 // Warning/error message code for the Fast Light Tool Kit (FLTK). 00005 // 00006 // Copyright 1998-2010 by Bill Spitzak and others. 00007 // 00008 // This library is free software; you can redistribute it and/or 00009 // modify it under the terms of the GNU Library General Public 00010 // License as published by the Free Software Foundation; either 00011 // version 2 of the License, or (at your option) any later version. 00012 // 00013 // This library is distributed in the hope that it will be useful, 00014 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00016 // Library General Public License for more details. 00017 // 00018 // You should have received a copy of the GNU Library General Public 00019 // License along with this library; if not, write to the Free Software 00020 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 00021 // USA. 00022 // 00023 // Please report all bugs and problems on the following page: 00024 // 00025 // http://www.fltk.org/str.php 00026 // 00027 00028 // This method is in its own source file so that stdlib and stdio 00029 // do not need to be included in Fl.cxx: 00030 // You can also override this by redefining all of these. 00031 00032 #include <FL/Fl.H> 00033 #include <stdio.h> 00034 #include <stdlib.h> 00035 #include <stdarg.h> 00036 #include "flstring.h" 00037 00038 #ifdef WIN32 00039 # include <windows.h> 00040 00041 static void warning(const char *, ...) { 00042 // Show nothing for warnings under WIN32... 00043 } 00044 00045 static void error(const char *format, ...) { 00046 va_list args; 00047 char buf[1024]; 00048 va_start(args, format); 00049 vsnprintf(buf, 1024, format, args); 00050 va_end(args); 00051 MessageBox(0,buf,"Error",MB_ICONEXCLAMATION|MB_SYSTEMMODAL); 00052 } 00053 00054 static void fatal(const char *format, ...) { 00055 va_list args; 00056 char buf[1024]; 00057 va_start(args, format); 00058 vsnprintf(buf, 1024, format, args); 00059 va_end(args); 00060 MessageBox(0,buf,"Error",MB_ICONSTOP|MB_SYSTEMMODAL); 00061 ::exit(1); 00062 } 00063 00064 #else 00065 00066 static void warning(const char *format, ...) { 00067 va_list args; 00068 va_start(args, format); 00069 vfprintf(stderr, format, args); 00070 va_end(args); 00071 fputc('\n', stderr); 00072 fflush(stderr); 00073 } 00074 00075 static void error(const char *format, ...) { 00076 va_list args; 00077 va_start(args, format); 00078 vfprintf(stderr, format, args); 00079 va_end(args); 00080 fputc('\n', stderr); 00081 fflush(stderr); 00082 } 00083 00084 static void fatal(const char *format, ...) { 00085 va_list args; 00086 va_start(args, format); 00087 vfprintf(stderr, format, args); 00088 va_end(args); 00089 fputc('\n', stderr); 00090 fflush(stderr); 00091 ::exit(1); 00092 } 00093 00094 #endif 00095 00096 void (*Fl::warning)(const char* format, ...) = ::warning; 00097 void (*Fl::error)(const char* format, ...) = ::error; 00098 void (*Fl::fatal)(const char* format, ...) = ::fatal; 00099 00100 // 00101 // End of "$Id: Fl_abort.cxx 7903 2010-11-28 21:06:39Z matt $". 00102 //