Contents Up Previous Next

wxStreamToTextRedirector

This class can be used to (temporarily) redirect all output sent to a C++ ostream object to a wxTextCtrl instead.

NB: Some compilers and/or build configurations don't support multiply inheriting wxTextCtrl from std::streambuf in which case this class is not compiled in. You also must have wxUSE_STD_IOSTREAM option on (i.e. set to 1) in your setup.h to be able to use it. Under Unix, specify --enable-std_iostreams switch when running configure for this.

Example of usage:

  using namespace std;

  wxTextCtrl *text = new wxTextCtrl(...);

  {
    wxStreamToTextRedirector redirect(text);

    // this goes to the text control
    cout << "Hello, text!" << endl;
  }

  // this goes somewhere else, presumably to stdout
  cout << "Hello, console!" << endl;
Derived from

No base class

Include files

<wx/textctrl.h>

See also

wxTextCtrl

Members

wxStreamToTextRedirector::wxStreamToTextRedirector
wxStreamToTextRedirector::~wxStreamToTextRedirector


wxStreamToTextRedirector::wxStreamToTextRedirector

wxStreamToTextRedirector(wxTextCtrl *text, ostream *ostr = NULL)

The constructor starts redirecting output sent to ostr or cout for the default parameter value to the text control text.

Parameters

text

ostr


wxStreamToTextRedirector::~wxStreamToTextRedirector

~wxStreamToTextRedirector()

When a wxStreamToTextRedirector object is destroyed, the redirection is ended and any output sent to the C++ ostream which had been specified at the time of the object construction will go to its original destination.