Version: 3.0.2
wxLogBuffer Class Reference

#include <wx/log.h>

+ Inheritance diagram for wxLogBuffer:

Detailed Description

wxLogBuffer is a very simple implementation of log sink which simply collects all the logged messages in a string (except the debug messages which are output in the usual way immediately as we're presumably not interested in collecting them for later).

The messages from different log function calls are separated by the new lines.

All the messages collected so far can be shown to the user (and the current buffer cleared) by calling the overloaded wxLogBuffer::Flush method.

Library:  wxBase
Category:  Logging

Public Member Functions

 wxLogBuffer ()
 The default ctor does nothing.
 
virtual void Flush ()
 Shows all the messages collected so far to the user (using a message box in the GUI applications or by printing them out to the console in text mode) and clears the internal buffer.
 
const wxStringGetBuffer () const
 Returns the current buffer contains.
 
- Public Member Functions inherited from wxLog
wxLogFormatterSetFormatter (wxLogFormatter *formatter)
 Sets the specified formatter as the active one.
 
void LogRecord (wxLogLevel level, const wxString &msg, const wxLogRecordInfo &info)
 Log the given record.
 

Additional Inherited Members

- Static Public Member Functions inherited from wxLog
static void AddTraceMask (const wxString &mask)
 Add the mask to the list of allowed masks for wxLogTrace().
 
static void ClearTraceMasks ()
 Removes all trace masks previously set with AddTraceMask().
 
static const wxArrayStringGetTraceMasks ()
 Returns the currently allowed list of string trace masks.
 
static bool IsAllowedTraceMask (const wxString &mask)
 Returns true if the mask is one of allowed masks for wxLogTrace().
 
static void RemoveTraceMask (const wxString &mask)
 Remove the mask from the list of allowed masks for wxLogTrace().
 
static void DontCreateOnDemand ()
 Instructs wxLog to not create new log targets on the fly if there is none currently (see GetActiveTarget()).
 
static wxLogGetActiveTarget ()
 Returns the pointer to the active log target (may be NULL).
 
static wxLogSetActiveTarget (wxLog *logtarget)
 Sets the specified log target as the active one.
 
static wxLogSetThreadActiveTarget (wxLog *logger)
 Sets a thread-specific log target.
 
static void FlushActive ()
 Flushes the current log target if any, does nothing if there is none.
 
static void Resume ()
 Resumes logging previously suspended by a call to Suspend().
 
static void Suspend ()
 Suspends the logging until Resume() is called.
 
static wxLogLevel GetLogLevel ()
 Returns the current log level limit.
 
static bool IsLevelEnabled (wxLogLevel level, wxString component)
 Returns true if logging at this level is enabled for the current thread.
 
static void SetComponentLevel (const wxString &component, wxLogLevel level)
 Sets the log level for the given component.
 
static void SetLogLevel (wxLogLevel logLevel)
 Specifies that log messages with level greater (numerically) than logLevel should be ignored and not sent to the active log target.
 
static bool EnableLogging (bool enable=true)
 Globally enable or disable logging.
 
static bool IsEnabled ()
 Returns true if logging is enabled at all now.
 
static bool GetRepetitionCounting ()
 Returns whether the repetition counting mode is enabled.
 
static void SetRepetitionCounting (bool repetCounting=true)
 Enables logging mode in which a log message is logged once, and in case exactly the same message successively repeats one or more times, only the number of repetitions is logged.
 
static const wxStringGetTimestamp ()
 Returns the current timestamp format string.
 
static void SetTimestamp (const wxString &format)
 Sets the timestamp format prepended by the default log targets to all messages.
 
static void DisableTimestamp ()
 Disables time stamping of the log messages.
 
static bool GetVerbose ()
 Returns whether the verbose mode is currently active.
 
static void SetVerbose (bool verbose=true)
 Activates or deactivates verbose mode in which the verbose messages are logged as the normal ones instead of being silently dropped.
 
- Protected Member Functions inherited from wxLog
virtual void DoLogRecord (wxLogLevel level, const wxString &msg, const wxLogRecordInfo &info)
 Called to log a new record.
 
virtual void DoLogTextAtLevel (wxLogLevel level, const wxString &msg)
 Called to log the specified string at given level.
 
virtual void DoLogText (const wxString &msg)
 Called to log the specified string.
 

Constructor & Destructor Documentation

wxLogBuffer::wxLogBuffer ( )

The default ctor does nothing.

Member Function Documentation

virtual void wxLogBuffer::Flush ( )
virtual

Shows all the messages collected so far to the user (using a message box in the GUI applications or by printing them out to the console in text mode) and clears the internal buffer.

Reimplemented from wxLog.

const wxString& wxLogBuffer::GetBuffer ( ) const

Returns the current buffer contains.

Messages from different log function calls are separated with the new lines in the buffer. The buffer can be cleared by Flush() which will also show the current contents to the user.