00001 #ifndef WX_DEBUGGER_CLASS 00002 #define WX_DEBUGGER_CLASS 00003 00004 /*****************************************************************************\ 00005 * * 00006 * Name : wx_debugger * 00007 * Author : Aaron Buchanan * 00008 * Author : Chris Koeritz * 00009 * * 00010 * Purpose: * 00011 * * 00012 * Provides a mechanism for printing debugging information and either * 00013 * displaying it to a wxEventHandler recipient. Also allows the * 00014 * information to be saved in a log file. * 00015 * * 00016 ******************************************************************************* 00017 * Copyright (c) 1995-$now By Author. This program is free software; you can * 00018 * redistribute it and/or modify it under the terms of the GNU General Public * 00019 * License as published by the Free Software Foundation; either version 2 of * 00020 * the License or (at your option) any later version. This is online at: * 00021 * http://www.fsf.org/copyleft/gpl.html * 00022 * Please send any updates to: fred@gruntose.com * 00023 \*****************************************************************************/ 00024 00025 #include "dll_wx_ext.h" 00026 00027 #include <basis/portable.h> 00028 #include <win_ext/debugger.h> 00029 00030 #include <basis/trap_new.addin> 00031 #undef GetClassInfo 00032 #include <wx/event.h> 00033 #include <basis/untrap_new.addin> 00034 00035 class WX_EXTENSIONS_CLASS_STYLE wx_debugger : public debugger 00036 { 00037 public: 00038 wx_debugger(wxEvtHandler *recipient, synchronicity synch = delayed, 00039 line_ending ending = LF_AT_END, 00040 time_stamp_method stamp = NO_STAMP); 00041 // allows debugging information to be fired at a previously existing 00042 // event handler. the "recipient" is the wxEvtHandler of the 00043 // handler, the "synch" determines how the information is sent, and the 00044 // "ending" defines how the ends of lines are treated. if the "stamp" is 00045 // ADD_STAMP, then each line is prefixed with the current date and time. 00046 00047 virtual ~wx_debugger(); 00048 00049 virtual outcome log(const istring &info, int filter = ALWAYS_PRINT); 00050 // logs information to the log file as well as showing it in the debugging 00051 // window. 00052 00053 static const int &EVENT(); 00054 // sent as the "msg" in a windows message structure when classes have debug 00055 // information that they want a debug window to receive. this is the 00056 // message to look for in your window's event handler (or to put in an OWL 00057 // response table using the below macro). 00058 }; 00059 00060 #endif 00061
1.5.1