diff -r 000000000000 -r 5d03bc08d59c printingservices/printerdrivers/pcl5/PCL5.H --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/printingservices/printerdrivers/pcl5/PCL5.H Tue Feb 02 01:47:50 2010 +0200 @@ -0,0 +1,113 @@ +// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of "Eclipse Public License v1.0" +// which accompanies this distribution, and is available +// at the URL "http://www.eclipse.org/legal/epl-v10.html". +// +// Initial Contributors: +// Nokia Corporation - initial contribution. +// +// Contributors: +// +// Description: +// + +#ifndef PCL5_H +#define PCL5_H + +#include + +class CBandedDevice; + +/** +@internalComponent +*/ +enum TPcl5PaperSize + { + EPcl5Executive = 1, + EPcl5Letter = 2, + EPcl5Legal = 3, + EPcl5Ledger = 6, + EPcl5A4 = 26, + EPcl5A3 = 27, + EPcl5Monarch = 80, + EPcl5Com_10 = 81, + EPcl5DL = 90, + EPcl5C5 = 91 + }; + +/** +@internalComponent +*/ +enum TPcl5Encoding + { + EPcl5None = 0, + EPcl5RunLength = 1, + EPcl5TIFF = 2, + EPcl5DeltaRow = 3, + EPcl5Reserved = 4, + EPcl5Adaptive = 5 + }; + +/** +@internalComponent +*/ +enum TPcl5Flags + { + EPcl5DeskjetPrinter = 1, + EPcl5LandscapeNotAvailable = 2, + EPcl5LandscapeBandingRightToLeft = 4 + }; + +/** +@internalComponent +*/ +enum TPcl5RasterGraphicsMode + { + EPcl5LogicalPageOrientation=0, + EPcl5PhysicalPageOrientation=3 + }; + +/** +@internalComponent +*/ +IMPORT_C CPrinterDevice* NewPrinterDeviceL(); + +class CPcl5Device : public CFbsDrvDevice +/** +@internalComponent +*/ + { +public: + CPcl5Device(); + ~CPcl5Device(); + TInt CreateContext(CGraphicsContext*& aGC); + void CreateControlL(CPrinterPort* aPrinterPort); + }; + +class CPcl5Control : public CFbsDrvControl +/** +@internalComponent +*/ + { +public: + static CPcl5Control* NewL(CPdrDevice* aPdrDevice, CPrinterPort* aPrinterPort, CStreamStore& aStore, TStreamId aResourcesStreamId); + ~CPcl5Control(); + TMoreOnPage QueueGetBand(TRequestStatus& aStatus, TBandAttributes& aBand); + // print control functions +protected: + CPcl5Control(CPdrDevice* aPdrDevice, CPrinterPort* aPrinterPort); + void ConstructL(CStreamStore& aStore, TStreamId aResourcesStreamId); + + void OutputBandL(); + + void SetPageSizeL(); + void SetPageOrientationL(); + void SetTextColorL(const TRgb& aColor); + +protected: + TBool iLandscapeMode; + }; + +#endif