1 /* 2 * Lips3.h 3 * Copyright 1999-2000 Y.Takagi. All Rights Reserved. 4 */ 5 #ifndef __LIPS3_H 6 #define __LIPS3_H 7 8 9 #include "GraphicsDriver.h" 10 11 12 class Halftone; 13 14 15 class LIPS3Driver : public GraphicsDriver { 16 public: 17 LIPS3Driver(BMessage* msg, PrinterData* printer_data, 18 const PrinterCap* printer_cap); 19 20 protected: 21 virtual bool StartDocument(); 22 virtual bool StartPage(int page); 23 virtual bool NextBand(BBitmap *bitmap, BPoint *offset); 24 virtual bool EndPage(int page); 25 virtual bool EndDocument(bool success); 26 27 private: 28 void _Move(int x, int y); 29 void _BeginTextMode(); 30 void _JobStart(); 31 void _SoftReset(); 32 void _SizeUnitMode(); 33 void _SelectSizeUnit(); 34 void _PaperFeedMode(); 35 void _SelectPageFormat(); 36 void _DisableAutoFF(); 37 void _SetNumberOfCopies(); 38 void _MemorizedPosition(); 39 void _MoveAbsoluteHorizontal(int x); 40 void _CarriageReturn(); 41 void _MoveDown(int dy); 42 void _RasterGraphics(int size, int widthbyte, int height, 43 int compression_method, const uchar* buffer); 44 void _FormFeed(); 45 void _JobEnd(); 46 47 int fCurrentX; 48 int fCurrentY; 49 Halftone* fHalftone; 50 }; 51 52 #endif // __LIPS3_H 53