Tweak themes for more color consistency.
[ntk.git] / src / Fl_abort.cxx
blobf854615573ceb671d098715fddf82df4764f95b4
1 //
2 // "$Id: Fl_abort.cxx 7903 2010-11-28 21:06:39Z matt $"
3 //
4 // Warning/error message code for the Fast Light Tool Kit (FLTK).
5 //
6 // Copyright 1998-2010 by Bill Spitzak and others.
7 //
8 // This library is free software; you can redistribute it and/or
9 // modify it under the terms of the GNU Library General Public
10 // License as published by the Free Software Foundation; either
11 // version 2 of the License, or (at your option) any later version.
13 // This library is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 // Library General Public License for more details.
18 // You should have received a copy of the GNU Library General Public
19 // License along with this library; if not, write to the Free Software
20 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
21 // USA.
23 // Please report all bugs and problems on the following page:
25 // http://www.fltk.org/str.php
28 // This method is in its own source file so that stdlib and stdio
29 // do not need to be included in Fl.cxx:
30 // You can also override this by redefining all of these.
32 #include <FL/Fl.H>
33 #include <stdio.h>
34 #include <stdlib.h>
35 #include <stdarg.h>
36 #include "flstring.h"
38 #ifdef WIN32
39 # include <windows.h>
41 static void warning(const char *, ...) {
42 // Show nothing for warnings under WIN32...
45 static void error(const char *format, ...) {
46 va_list args;
47 char buf[1024];
48 va_start(args, format);
49 vsnprintf(buf, 1024, format, args);
50 va_end(args);
51 MessageBox(0,buf,"Error",MB_ICONEXCLAMATION|MB_SYSTEMMODAL);
54 static void fatal(const char *format, ...) {
55 va_list args;
56 char buf[1024];
57 va_start(args, format);
58 vsnprintf(buf, 1024, format, args);
59 va_end(args);
60 MessageBox(0,buf,"Error",MB_ICONSTOP|MB_SYSTEMMODAL);
61 ::exit(1);
64 #else
66 static void warning(const char *format, ...) {
67 va_list args;
68 va_start(args, format);
69 vfprintf(stderr, format, args);
70 va_end(args);
71 fputc('\n', stderr);
72 fflush(stderr);
75 static void error(const char *format, ...) {
76 va_list args;
77 va_start(args, format);
78 vfprintf(stderr, format, args);
79 va_end(args);
80 fputc('\n', stderr);
81 fflush(stderr);
84 static void fatal(const char *format, ...) {
85 va_list args;
86 va_start(args, format);
87 vfprintf(stderr, format, args);
88 va_end(args);
89 fputc('\n', stderr);
90 fflush(stderr);
91 ::exit(1);
94 #endif
96 void (*Fl::warning)(const char* format, ...) = ::warning;
97 void (*Fl::error)(const char* format, ...) = ::error;
98 void (*Fl::fatal)(const char* format, ...) = ::fatal;
101 // End of "$Id: Fl_abort.cxx 7903 2010-11-28 21:06:39Z matt $".