Model Railroad System  2.2.1
Public Member Functions | Private Attributes | List of all members
FCFSupport::TextPrinterDevice Class Reference

Derived class for printing on generic plain text printers. More...

#include <TextPrinter.h>

Inheritance diagram for FCFSupport::TextPrinterDevice:
FCFSupport::PrinterDevice

Public Member Functions

 TextPrinterDevice (const string filename="", const string title="", PageSize pageSize=Letter, char **outmessage=NULL)
 Constructor. More...
 
virtual bool OpenPrinter (const string filename, PageSize pageSize=Letter, char **outmessage=NULL)
 Member function to open the printer. More...
 
virtual bool ClosePrinter (char **outmessage)
 Close the printer. More...
 
virtual bool NewPage (const string heading="")
 Perform a page feed and print a heading. More...
 
virtual bool PutLine (const string line)
 Print out a string and follow it with a new line sequence. More...
 
virtual bool Put (const string text)
 Print a string of text. More...
 
virtual bool Tab (int column)
 Tab over to the specified column. More...
 
virtual ~TextPrinterDevice ()
 Destructor. More...
 
- Public Member Functions inherited from FCFSupport::PrinterDevice
 PrinterDevice (const string filename="", const string title="", PageSize pageSize_=Letter, char **outmessage=NULL)
 Constructor. More...
 
bool IsOpenP () const
 Is the printer open? More...
 
PageSize PrinterPageSize () const
 Return the page size. More...
 
virtual bool SetTypeSpacing (TypeSpacing spacing)
 Set the the spacing. More...
 
virtual bool SetTypeWeight (TypeWeight weight)
 Set the type weight. More...
 
virtual bool SetTypeSlant (TypeSlant slant)
 Set the type slant. More...
 
virtual bool Put (int number)
 Print an integer. More...
 
virtual bool Put (double number)
 Print a double. More...
 
virtual ~PrinterDevice ()
 Destructor. More...
 

Private Attributes

ofstream printerStream
 Output stream. More...
 
int currentColumn
 Current column. More...
 

Additional Inherited Members

- Public Types inherited from FCFSupport::PrinterDevice
enum  PageSize { Letter, A4 }
 Page size selection, for those printers that support different page sizes. More...
 
enum  TypeSpacing { One, Half, Double }
 Horizontal type spacing. More...
 
enum  TypeWeight { Normal, Bold }
 Type weight. More...
 
enum  TypeSlant { Roman, Italic }
 Type slant. More...
 
- Protected Attributes inherited from FCFSupport::PrinterDevice
bool isOpenP
 Is open flag. More...
 
PageSize pageSize
 Document page size. More...
 

Detailed Description

Derived class for printing on generic plain text printers.

Only the tab columns and pagenation (every 60 lines or no) is implemented, that is, a very basic plain text output device.

Author
Robert Heller <heller@deepsoft.com>

Constructor & Destructor Documentation

◆ TextPrinterDevice()

FCFSupport::TextPrinterDevice::TextPrinterDevice ( const string  filename = "",
const string  title = "",
PageSize  pageSize = Letter,
char **  outmessage = NULL 
)

Constructor.

Create a new printer device instance from a set of parameters, all of which have default values, so this also doubles as the default base constructor.

Parameters
filenameOutput filename.
titleAn internal document title string.
pageSizeThe page size to use.
outmessagePointer to a pointer to receive any error messages for any errors that might occur. This parameter is hidden from the Tcl interface.

◆ ~TextPrinterDevice()

virtual FCFSupport::TextPrinterDevice::~TextPrinterDevice ( )
virtual

Destructor.


Close the printer.

Member Function Documentation

◆ ClosePrinter()

virtual bool FCFSupport::TextPrinterDevice::ClosePrinter ( char **  outmessage)
virtual

Close the printer.

Parameters
outmessagePointer to a pointer to receive any error messages for any errors that might occur. This parameter is hidden from the Tcl interface.

Reimplemented from FCFSupport::PrinterDevice.

◆ NewPage()

virtual bool FCFSupport::TextPrinterDevice::NewPage ( const string  heading = "")
virtual

Perform a page feed and print a heading.

Parameters
headingThe heading string.

Reimplemented from FCFSupport::PrinterDevice.

◆ OpenPrinter()

virtual bool FCFSupport::TextPrinterDevice::OpenPrinter ( const string  filename,
PageSize  pageSize = Letter,
char **  outmessage = NULL 
)
virtual

Member function to open the printer.

Parameters
filenameOutput filename.
pageSizeThe page size to use.
outmessagePointer to a pointer to receive any error messages for any errors that might occur. This parameter is hidden from the Tcl interface.

Reimplemented from FCFSupport::PrinterDevice.

◆ Put()

virtual bool FCFSupport::TextPrinterDevice::Put ( const string  text)
virtual

Print a string of text.

Don't include a newline.

Parameters
textThe string to print.

Reimplemented from FCFSupport::PrinterDevice.

◆ PutLine()

virtual bool FCFSupport::TextPrinterDevice::PutLine ( const string  line)
virtual

Print out a string and follow it with a new line sequence.

Parameters
lineThe line to print.

Reimplemented from FCFSupport::PrinterDevice.

◆ Tab()

virtual bool FCFSupport::TextPrinterDevice::Tab ( int  column)
virtual

Tab over to the specified column.

Parameters
columnThe desired tab column.

Reimplemented from FCFSupport::PrinterDevice.

Member Data Documentation

◆ currentColumn

int FCFSupport::TextPrinterDevice::currentColumn
private

Current column.

◆ printerStream

ofstream FCFSupport::TextPrinterDevice::printerStream
private

Output stream.