Implemented Floyd Steinberg dithering and made it default.

Renamed many constants and fields according to Open BeOS coding style guide.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6433 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Michael Pfeiffer
2004-01-30 17:10:36 +00:00
parent 7ea239b20d
commit 2f6e49a929
25 changed files with 972 additions and 1095 deletions
+28 -26
View File
@@ -17,7 +17,9 @@ class BMessage;
class PrinterData;
class PrinterCap;
#define GDF_ROTATE_BAND_BITMAP 0x01
enum {
kGDFRotateBandBitmap = 1
};
class GraphicsDriver {
public:
@@ -67,64 +69,64 @@ private:
static void rgb32_to_gray(void* src, void* dst, int width);
static void cmap8_to_gray(void* src, void* dst, int width);
uint32 __flags;
BMessage *__msg;
BView *__view;
BBitmap *__bitmap;
Transport *__transport;
JobData *__org_job_data;
JobData *__real_job_data;
PrinterData *__printer_data;
const PrinterCap *__printer_cap;
SpoolMetaData *__spool_meta_data;
uint32 fFlags;
BMessage *fMsg;
BView *fView;
BBitmap *fBitmap;
Transport *fTransport;
JobData *fOrgJobData;
JobData *fRealJobData;
PrinterData *fPrinterData;
const PrinterCap *fPrinterCap;
SpoolMetaData *fSpoolMetaData;
int __page_width;
int __page_height;
int __band_width;
int __band_height;
int __pixel_depth;
int __band_count;
int __internal_copies;
int fPageWidth;
int fPageHeight;
int fBandWidth;
int fBandHeight;
int fPixelDepth;
int fBandCount;
int fInternalCopies;
};
inline const JobData *GraphicsDriver::getJobData() const
{
return __real_job_data;
return fRealJobData;
}
inline const PrinterData *GraphicsDriver::getPrinterData() const
{
return __printer_data;
return fPrinterData;
}
inline const PrinterCap *GraphicsDriver::getPrinterCap() const
{
return __printer_cap;
return fPrinterCap;
}
inline const SpoolMetaData *GraphicsDriver::getSpoolMetaData() const
{
return __spool_meta_data;
return fSpoolMetaData;
}
inline int GraphicsDriver::getPageWidth() const
{
return __page_width;
return fPageWidth;
}
inline int GraphicsDriver::getPageHeight() const
{
return __page_height;
return fPageHeight;
}
inline int GraphicsDriver::getBandWidth() const
{
return __band_width;
return fBandWidth;
}
inline int GraphicsDriver::getBandHeight() const
{
return __band_height;
return fBandHeight;
}
#endif /* __GRAPHICSDRIVER_H */
+234 -235
View File
@@ -15,220 +15,219 @@ class PrinterCap;
class JobData {
public:
enum ORIENTATION {
PORTRAIT,
LANDSCAPE
enum Orientation {
kPortrait,
kLandscape
};
enum PAPER {
LETTER = 1, // 1 Letter 8 1/2 x 11 in
LETTERSMALL, // 2 Letter Small 8 1/2 x 11 in
TABLOID, // 3 Tabloid 11 x 17 in
LEDGER, // 4 Ledger 17 x 11 in
LEGAL, // 5 Legal 8 1/2 x 14 in
STATEMENT, // 6 Statement 5 1/2 x 8 1/2 in
EXECUTIVE, // 7 Executive 7 1/4 x 10 1/2 in
A3, // 8 A3 297 x 420 mm
A4, // 9 A4 210 x 297 mm
A4SMALL, // 10 A4 Small 210 x 297 mm
A5, // 11 A5 148 x 210 mm
B4, // 12 B4 (JIS) 250 x 354
B5, // 13 B5 (JIS) 182 x 257 mm
FOLIO, // 14 Folio 8 1/2 x 13 in
QUARTO, // 15 Quarto 215 x 275 mm
P_10X14, // 16 10x14 in
P_11X17, // 17 11x17 in
NOTE, // 18 Note 8 1/2 x 11 in
ENV_9, // 19 Envelope #9 3 7/8 x 8 7/8
ENV_10, // 20 Envelope #10 4 1/8 x 9 1/2
ENV_11, // 21 Envelope #11 4 1/2 x 10 3/8
ENV_12, // 22 Envelope #12 4 \276 x 11
ENV_14, // 23 Envelope #14 5 x 11 1/2
CSHEET, // 24 C size sheet
DSHEET, // 25 D size sheet
ESHEET, // 26 E size sheet
ENV_DL, // 27 Envelope DL 110 x 220mm
ENV_C5, // 28 Envelope C5 162 x 229 mm
ENV_C3, // 29 Envelope C3 324 x 458 mm
ENV_C4, // 30 Envelope C4 229 x 324 mm
ENV_C6, // 31 Envelope C6 114 x 162 mm
ENV_C65, // 32 Envelope C65 114 x 229 mm
ENV_B4, // 33 Envelope B4 250 x 353 mm
ENV_B5, // 34 Envelope B5 176 x 250 mm
ENV_B6, // 35 Envelope B6 176 x 125 mm
ENV_ITALY, // 36 Envelope 110 x 230 mm
ENV_MONARCH, // 37 Envelope Monarch 3.875 x 7.5 in
ENV_PERSONAL, // 38 6 3/4 Envelope 3 5/8 x 6 1/2 in
FANFOLD_US, // 39 US Std Fanfold 14 7/8 x 11 in
FANFOLD_STD_GERMAN, // 40 German Std Fanfold 8 1/2 x 12 in
FANFOLD_LGL_GERMAN, // 41 German Legal Fanfold 8 1/2 x 13 in
ISO_B4, // 42 B4 (ISO) 250 x 353 mm
JAPANESE_POSTCARD, // 43 Japanese Postcard 100 x 148 mm
P_9X11, // 44 9 x 11 in
P_10X11, // 45 10 x 11 in
P_15X11, // 46 15 x 11 in
ENV_INVITE, // 47 Envelope Invite 220 x 220 mm
RESERVED_48, // 48 RESERVED--DO NOT USE
RESERVED_49, // 49 RESERVED--DO NOT USE
LETTER_EXTRA, // 50 Letter Extra 9 \275 x 12 in
LEGAL_EXTRA, // 51 Legal Extra 9 \275 x 15 in
TABLOID_EXTRA, // 52 Tabloid Extra 11.69 x 18 in
A4_EXTRA, // 53 A4 Extra 9.27 x 12.69 in
LETTER_TRANSVERSE, // 54 Letter Transverse 8 \275 x 11 in
A4_TRANSVERSE, // 55 A4 Transverse 210 x 297 mm
LETTER_EXTRA_TRANSVERSE,// 56 Letter Extra Transverse 9\275 x 12 in
A_PLUS, // 57 SuperA/SuperA/A4 227 x 356 mm
B_PLUS, // 58 SuperB/SuperB/A3 305 x 487 mm
LETTER_PLUS, // 59 Letter Plus 8.5 x 12.69 in
A4_PLUS, // 60 A4 Plus 210 x 330 mm
A5_TRANSVERSE, // 61 A5 Transverse 148 x 210 mm
B5_TRANSVERSE, // 62 B5 (JIS) Transverse 182 x 257 mm
A3_EXTRA, // 63 A3 Extra 322 x 445 mm
A5_EXTRA, // 64 A5 Extra 174 x 235 mm
B5_EXTRA, // 65 B5 (ISO) Extra 201 x 276 mm
A2, // 66 A2 420 x 594 mm
A3_TRANSVERSE, // 67 A3 Transverse 297 x 420 mm
A3_EXTRA_TRANSVERSE, // 68 A3 Extra Transverse 322 x 445 mm
DBL_JAPANESE_POSTCARD, // 69 Japanese Double Postcard 200 x 148 mm
A6, // 70 A6 105 x 148 mm
JENV_KAKU2, // 71 Japanese Envelope Kaku #2
JENV_KAKU3, // 72 Japanese Envelope Kaku #3
JENV_CHOU3, // 73 Japanese Envelope Chou #3
JENV_CHOU4, // 74 Japanese Envelope Chou #4
LETTER_ROTATED, // 75 Letter Rotated 11 x 8 1/2 11 in
A3_ROTATED, // 76 A3 Rotated 420 x 297 mm
A4_ROTATED, // 77 A4 Rotated 297 x 210 mm
A5_ROTATED, // 78 A5 Rotated 210 x 148 mm
B4_JIS_ROTATED, // 79 B4 (JIS) Rotated 364 x 257 mm
B5_JIS_ROTATED, // 80 B5 (JIS) Rotated 257 x 182 mm
JAPANESE_POSTCARD_ROTATED, // 81 Japanese Postcard Rotated 148 x 100 mm
DBL_JAPANESE_POSTCARD_ROTATED, // 82 Double Japanese Postcard Rotated 148 x 200 mm
A6_ROTATED, // 83 A6 Rotated 148 x 105 mm
JENV_KAKU2_ROTATED, // 84 Japanese Envelope Kaku #2 Rotated
JENV_KAKU3_ROTATED, // 85 Japanese Envelope Kaku #3 Rotated
JENV_CHOU3_ROTATED, // 86 Japanese Envelope Chou #3 Rotated
JENV_CHOU4_ROTATED, // 87 Japanese Envelope Chou #4 Rotated
B6_JIS, // 88 B6 (JIS) 128 x 182 mm
B6_JIS_ROTATED, // 89 B6 (JIS) Rotated 182 x 128 mm
P_12X11, // 90 12 x 11 in
JENV_YOU4, // 91 Japanese Envelope You #4
JENV_YOU4_ROTATED, // 92 Japanese Envelope You #4 Rotated
P16K, // 93 PRC 16K 146 x 215 mm
P32K, // 94 PRC 32K 97 x 151 mm
P32KBIG, // 95 PRC 32K(Big) 97 x 151 mm
PENV_1, // 96 PRC Envelope #1 102 x 165 mm
PENV_2, // 97 PRC Envelope #2 102 x 176 mm
PENV_3, // 98 PRC Envelope #3 125 x 176 mm
PENV_4, // 99 PRC Envelope #4 110 x 208 mm
PENV_5, // 100 PRC Envelope #5 110 x 220 mm
PENV_6, // 101 PRC Envelope #6 120 x 230 mm
PENV_7, // 102 PRC Envelope #7 160 x 230 mm
PENV_8, // 103 PRC Envelope #8 120 x 309 mm
PENV_9, // 104 PRC Envelope #9 229 x 324 mm
PENV_10, // 105 PRC Envelope #10 324 x 458 mm
P16K_ROTATED, // 106 PRC 16K Rotated
P32K_ROTATED, // 107 PRC 32K Rotated
P32KBIG_ROTATED, // 108 PRC 32K(Big) Rotated
PENV_1_ROTATED, // 109 PRC Envelope #1 Rotated 165 x 102 mm
PENV_2_ROTATED, // 110 PRC Envelope #2 Rotated 176 x 102 mm
PENV_3_ROTATED, // 111 PRC Envelope #3 Rotated 176 x 125 mm
PENV_4_ROTATED, // 112 PRC Envelope #4 Rotated 208 x 110 mm
PENV_5_ROTATED, // 113 PRC Envelope #5 Rotated 220 x 110 mm
PENV_6_ROTATED, // 114 PRC Envelope #6 Rotated 230 x 120 mm
PENV_7_ROTATED, // 115 PRC Envelope #7 Rotated 230 x 160 mm
PENV_8_ROTATED, // 116 PRC Envelope #8 Rotated 309 x 120 mm
PENV_9_ROTATED, // 117 PRC Envelope #9 Rotated 324 x 229 mm
PENV_10_ROTATED, // 118 PRC Envelope #10 Rotated 458 x 324 mm
USER_DEFINED = 256
enum Paper {
kLetter = 1, // 1 Letter 8 1/2 x 11 in
kLetterSmall, // 2 Letter Small 8 1/2 x 11 in
kTabloid, // 3 Tabloid 11 x 17 in
kLedger, // 4 Ledger 17 x 11 in
kLegal, // 5 Legal 8 1/2 x 14 in
kStatement, // 6 Statement 5 1/2 x 8 1/2 in
kExecutive, // 7 Executive 7 1/4 x 10 1/2 in
kA3, // 8 A3 297 x 420 mm
kA4, // 9 A4 210 x 297 mm
kA4Small, // 10 A4 Small 210 x 297 mm
kA5, // 11 A5 148 x 210 mm
kB4, // 12 B4 (JIS) 250 x 354
kB5, // 13 B5 (JIS) 182 x 257 mm
kFolio, // 14 Folio 8 1/2 x 13 in
kQuarto, // 15 Quarto 215 x 275 mm
k10X14, // 16 10x14 in
k11X17, // 17 11x17 in
kNote, // 18 Note 8 1/2 x 11 in
kEnv9, // 19 Envelope #9 3 7/8 x 8 7/8
kEnv10, // 20 Envelope #10 4 1/8 x 9 1/2
kEnv11, // 21 Envelope #11 4 1/2 x 10 3/8
kEnv12, // 22 Envelope #12 4 \276 x 11
kEnv14, // 23 Envelope #14 5 x 11 1/2
kCSheet, // 24 C size sheet
kDSheet, // 25 D size sheet
kESheet, // 26 E size sheet
kEnvDL, // 27 Envelope DL 110 x 220mm
kEnvC5, // 28 Envelope C5 162 x 229 mm
kEnvC3, // 29 Envelope C3 324 x 458 mm
kEnvC4, // 30 Envelope C4 229 x 324 mm
kEnvC6, // 31 Envelope C6 114 x 162 mm
kEnvC65, // 32 Envelope C65 114 x 229 mm
kEnvB4, // 33 Envelope B4 250 x 353 mm
kEnvB5, // 34 Envelope B5 176 x 250 mm
kEnvB6, // 35 Envelope B6 176 x 125 mm
kEnvItaly, // 36 Envelope 110 x 230 mm
kEnvMonarch, // 37 Envelope Monarch 3.875 x 7.5 in
kEnvPersonal, // 38 6 3/4 Envelope 3 5/8 x 6 1/2 in
kFanFoldUS, // 39 US Std Fanfold 14 7/8 x 11 in
kFanFoldStdGerman, // 40 German Std Fanfold 8 1/2 x 12 in
kFanFoldLglGerman, // 41 German Legal Fanfold 8 1/2 x 13 in
kIsoB4, // 42 B4 (ISO) 250 x 353 mm
kJapanesePostcard, // 43 Japanese Postcard 100 x 148 mm
k9X11, // 44 9 x 11 in
k10X11, // 45 10 x 11 in
k15X11, // 46 15 x 11 in
kEnvInvite, // 47 Envelope Invite 220 x 220 mm
kReserved48, // 48 RESERVED--DO NOT USE
kReserved49, // 49 RESERVED--DO NOT USE
kLetterExtra, // 50 Letter Extra 9 \275 x 12 in
kLegalExtra, // 51 Legal Extra 9 \275 x 15 in
kTabloidExtra, // 52 Tabloid Extra 11.69 x 18 in
kA4Extra, // 53 A4 Extra 9.27 x 12.69 in
kLetterTransverse, // 54 Letter Transverse 8 \275 x 11 in
kA4Transverse, // 55 A4 Transverse 210 x 297 mm
kLetterExtraTransverse, // 56 Letter Extra Transverse 9\275 x 12 in
kAPlus, // 57 SuperA/SuperA/A4 227 x 356 mm
kBPlus, // 58 SuperB/SuperB/A3 305 x 487 mm
kLetterPlus, // 59 Letter Plus 8.5 x 12.69 in
kA4Plus, // 60 A4 Plus 210 x 330 mm
kA5Transverse, // 61 A5 Transverse 148 x 210 mm
kB5Transverse, // 62 B5 (JIS) Transverse 182 x 257 mm
kA3Extra, // 63 A3 Extra 322 x 445 mm
kA5Extra, // 64 A5 Extra 174 x 235 mm
kB5Extra, // 65 B5 (ISO) Extra 201 x 276 mm
kA2, // 66 A2 420 x 594 mm
kA3Transverse, // 67 A3 Transverse 297 x 420 mm
kA3ExtraTransverse, // 68 A3 Extra Transverse 322 x 445 mm
kDBLJapanesePostcard, // 69 Japanese Double Postcard 200 x 148 mm
kA6, // 70 A6 105 x 148 mm
kJEnvKaku2, // 71 Japanese Envelope Kaku #2
kJEnvKaku3, // 72 Japanese Envelope Kaku #3
kJEnvChou3, // 73 Japanese Envelope Chou #3
kJEnvChou4, // 74 Japanese Envelope Chou #4
kLetterRotated, // 75 Letter Rotated 11 x 8 1/2 11 in
kA3Rotated, // 76 A3 Rotated 420 x 297 mm
kA4Rotated, // 77 A4 Rotated 297 x 210 mm
kA5Rotated, // 78 A5 Rotated 210 x 148 mm
kB4JISRotated, // 79 B4 (JIS) Rotated 364 x 257 mm
kB5JISRotated, // 80 B5 (JIS) Rotated 257 x 182 mm
kJapanesePostcardRotated, // 81 Japanese Postcard Rotated 148 x 100 mm
kDBLJapanesePostcardRotated, // 82 Double Japanese Postcard Rotated 148 x 200 mm
kA6Rotated, // 83 A6 Rotated 148 x 105 mm
kJEnvKaku2Rotated, // 84 Japanese Envelope Kaku #2 Rotated
kJEnvKaku3Rotated, // 85 Japanese Envelope Kaku #3 Rotated
kJEnvChou3Rotated, // 86 Japanese Envelope Chou #3 Rotated
kJEnvChou4Rotated, // 87 Japanese Envelope Chou #4 Rotated
kB6JIS, // 88 B6 (JIS) 128 x 182 mm
kB6JISRotated, // 89 B6 (JIS) Rotated 182 x 128 mm
k12X11, // 90 12 x 11 in
kJEnvYou4, // 91 Japanese Envelope You #4
kJEnvYou4Rotated, // 92 Japanese Envelope You #4 Rotated
kP16K, // 93 PRC 16K 146 x 215 mm
kP32K, // 94 PRC 32K 97 x 151 mm
kP32KBig, // 95 PRC 32K(Big) 97 x 151 mm
kPEnv1, // 96 PRC Envelope #1 102 x 165 mm
kPEnv2, // 97 PRC Envelope #2 102 x 176 mm
kPEnv3, // 98 PRC Envelope #3 125 x 176 mm
kPEnv4, // 99 PRC Envelope #4 110 x 208 mm
kPEnv5, // 100 PRC Envelope #5 110 x 220 mm
kPEnv6, // 101 PRC Envelope #6 120 x 230 mm
kPEnv7, // 102 PRC Envelope #7 160 x 230 mm
kPEnv8, // 103 PRC Envelope #8 120 x 309 mm
kPEnv9, // 104 PRC Envelope #9 229 x 324 mm
kPEnv10, // 105 PRC Envelope #10 324 x 458 mm
kP16KRotated, // 106 PRC 16K Rotated
kP32KRotated, // 107 PRC 32K Rotated
kP32KBIGRotated, // 108 PRC 32K(Big) Rotated
kPEnv1Rotated, // 109 PRC Envelope #1 Rotated 165 x 102 mm
kPEnv2Rotated, // 110 PRC Envelope #2 Rotated 176 x 102 mm
kPEnv3Rotated, // 111 PRC Envelope #3 Rotated 176 x 125 mm
kPEnv4Rotated, // 112 PRC Envelope #4 Rotated 208 x 110 mm
kPEnv5Rotated, // 113 PRC Envelope #5 Rotated 220 x 110 mm
kPEnv6Rotated, // 114 PRC Envelope #6 Rotated 230 x 120 mm
kPEnv7Rotated, // 115 PRC Envelope #7 Rotated 230 x 160 mm
kPEnv8Rotated, // 116 PRC Envelope #8 Rotated 309 x 120 mm
kPEnv9Rotated, // 117 PRC Envelope #9 Rotated 324 x 229 mm
kPEnv10Rotated, // 118 PRC Envelope #10 Rotated 458 x 324 mm
kUserDefined = 256
};
enum PAPERSOURCE {
AUTO, // 7 o
MANUAL, // 4 o
UPPER, // 1 o
MIDDLE, // 3 o
LOWER, // 2 o
// ONLYONE, // 1 x
// ENVELOPE, // 5 o
// ENVMANUAL, // 6 x
// TRACTOR, // 8 x
// SMALLFMT, // 9 x
// LARGEFMT, // 10 x
// LARGECAPACITY, // 11 x
// CASSETTE, // 14 x
// FORMSOURCE, // 15 x
CASSETTE1 = 21,
CASSETTE2,
CASSETTE3,
CASSETTE4,
CASSETTE5,
CASSETTE6,
CASSETTE7,
CASSETTE8,
CASSETTE9,
USER = 256 // device specific bins start here
enum PaperSource {
kAuto, // 7 o
kManual, // 4 o
kUpper, // 1 o
kMiddle, // 3 o
kLower, // 2 o
// kOnlyOne, // 1 x
// kEnvelope, // 5 o
// kEnvManual, // 6 x
// kTractor, // 8 x
// kSmallFmt, // 9 x
// kLargeFmt, // 10 x
// kLargeCapacity, // 11 x
// kCassette, // 14 x
// kFormSource, // 15 x
kCassette1 = 21,
kCassette2,
kCassette3,
kCassette4,
kCassette5,
kCassette6,
kCassette7,
kCassette8,
kCassette9,
kUser = 256 // device specific bins start here
};
enum PRINTSTYLE {
SIMPLEX,
DUPLEX,
BOOKLET
enum PrintStyle {
kSimplex,
kDuplex,
kBooklet
};
enum BINDINGLOCATION {
LONG_EDGE_LEFT,
LONG_EDGE_RIGHT,
SHORT_EDGE_TOP,
SHORT_EDGE_BOTTOM,
LONG_EDGE = LONG_EDGE_LEFT,
SHORT_EDGE = SHORT_EDGE_TOP
enum BindingLocation {
kLongEdgeLeft,
kLongEdgeRight,
kShortEdgeTop,
kShortEdgeBottom,
kLongEdge = kLongEdgeLeft,
kShortEdge = kShortEdgeTop
};
enum PAGEORDER {
ACROSS_FROM_LEFT,
DOWN_FROM_LEFT,
ACROSS_FROM_RIGHT,
DOWN_FROM_RIGHT,
LEFT_TO_RIGHT = ACROSS_FROM_LEFT,
RIGHT_TO_LEFT = ACROSS_FROM_RIGHT
enum PageOrder {
kAcrossFromLeft,
kDownFromLeft,
kAcrossFromRight,
kDownFromRight,
kLeftToRight = kAcrossFromLeft,
kRightToLeft = kAcrossFromRight
};
/*
enum QUALITY {
DRAFT = -1,
LOW = -2,
MEDIUM = -3,
HIGH = -4
enum Quality {
kDraft = -1,
kLow = -2,
kMedium = -3,
kHigh = -4
};
*/
enum COLOR {
kMONOCHROME = 1,
kCOLOR
enum Color {
kMonochrome = 1,
kColor
};
private:
PAPER __paper;
int32 __xres;
int32 __yres;
ORIENTATION __orientation;
float __scaling;
BRect __paper_rect;
BRect __printable_rect;
int32 __nup;
int32 __first_page;
int32 __last_page;
color_space __surface_type;
float __gamma;
PAPERSOURCE __paper_source;
int32 __copies;
bool __collate;
bool __reverse;
PRINTSTYLE __print_style;
BINDINGLOCATION __binding_location;
PAGEORDER __page_order;
BMessage *__msg;
bool __color;
Paper fPaper;
int32 fXRes;
int32 fYRes;
Orientation fOrientation;
float fScaling;
BRect fPaperRect;
BRect fPrintableRect;
int32 fNup;
int32 fFirstPage;
int32 fLastPage;
float fGamma;
PaperSource fPaperSource;
int32 fCopies;
bool fCollate;
bool fReverse;
PrintStyle fPrintStyle;
BindingLocation fBindingLocation;
PageOrder fPageOrder;
BMessage *fMsg;
bool fColor;
public:
JobData(BMessage *msg, const PrinterCap *cap);
@@ -240,65 +239,65 @@ public:
void load(BMessage *msg, const PrinterCap *cap);
void save(BMessage *msg = NULL);
PAPER getPaper() const { return __paper; }
void setPaper(PAPER paper) { __paper = paper; }
Paper getPaper() const { return fPaper; }
void setPaper(Paper paper) { fPaper = paper; }
int32 getXres() const { return __xres; }
void setXres(int32 xres) { __xres = xres; }
int32 getXres() const { return fXRes; }
void setXres(int32 xres) { fXRes = xres; }
int32 getYres() const { return __yres; }
void setYres(int32 yres) { __yres = yres; };
int32 getYres() const { return fYRes; }
void setYres(int32 yres) { fYRes = yres; };
ORIENTATION getOrientation() const { return __orientation; }
void setOrientation(ORIENTATION orientation) { __orientation = orientation; }
Orientation getOrientation() const { return fOrientation; }
void setOrientation(Orientation orientation) { fOrientation = orientation; }
float getScaling() const { return __scaling; }
void setScaling(float scaling) { __scaling = scaling; }
float getScaling() const { return fScaling; }
void setScaling(float scaling) { fScaling = scaling; }
const BRect &getPaperRect() const { return __paper_rect; }
void setPaperRect(const BRect &paper_rect) { __paper_rect = paper_rect; }
const BRect &getPaperRect() const { return fPaperRect; }
void setPaperRect(const BRect &paper_rect) { fPaperRect = paper_rect; }
const BRect &getPrintableRect() const { return __printable_rect; }
void setPrintableRect(const BRect &printable_rect) { __printable_rect = printable_rect; }
const BRect &getPrintableRect() const { return fPrintableRect; }
void setPrintableRect(const BRect &printable_rect) { fPrintableRect = printable_rect; }
int32 getNup() const { return __nup; }
void setNup(int32 nup) { __nup = nup; }
int32 getNup() const { return fNup; }
void setNup(int32 nup) { fNup = nup; }
bool getReverse() const { return __reverse; }
void setReverse(bool reverse) { __reverse = reverse; }
bool getReverse() const { return fReverse; }
void setReverse(bool reverse) { fReverse = reverse; }
int32 getFirstPage() const { return __first_page; }
void setFirstPage(int32 first_page) { __first_page = first_page; }
int32 getFirstPage() const { return fFirstPage; }
void setFirstPage(int32 first_page) { fFirstPage = first_page; }
int32 getLastPage() const { return __last_page; }
void setLastPage(int32 last_page) { __last_page = last_page; }
int32 getLastPage() const { return fLastPage; }
void setLastPage(int32 last_page) { fLastPage = last_page; }
color_space getSurfaceType() const { return B_RGB32; /* __surface_type;*/ }
void setSurfaceType(color_space surface_type) { __surface_type = surface_type; }
// libprint supports only B_RGB32
color_space getSurfaceType() const { return B_RGB32; }
float getGamma() const { return __gamma; }
void setGamma(float gamma) { __gamma = gamma; }
float getGamma() const { return fGamma; }
void setGamma(float gamma) { fGamma = gamma; }
PAPERSOURCE getPaperSource() const { return __paper_source; }
void setPaperSource(PAPERSOURCE paper_source) { __paper_source = paper_source; };
PaperSource getPaperSource() const { return fPaperSource; }
void setPaperSource(PaperSource paper_source) { fPaperSource = paper_source; };
int32 getCopies() const { return __copies; }
void setCopies(int32 copies) { __copies = copies; }
int32 getCopies() const { return fCopies; }
void setCopies(int32 copies) { fCopies = copies; }
bool getCollate() const { return __collate; }
void setCollate(bool collate) { __collate = collate; }
bool getCollate() const { return fCollate; }
void setCollate(bool collate) { fCollate = collate; }
PRINTSTYLE getPrintStyle() const { return __print_style; }
void setPrintStyle(PRINTSTYLE print_style) { __print_style = print_style; }
PrintStyle getPrintStyle() const { return fPrintStyle; }
void setPrintStyle(PrintStyle print_style) { fPrintStyle = print_style; }
BINDINGLOCATION getBindingLocation() const { return __binding_location; }
void setBindingLocation(BINDINGLOCATION binding_location) { __binding_location = binding_location; }
BindingLocation getBindingLocation() const { return fBindingLocation; }
void setBindingLocation(BindingLocation binding_location) { fBindingLocation = binding_location; }
PAGEORDER getPageOrder() const { return __page_order; }
void setPageOrder(PAGEORDER page_order) { __page_order = page_order; }
PageOrder getPageOrder() const { return fPageOrder; }
void setPageOrder(PageOrder page_order) { fPageOrder = page_order; }
COLOR getColor() const { return __color ? kCOLOR : kMONOCHROME; }
void setColor(COLOR color) { __color = color == kCOLOR; }
Color getColor() const { return fColor ? kColor : kMonochrome; }
void setColor(Color color) { fColor = color == kColor; }
/*
protected:
JobData(const JobData &job_data);
+14 -14
View File
@@ -30,17 +30,17 @@ public:
BTextControl *to_page;
private:
JobData *__job_data;
PrinterData *__printer_data;
const PrinterCap *__printer_cap;
BTextControl *__gamma;
BRadioButton *__all;
BCheckBox *__collate;
BCheckBox *__reverse;
BPopUpMenu *__color_type;
BPopUpMenu *__paper_feed;
BCheckBox *__duplex;
BPopUpMenu *__nup;
JobData *fJobData;
PrinterData *fPrinterData;
const PrinterCap *fPrinterCap;
BTextControl *fGamma;
BRadioButton *fAll;
BCheckBox *fCollate;
BCheckBox *fReverse;
BPopUpMenu *fColorType;
BPopUpMenu *fPaperFeed;
BCheckBox *fDuplex;
BPopUpMenu *fNup;
};
class JobSetupDlg : public BWindow {
@@ -52,9 +52,9 @@ public:
int Go();
private:
int __result;
long __semaphore;
BMessageFilter *__filter;
int fResult;
long fSemaphore;
BMessageFilter *fFilter;
};
#endif /* __JOBSETUPDLG_H */
@@ -23,12 +23,12 @@ public:
bool UpdateJobData();
private:
JobData *__job_data;
PrinterData *__printer_data;
const PrinterCap *__printer_cap;
BRadioButton *__portrait;
BPopUpMenu *__paper;
BPopUpMenu *__resolution;
JobData *fJobData;
PrinterData *fPrinterData;
const PrinterCap *fPrinterCap;
BRadioButton *fPortrait;
BPopUpMenu *fPaper;
BPopUpMenu *fResolution;
};
class PageSetupDlg : public BWindow {
@@ -40,9 +40,9 @@ public:
int Go();
private:
int __result;
long __semaphore;
BMessageFilter *__filter;
int fResult;
long fSemaphore;
BMessageFilter *fFilter;
};
#endif /* __PAGESETUPDLG_H */
+1 -1
View File
@@ -22,7 +22,7 @@ protected:
PreviewWindow &operator = (const PreviewWindow &);
private:
long __semaphore;
long fSemaphore;
};
#endif /* __PREVIEW_H */
@@ -39,12 +39,12 @@ public:
bool enumObject(PictureData **);
private:
BFile *__file;
bool __reverse;
int __picture_count;
int __rest;
off_t __offset;
bool __hollow;
BFile *fFile;
bool fReverse;
int fPictureCount;
int fRest;
off_t fOffset;
bool fHollow;
};
typedef list<PageData *> PageDataList;
@@ -57,8 +57,8 @@ public:
bool enumObject(PageData **);
private:
PageDataList __pages;
PageDataList::iterator __it;
PageDataList fPages;
PageDataList::iterator fIt;
};
#endif /* __PRINTPROCESS_H */
+32 -30
View File
@@ -16,7 +16,9 @@ using namespace std;
#define std
#endif
#define UNKNOWN_PRINTER 0
enum {
kUnknownPrinter = 0
};
struct BaseCap {
string label;
@@ -25,16 +27,16 @@ struct BaseCap {
};
struct PaperCap : public BaseCap {
JobData::PAPER paper;
JobData::Paper paper;
BRect paper_rect;
BRect printable_rect;
PaperCap(const string &n, bool d, JobData::PAPER p, const BRect &r1, const BRect &r2)
PaperCap(const string &n, bool d, JobData::Paper p, const BRect &r1, const BRect &r2)
: BaseCap(n, d), paper(p), paper_rect(r1), printable_rect(r2) {}
};
struct PaperSourceCap : public BaseCap {
JobData::PAPERSOURCE paper_source;
PaperSourceCap(const string &n, bool d, JobData::PAPERSOURCE f)
JobData::PaperSource paper_source;
PaperSourceCap(const string &n, bool d, JobData::PaperSource f)
: BaseCap(n, d), paper_source(f) {}
};
@@ -46,26 +48,26 @@ struct ResolutionCap : public BaseCap {
};
struct OrientationCap : public BaseCap {
JobData::ORIENTATION orientation;
OrientationCap(const string &n, bool d, JobData::ORIENTATION o)
JobData::Orientation orientation;
OrientationCap(const string &n, bool d, JobData::Orientation o)
: BaseCap(n, d), orientation(o) {}
};
struct PrintStyleCap : public BaseCap {
JobData::PRINTSTYLE print_style;
PrintStyleCap(const string &n, bool d, JobData::PRINTSTYLE x)
JobData::PrintStyle print_style;
PrintStyleCap(const string &n, bool d, JobData::PrintStyle x)
: BaseCap(n, d), print_style(x) {}
};
struct BindingLocationCap : public BaseCap {
JobData::BINDINGLOCATION binding_location;
BindingLocationCap(const string &n, bool d, JobData::BINDINGLOCATION b)
JobData::BindingLocation binding_location;
BindingLocationCap(const string &n, bool d, JobData::BindingLocation b)
: BaseCap(n, d), binding_location(b) {}
};
struct ColorCap : public BaseCap {
JobData::COLOR color;
ColorCap(const string &n, bool d, JobData::COLOR c)
JobData::Color color;
ColorCap(const string &n, bool d, JobData::Color c)
: BaseCap(n, d), color(c) {}
};
@@ -79,20 +81,20 @@ public:
PrinterCap(const PrinterCap &printer_cap);
PrinterCap &operator = (const PrinterCap &printer_cap);
*/
enum CAPID {
PAPER,
PAPERSOURCE,
RESOLUTION,
ORIENTATION,
PRINTSTYLE,
BINDINGLOCATION,
COLOR
enum CapID {
kPaper,
kPaperSource,
kResolution,
kOrientation,
kPrintStyle,
kBindingLocation,
kColor
};
virtual int countCap(CAPID) const = 0;
virtual bool isSupport(CAPID) const = 0;
virtual const BaseCap **enumCap(CAPID) const = 0;
const BaseCap *getDefaultCap(CAPID) const;
virtual int countCap(CapID) const = 0;
virtual bool isSupport(CapID) const = 0;
virtual const BaseCap **enumCap(CapID) const = 0;
const BaseCap *getDefaultCap(CapID) const;
int getPrinterId() const;
protected:
@@ -102,23 +104,23 @@ protected:
void setPrinterId(int id);
private:
const PrinterData *__printer_data;
int __printer_id;
const PrinterData *fPrinterData;
int fPrinterID;
};
inline const PrinterData *PrinterCap::getPrinterData() const
{
return __printer_data;
return fPrinterData;
}
inline int PrinterCap::getPrinterId() const
{
return __printer_id;
return fPrinterID;
}
inline void PrinterCap::setPrinterId(int id)
{
__printer_id = id;
fPrinterID = id;
}
#endif /* __PRINTERCAP_H */
+12 -12
View File
@@ -33,7 +33,7 @@ public:
const string &getComments() const;
const string &getTransport() const;
// void setDriverName(const char *s) { __driver_name = driver_name; }
// void setDriverName(const char *s) { fDriverName = driver_name; }
void setPrinterName(const char *printer_name);
void setComments(const char *comments);
@@ -44,41 +44,41 @@ protected:
PrinterData &operator = (const PrinterData &printer_data);
private:
string __driver_name;
string __printer_name;
string __comments;
string __transport;
BNode *__node;
string fDriverName;
string fPrinterName;
string fComments;
string fTransport;
BNode *fNode;
};
inline const string &PrinterData::getDriverName() const
{
return __driver_name;
return fDriverName;
}
inline const string &PrinterData::getPrinterName() const
{
return __printer_name;
return fPrinterName;
}
inline const string &PrinterData::getComments() const
{
return __comments;
return fComments;
}
inline const string &PrinterData::getTransport() const
{
return __transport;
return fTransport;
}
inline void PrinterData::setPrinterName(const char *printer_name)
{
__printer_name = printer_name;
fPrinterName = printer_name;
}
inline void PrinterData::setComments(const char *comments)
{
__comments = comments;
fComments = comments;
}
#endif // __PRINTERDATA_H
@@ -12,17 +12,17 @@
class SpoolMetaData {
private:
string __description;
string __mime_type;
string __creation_time;
string fDescription;
string fMimeType;
string fCreationTime;
public:
SpoolMetaData(BFile* spool_file);
~SpoolMetaData();
const string& getDescription() const { return __description; }
const string& getMimeType() const { return __mime_type; }
const string& getCreationTime() const { return __creation_time; }
const string& getDescription() const { return fDescription; }
const string& getMimeType() const { return fMimeType; }
const string& getCreationTime() const { return fCreationTime; }
};
#endif /* __SpoolMetaData_H */
+9 -9
View File
@@ -25,10 +25,10 @@ extern "C" {
class TransportException {
private:
string __str;
string fWhat;
public:
TransportException(const string &what_arg) : __str(what_arg) {}
const char *what() const { return __str.c_str(); }
TransportException(const string &what_arg) : fWhat(what_arg) {}
const char *what() const { return fWhat.c_str(); }
};
class Transport {
@@ -45,12 +45,12 @@ protected:
Transport &operator = (const Transport &);
private:
image_id __image;
PFN_init_transport __init_transport;
PFN_exit_transport __exit_transport;
BDataIO *__data_stream;
bool __abort;
string __last_error_string;
image_id fImage;
PFN_init_transport fInitTransport;
PFN_exit_transport fExitTransport;
BDataIO *fDataStream;
bool fAbort;
string fLastErrorString;
};
#endif // __TRANSPORT_H
+3 -3
View File
@@ -26,9 +26,9 @@ protected:
UIDriver &operator = (const UIDriver &);
private:
BMessage *__msg;
PrinterData *__printer_data;
const PrinterCap *__printer_cap;
BMessage *fMsg;
PrinterData *fPrinterData;
const PrinterCap *fPrinterCap;
};
#endif /* __UIDRIVER_H */
+1 -1
View File
@@ -17,7 +17,7 @@ struct RECT {
int bottom;
};
bool get_valid_rect(BBitmap *bitmap, const rgb_color *palette, RECT *rc);
bool get_valid_rect(BBitmap *bitmap, RECT *rc);
int color_space2pixel_depth(color_space cs);