CPrinterControl Class Reference

#include <gdi.h>

Link against: gdi.lib

class CPrinterControl : public CBase

Inherits from

Detailed Description

Printer control interface.

This abstract base class acts as the interface between a CPrinterDevice object and the printer. It creates the context for, and controls the progress and termination of the print job.

Only those who need to add new printer drivers should write derived classes. After instantiation of such a class, using CPrinterDevice::CreateControlL(), the object can be accessed via the iControl member of CPrinterDevice.

See also: CPrinterDevice

Member Attribute Documentation

iPrinterPort

CPrinterPort *iPrinterPort[protected]

Printer port.

iState

TState iState[protected]

Printing state.

Member Enumeration Documentation

Enum TMoreOnPage

Flags indicating whether there is more on the page to print.

EnumeratorValueDescription
EMoreOnPage

Indicates there is more to print on the current page.

ENoMoreOnPage

Indicates there is no more to print on the current page.

Enum TState

State flags.

EnumeratorValueDescription
ENotPrinting

Not printing.

EPrinting

Printing.

Constructor & Destructor Documentation

CPrinterControl ( CPrinterPort * )

IMPORT_CCPrinterControl(CPrinterPort *aPrinterPort)[protected]

~CPrinterControl ( )

IMPORT_C~CPrinterControl()

Destructor.

It frees all resources owned by the object, prior to its destruction.

Member Function Documentation

AbortPrint ( )

voidAbortPrint()[pure virtual]

Aborts the print process before it has completed.

This function should be called if QueueGetBand() reports an error.

BandsPerPage ( )

TInt BandsPerPage()[pure virtual]

Gets the number of bands per page.

Return Value
The number of bands on each page.

QueueEndPrint ( TRequestStatus & )

voidQueueEndPrint(TRequestStatus &aStatus)[pure virtual]

Terminates the print process.

This is an asynchronous function and is called when no more bands in the document remain to be printed.Note that all bands have been printed when no more pages or copies remain to be printed, and QueueGetBand() returns ENoMoreToPrint.

Parameters
aStatusRequest status object. On successful completion contains KErrNone, otherwise another of the system-wide error codes.

QueueGetBand ( TRequestStatus &, TBandAttributes & )

TMoreOnPage QueueGetBand(TRequestStatus &aStatus,
TBandAttributes &aBand
)[pure virtual]

Prints the next band on the page.

This is an asynchronous function.

Parameters
aStatusRequest status object. On successful completion contains KErrNone, otherwise another of the system-wide error codes.
aBandOn return, indicates the attributes of the band, including its height and width and whether or not the device will ignore one or other of graphics or text output. This information may be used by applications to draw more efficiently, or may be ignored
Return Value
EMoreOnPage, if any unprinted bands remain on the current page. ENoMoreOnPage, if the current band is last on page.