/components/printers/qt/qtprinters_h.inc

http://github.com/graemeg/lazarus · Pascal · 67 lines · 55 code · 10 blank · 2 comment · 0 complexity · ecff9449bfcf07217dc1b47113f26f8c MD5 · raw file

  1. {%MainUnit ../osprinters.pas}
  2. uses
  3. Classes, SysUtils, Printers, qt4, qtobjects,
  4. LCLType, LCLProc;
  5. type
  6. { TQtPrinters }
  7. TQtPrinters = class(TPrinter)
  8. private
  9. FPagesEnum: TStrings;
  10. FPrinterHandle: TQtPrinter;
  11. procedure CreatePrintSettings;
  12. procedure BeginPage;
  13. procedure EndPage;
  14. procedure EnumQPrinters(Lst: TStrings);
  15. procedure EnumQPapers(Lst: TStrings);
  16. function GetColorMode: QPrinterColorMode;
  17. function GetFullPage: Boolean;
  18. function GetPageOrder: QPrinterPageOrder;
  19. procedure SetColorMode(const AValue: QPrinterColorMode);
  20. procedure SetFullPage(const AValue: Boolean);
  21. procedure SetPageOrder(const AValue: QPrinterPageOrder);
  22. protected
  23. procedure DoBeginDoc; override;
  24. procedure DoNewPage; override;
  25. procedure DoEndDoc(aAborded : Boolean); override;
  26. procedure DoAbort; override;
  27. procedure DoEnumPrinters(Lst : TStrings); override;
  28. procedure DoResetPrintersList; override;
  29. procedure DoEnumPapers(Lst : TStrings); override;
  30. function DoGetPaperName: string; override;
  31. function DoGetDefaultPaperName: string; override;
  32. procedure DoSetPaperName(aName : string); override;
  33. function DoGetPaperRect(aName : string; Var aPaperRc : TPaperRect) : Integer; override;
  34. function DoSetPrinter(aName : string): Integer; override;
  35. function DoGetCopies : Integer; override;
  36. procedure DoSetCopies(aValue : Integer); override;
  37. function DoGetOrientation: TPrinterOrientation; override;
  38. procedure DoSetOrientation(aValue : TPrinterOrientation); override;
  39. function GetXDPI: Integer; override;
  40. function GetYDPI: Integer; override;
  41. function GetPrinterType: TPrinterType;override;
  42. function DoGetPrinterState: TPrinterState;override;
  43. function GetCanPrint: Boolean;override;
  44. function GetCanRenderCopies : Boolean;override;
  45. procedure RawModeChanging; override;
  46. procedure DoDestroy; override;
  47. public
  48. procedure Validate;
  49. function GetPaperSize(Const Str: String): QPrinterPageSize;
  50. public
  51. constructor Create; override;
  52. function Write(const {%H-}Buffer; {%H-}Count:Integer; var {%H-}Written: Integer): Boolean; override;
  53. property ColorMode: QPrinterColorMode read GetColorMode write SetColorMode;
  54. property FullPage: Boolean read GetFullPage write SetFullPage;
  55. property Handle: TQtPrinter read FPrinterHandle;
  56. property PageOrder: QPrinterPageOrder read GetPageOrder write SetPageOrder;
  57. end;