This class can be used to (temporarily) redirect all output sent to a C++ ostream object to a TextCtrl instead.
NB: Some compilers and/or build configurations don’t support multiply
inheriting TextCtrl from std::streambuf in which
case this class is not compiled in. You also must have USE_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;
TextCtrl text = new TextCtrl(...);
{
StreamToTextRedirector redirect(text);
}
// this goes to the text control
cout << "Hello, text!" << endl;
// this goes somewhere else, presumably to stdout
cout << "Hello, console!" << endl;
No base class
StreamToTextRedirector.newTextCtrl% text, ostream ostr = nil)
The constructor starts redirecting output sent to ostr or cout for the default parameter value to the text control text.
destructor*()
When a StreamToTextRedirector 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.
[This page automatically generated from the Textile source at Thu May 01 00:50:44 +0100 2008]