Model Railroad System 2.2.2
|
Base class for printer devices (hard copy output). More...
#include <Printer.h>
Public Types | |
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... | |
Public Member Functions | |
PrinterDevice (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... | |
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 | 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 | Put (int number) |
Print an integer. More... | |
virtual bool | Put (double number) |
Print a double. More... | |
virtual bool | Tab (int column) |
Tab over to the specified column. More... | |
virtual | ~PrinterDevice () |
Destructor. More... | |
Protected Attributes | |
bool | isOpenP |
Is open flag. More... | |
PageSize | pageSize |
Document page size. More... | |
Base class for printer devices (hard copy output).
Defines a very basic set of printing operations, including printing strings, numbers, lines, form feeds, tabbing, and changing the spacing, weight, and slant of the type used.
|
inline |
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.
filename | Output filename. |
title | An internal document title string. |
pageSize_ | The page size to use. |
outmessage | Pointer to a pointer to receive any error messages for any errors that might occur. This parameter is hidden from the Tcl interface. |
|
inlinevirtual |
|
inlinevirtual |
Close the printer.
outmessage | Pointer to a pointer to receive any error messages for any errors that might occur. This parameter is hidden from the Tcl interface. |
Reimplemented in FCFSupport::LQ24PrinterDevice, FCFSupport::PostScriptPrinterDevice, FCFSupport::TextPrinterDevice, and FCFSupport::PDFPrinterDevice.
References isOpenP.
Referenced by ~PrinterDevice().
|
inline |
Is the printer open?
References isOpenP.
|
inlinevirtual |
Perform a page feed and print a heading.
heading | The heading string. |
Reimplemented in FCFSupport::LQ24PrinterDevice, FCFSupport::PDFPrinterDevice, FCFSupport::PostScriptPrinterDevice, and FCFSupport::TextPrinterDevice.
|
inlinevirtual |
Member function to open the printer.
filename | Output filename. |
pageSize | The page size to use. |
outmessage | Pointer to a pointer to receive any error messages for any errors that might occur. This parameter is hidden from the Tcl interface. |
Reimplemented in FCFSupport::LQ24PrinterDevice, FCFSupport::PDFPrinterDevice, FCFSupport::PostScriptPrinterDevice, and FCFSupport::TextPrinterDevice.
|
inline |
Return the page size.
References pageSize.
|
inlinevirtual |
Print a string of text.
Don't include a newline.
text | The string to print. |
Reimplemented in FCFSupport::LQ24PrinterDevice, FCFSupport::PDFPrinterDevice, FCFSupport::PostScriptPrinterDevice, and FCFSupport::TextPrinterDevice.
Referenced by Put().
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Print out a string and follow it with a new line sequence.
line | The line to print. |
Reimplemented in FCFSupport::LQ24PrinterDevice, FCFSupport::TextPrinterDevice, FCFSupport::PDFPrinterDevice, and FCFSupport::PostScriptPrinterDevice.
|
inlinevirtual |
Set the type slant.
slant | The new type slant. |
Reimplemented in FCFSupport::LQ24PrinterDevice, FCFSupport::PDFPrinterDevice, and FCFSupport::PostScriptPrinterDevice.
|
inlinevirtual |
Set the the spacing.
spacing | The new type spacing. |
Reimplemented in FCFSupport::LQ24PrinterDevice, FCFSupport::PDFPrinterDevice, and FCFSupport::PostScriptPrinterDevice.
|
inlinevirtual |
Set the type weight.
weight | The new type weight. |
Reimplemented in FCFSupport::LQ24PrinterDevice, FCFSupport::PDFPrinterDevice, and FCFSupport::PostScriptPrinterDevice.
|
inlinevirtual |
Tab over to the specified column.
column | The desired tab column. |
Reimplemented in FCFSupport::LQ24PrinterDevice, FCFSupport::PDFPrinterDevice, FCFSupport::PostScriptPrinterDevice, and FCFSupport::TextPrinterDevice.
|
protected |
Is open flag.
Referenced by ClosePrinter(), IsOpenP(), OpenPrinter(), and PrinterDevice().
|
protected |
Document page size.
Referenced by OpenPrinter(), PrinterDevice(), and PrinterPageSize().