wxLogNull

This class allows to temporarily suspend logging. All calls to the log functions during the life time of an object of this class are just ignored.

In particular, it can be used to suppress the log messages given by wxWidgets itself but it should be noted that it is rarely the best way to cope with this problem as all log messages are suppressed, even if they indicate a completely different error than the one the programmer wanted to suppress.

For instance, the example of the overview:

  wxFile file;

  // wxFile.Open() normally complains if file can't be opened, we don't want it
  {
    wxLogNull logNo;
    if ( !file.Open("bar") )
      ... process error ourselves ...
  } // ~wxLogNull called, old log sink restored

  wxLogMessage("..."); // ok

would be better written as:

  wxFile file;

  // don't try to open file if it doesn't exist, we are prepared to deal with
  // this ourselves - but all other errors are not expected
  if ( wxFile::Exists("bar") )
  {
      // gives an error message if the file couldn't be opened
      file.Open("bar");
  }
  else
  {
      ...
  }

Derived from

wxLog

Include files

<wx/log.h>



wxLogNull::wxLogNull



wxLogNull(void)

Suspends logging.



wxLogNull::~wxLogNull

Resumes logging.



ymasuda 平成17年11月19日