wxWidgets: wxLogFormatter Class Reference

| Version: 3.0.2

- Main Page
- Related Pages
- Categories
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | List of all members
wxLogFormatter Class Reference
Logging

`#include <wx/log.h>`

## Detailed Description

wxLogFormatter class is used to format the log messages.

It implements the default formatting and can be derived from to create custom formatters.

The default implementation formats the message into a string containing the time stamp, level-dependent prefix and the message itself.

To change it, you can derive from it and override its Format() method. For example, to include the thread id in the log messages you can use

class LogFormatterWithThread : public wxLogFormatter
{
virtual wxString Format(wxLogLevel level,
const wxString& msg,
const wxLogRecordInfo& info) const
{
return wxString::Format("[%d] %s(%d) : %s",
info.threadId, info.filename, info.line, msg);
}
};

And then associate it with wxLog instance using its SetFormatter(). Then, if you call:

wxLogMessage(_("*** Application started ***"));

the log output could be something like:

        [7872] d:\testApp\src\testApp.cpp(85) : *** Application started ***

##

Library: wxBase
Category: Logging

See Also
  Logging Overview

Since
  2.9.4

## Public Member Functions
| wxLogFormatter ()
| The default ctor does nothing.
virtual wxString | Format (wxLogLevel level, const wxString &msg, const wxLogRecordInfo &info) const
| This function creates the full log message string.

## Protected Member Functions
virtual wxString | FormatTime (time_t time) const
| This function formats the time stamp part of the log message.

## Constructor & Destructor Documentation

wxLogFormatter::wxLogFormatter | ( |  | ) |

The default ctor does nothing.

## Member Function Documentation

virtual wxString wxLogFormatter::Format | ( | wxLogLevel | level,
|  | const wxString & | msg,
|  | const wxLogRecordInfo & | info
| ) |  | const
| virtual

This function creates the full log message string.

Override it to customize the output string format.

Parameters

  level | The level of this log record, e.g. wxLOG_Error.
  msg | The log message itself.
  info | All the other information (such as time, component, location...) associated with this log record.

Returns
  The formated message.

Note
  Time stamping is disabled for Visual C++ users in debug builds by default because otherwise it would be impossible to directly go to the line from which the log message was generated by simply clicking in the debugger window on the corresponding error message. If you wish to enable it, override FormatTime().

virtual wxString wxLogFormatter::FormatTime | ( | time_t | time | ) | const
| protectedvirtual

This function formats the time stamp part of the log message.

Override this function if you need to customize just the time stamp.

Parameters

  time | Time to format.

Returns
  The formated time string, may be empty.