1 /* 2 * Lips3.h 3 * Copyright 1999-2000 Y.Takagi. All Rights Reserved. 4 */ 5 6 #ifndef __LIPS3_H 7 #define __LIPS3_H 8 9 #include "GraphicsDriver.h" 10 11 class Halftone; 12 13 class LIPS3Driver : public GraphicsDriver { 14 public: 15 LIPS3Driver(BMessage *msg, PrinterData *printer_data, const PrinterCap *printer_cap); 16 17 protected: 18 virtual bool startDoc(); 19 virtual bool startPage(int page); 20 virtual bool nextBand(BBitmap *bitmap, BPoint *offset); 21 virtual bool endPage(int page); 22 virtual bool endDoc(bool success); 23 24 private: 25 void move(int x, int y); 26 void beginTextMode(); 27 void jobStart(); 28 void softReset(); 29 void sizeUnitMode(); 30 void selectSizeUnit(); 31 void paperFeedMode(); 32 void selectPageFormat(); 33 void disableAutoFF(); 34 void setNumberOfCopies(); 35 void memorizedPosition(); 36 void moveAbsoluteHorizontal(int x); 37 void carriageReturn(); 38 void moveDown(int dy); 39 void rasterGraphics( 40 int size, 41 int widthbyte, 42 int height, 43 int compression_method, 44 const uchar *buffer); 45 void formFeed(); 46 void jobEnd(); 47 48 int fCurrentX; 49 int fCurrentY; 50 Halftone *fHalftone; 51 }; 52 53 #endif /* __LIPS3_H */ 54