home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Internet 2000 May / MICD_2000_05.iso / CBuilder5 / INSTALL / DATA1.CAB / Program_Built_Files / Include / Vcl / quickrpt.hpp < prev    next >
C/C++ Source or Header  |  2000-02-01  |  55KB  |  1,523 lines

  1. // Borland C++ Builder
  2. // Copyright (c) 1995, 1999 by Borland International
  3. // All rights reserved
  4.  
  5. // (DO NOT EDIT: machine generated header) 'QuickRpt.pas' rev: 5.00
  6.  
  7. #ifndef QuickRptHPP
  8. #define QuickRptHPP
  9.  
  10. #pragma delphiheader begin
  11. #pragma option push -w-
  12. #pragma option push -Vx
  13. #include <QRExpbld.hpp>    // Pascal unit
  14. #include <QRExpr.hpp>    // Pascal unit
  15. #include <QRPrgres.hpp>    // Pascal unit
  16. #include <qr3const.hpp>    // Pascal unit
  17. #include <QRPrntr.hpp>    // Pascal unit
  18. #include <DBTables.hpp>    // Pascal unit
  19. #include <Db.hpp>    // Pascal unit
  20. #include <Printers.hpp>    // Pascal unit
  21. #include <Dialogs.hpp>    // Pascal unit
  22. #include <ExtCtrls.hpp>    // Pascal unit
  23. #include <Forms.hpp>    // Pascal unit
  24. #include <Buttons.hpp>    // Pascal unit
  25. #include <Graphics.hpp>    // Pascal unit
  26. #include <SysUtils.hpp>    // Pascal unit
  27. #include <StdCtrls.hpp>    // Pascal unit
  28. #include <Controls.hpp>    // Pascal unit
  29. #include <Classes.hpp>    // Pascal unit
  30. #include <Windows.hpp>    // Pascal unit
  31. #include <SysInit.hpp>    // Pascal unit
  32. #include <System.hpp>    // Pascal unit
  33.  
  34. //-- user supplied -----------------------------------------------------------
  35.  
  36. namespace Quickrpt
  37. {
  38. //-- type declarations -------------------------------------------------------
  39. typedef TMetaClass*TQRNewComponentClass;
  40.  
  41. typedef void __fastcall (__closure *TQROnNeedDataEvent)(System::TObject* Sender, bool &MoreData);
  42.  
  43. #pragma option push -b-
  44. enum TQRNotifyOperation { qrMasterDataAdvance, qrBandPrinted, qrBandSizeChange };
  45. #pragma option pop
  46.  
  47. typedef void __fastcall (__closure *TQRNotifyOperationEvent)(System::TObject* Sender, TQRNotifyOperation 
  48.     Operation);
  49.  
  50. class DELPHICLASS TQRCustomController;
  51. class DELPHICLASS TCustomQuickRep;
  52. class DELPHICLASS TQRBasePanel;
  53. class DELPHICLASS TQRFrame;
  54. class PASCALIMPLEMENTATION TQRFrame : public Classes::TPersistent 
  55. {
  56.     typedef Classes::TPersistent inherited;
  57.     
  58. private:
  59.     Graphics::TColor FColor;
  60.     bool FBottom;
  61.     bool FLeft;
  62.     Controls::TControl* FParent;
  63.     Graphics::TPenStyle FPenStyle;
  64.     bool FRight;
  65.     bool FTop;
  66.     int FWidth;
  67.     void __fastcall SetColor(Graphics::TColor Value);
  68.     void __fastcall SetParent(Controls::TControl* Value);
  69.     void __fastcall SetStyle(Graphics::TPenStyle Value);
  70.     void __fastcall SetValue(int index, bool Value);
  71.     void __fastcall SetWidth(int Value);
  72.     
  73. protected:
  74.     void __fastcall PaintIt(Graphics::TCanvas* ACanvas, const Windows::TRect &ARect, Extended XFact, Extended 
  75.         YFact);
  76.     void __fastcall SetPen(Graphics::TPen* aPen);
  77.     
  78. public:
  79.     __fastcall TQRFrame(void);
  80.     bool __fastcall AnyFrame(void);
  81.     __property Controls::TControl* Parent = {read=FParent, write=SetParent};
  82.     
  83. __published:
  84.     __property Graphics::TColor Color = {read=FColor, write=SetColor, nodefault};
  85.     __property bool DrawTop = {read=FTop, write=SetValue, index=0, nodefault};
  86.     __property bool DrawBottom = {read=FBottom, write=SetValue, index=1, nodefault};
  87.     __property bool DrawLeft = {read=FLeft, write=SetValue, index=2, nodefault};
  88.     __property bool DrawRight = {read=FRight, write=SetValue, index=3, nodefault};
  89.     __property Graphics::TPenStyle Style = {read=FPenStyle, write=SetStyle, default=0};
  90.     __property int Width = {read=FWidth, write=SetWidth, default=1};
  91. public:
  92.     #pragma option push -w-inl
  93.     /* TPersistent.Destroy */ inline __fastcall virtual ~TQRFrame(void) { }
  94.     #pragma option pop
  95.     
  96. };
  97.  
  98.  
  99. #pragma option push -b-
  100. enum TQRUnit { MM, Inches, Pixels, Characters, Native };
  101. #pragma option pop
  102.  
  103. class PASCALIMPLEMENTATION TQRBasePanel : public Extctrls::TCustomPanel 
  104. {
  105.     typedef Extctrls::TCustomPanel inherited;
  106.     
  107. private:
  108.     int FFontSize;
  109.     int FZoom;
  110.     TQRFrame* FFrame;
  111.     TQRFrame* __fastcall GetFrame(void);
  112.     void __fastcall SetFrame(TQRFrame* Value);
  113.     
  114. protected:
  115.     virtual void __fastcall SetZoom(int Value);
  116.     virtual void __fastcall Paint(void);
  117.     virtual void __fastcall PaintRuler(TQRUnit Units);
  118.     void __fastcall PrepareComponents(void);
  119.     void __fastcall UnprepareComponents(void);
  120.     virtual void __fastcall CreateParams(Controls::TCreateParams &Params);
  121.     
  122. public:
  123.     __fastcall virtual TQRBasePanel(Classes::TComponent* AOwner);
  124.     __fastcall virtual ~TQRBasePanel(void);
  125.     __property int Zoom = {read=FZoom, write=SetZoom, nodefault};
  126.     __property int FontSize = {read=FFontSize, write=FFontSize, nodefault};
  127.     
  128. __published:
  129.     __property TQRFrame* Frame = {read=GetFrame, write=SetFrame};
  130. public:
  131.     #pragma option push -w-inl
  132.     /* TWinControl.CreateParented */ inline __fastcall TQRBasePanel(HWND ParentWindow) : Extctrls::TCustomPanel(
  133.         ParentWindow) { }
  134.     #pragma option pop
  135.     
  136. };
  137.  
  138.  
  139. class DELPHICLASS TQRCreateReportThread;
  140. class PASCALIMPLEMENTATION TQRCreateReportThread : public Classes::TThread 
  141. {
  142.     typedef Classes::TThread inherited;
  143.     
  144. private:
  145.     Qrprntr::TQRPrinter* FQRPrinter;
  146.     TCustomQuickRep* FQuickRep;
  147.     
  148. public:
  149.     __fastcall TQRCreateReportThread(TCustomQuickRep* AReport);
  150.     virtual void __fastcall Execute(void);
  151.     __property TCustomQuickRep* QuickRep = {read=FQuickRep, write=FQuickRep};
  152. public:
  153.     #pragma option push -w-inl
  154.     /* TThread.Destroy */ inline __fastcall virtual ~TQRCreateReportThread(void) { }
  155.     #pragma option pop
  156.     
  157. };
  158.  
  159.  
  160. class DELPHICLASS TQuickRepBands;
  161. class DELPHICLASS TQRCustomBand;
  162. class PASCALIMPLEMENTATION TQuickRepBands : public Classes::TPersistent 
  163. {
  164.     typedef Classes::TPersistent inherited;
  165.     
  166. private:
  167.     TCustomQuickRep* FOwner;
  168.     TQRCustomBand* __fastcall BandInList(Qrprntr::TQRBandType BandType);
  169.     void __fastcall SetBand(Qrprntr::TQRBandType BandType, bool Value);
  170.     TQRCustomBand* __fastcall GetBand(int Index);
  171.     bool __fastcall GetHasBand(int Index);
  172.     void __fastcall SetHasBand(int Index, bool Value);
  173.     
  174. public:
  175.     __fastcall TQuickRepBands(TCustomQuickRep* AOwner);
  176.     __property TQRCustomBand* TitleBand = {read=GetBand, index=1};
  177.     __property TQRCustomBand* PageHeaderBand = {read=GetBand, index=2};
  178.     __property TQRCustomBand* ColumnHeaderBand = {read=GetBand, index=3};
  179.     __property TQRCustomBand* DetailBand = {read=GetBand, index=4};
  180.     __property TQRCustomBand* ColumnFooterBand = {read=GetBand, index=5};
  181.     __property TQRCustomBand* PageFooterBand = {read=GetBand, index=6};
  182.     __property TQRCustomBand* SummaryBand = {read=GetBand, index=7};
  183.     
  184. __published:
  185.     __property bool HasTitle = {read=GetHasBand, write=SetHasBand, stored=false, index=1, nodefault};
  186.     __property bool HasPageHeader = {read=GetHasBand, write=SetHasBand, stored=false, index=2, nodefault
  187.         };
  188.     __property bool HasColumnHeader = {read=GetHasBand, write=SetHasBand, stored=false, index=3, nodefault
  189.         };
  190.     __property bool HasDetail = {read=GetHasBand, write=SetHasBand, stored=false, index=4, nodefault};
  191.     __property bool HasPageFooter = {read=GetHasBand, write=SetHasBand, stored=false, index=6, nodefault
  192.         };
  193.     __property bool HasSummary = {read=GetHasBand, write=SetHasBand, stored=false, index=7, nodefault};
  194.         
  195. public:
  196.     #pragma option push -w-inl
  197.     /* TPersistent.Destroy */ inline __fastcall virtual ~TQuickRepBands(void) { }
  198.     #pragma option pop
  199.     
  200. };
  201.  
  202.  
  203. typedef void __fastcall (__closure *TQRReportBeforePrintEvent)(TCustomQuickRep* Sender, bool &PrintReport
  204.     );
  205.  
  206. typedef void __fastcall (__closure *TQRNotifyEvent)(TCustomQuickRep* Sender);
  207.  
  208. #pragma option push -b-
  209. enum TQuickReportOption { FirstPageHeader, LastPageFooter, Compression };
  210. #pragma option pop
  211.  
  212. typedef Set<TQuickReportOption, FirstPageHeader, Compression>  TQuickReportOptions;
  213.  
  214. class DELPHICLASS TQRPage;
  215. class DELPHICLASS TQRUnitBase;
  216. class PASCALIMPLEMENTATION TQRUnitBase : public Classes::TPersistent 
  217. {
  218.     typedef Classes::TPersistent inherited;
  219.     
  220. private:
  221.     int FResolution;
  222.     TQRUnit FUnits;
  223.     TQRUnit SavedUnits;
  224.     TCustomQuickRep* FParentReport;
  225.     bool FParentUpdating;
  226.     int FZoom;
  227.     virtual Extended __fastcall LoadUnit(Extended Value, TQRUnit aUnit, bool Horizontal);
  228.     virtual Extended __fastcall SaveUnit(Extended Value, TQRUnit aUnit, bool Horizontal);
  229.     
  230. protected:
  231.     virtual TQRUnit __fastcall GetUnits(void);
  232.     virtual void __fastcall DefineProperties(Classes::TFiler* Filer);
  233.     virtual void __fastcall Loaded(void);
  234.     virtual void __fastcall ReadValues(Classes::TReader* Reader);
  235.     virtual void __fastcall SetParentSizes(void);
  236.     virtual void __fastcall SetUnits(TQRUnit Value);
  237.     virtual void __fastcall WriteValues(Classes::TWriter* Writer);
  238.     void __fastcall SetPixels(void);
  239.     void __fastcall RestoreUnit(void);
  240.     
  241. public:
  242.     __fastcall TQRUnitBase(void);
  243.     __property TCustomQuickRep* ParentReport = {read=FParentReport, write=FParentReport};
  244.     __property bool ParentUpdating = {read=FParentUpdating, write=FParentUpdating, nodefault};
  245.     __property int Resolution = {read=FResolution, nodefault};
  246.     __property TQRUnit Units = {read=GetUnits, write=SetUnits, nodefault};
  247.     __property int Zoom = {read=FZoom, write=FZoom, nodefault};
  248. public:
  249.     #pragma option push -w-inl
  250.     /* TPersistent.Destroy */ inline __fastcall virtual ~TQRUnitBase(void) { }
  251.     #pragma option pop
  252.     
  253. };
  254.  
  255.  
  256. #pragma option push -b-
  257. enum TQRPrintOrder { ColByCol, RowByRow };
  258. #pragma option pop
  259.  
  260. class PASCALIMPLEMENTATION TQRPage : public TQRUnitBase 
  261. {
  262.     typedef TQRUnitBase inherited;
  263.     
  264. private:
  265.     Extended FBottomMargin;
  266.     Extended FColumnSpace;
  267.     int FColumns;
  268.     Extended FLeftMargin;
  269.     Extended FLength;
  270.     Printers::TPrinterOrientation FOrientation;
  271.     Qrprntr::TQRPaperSize FPaperSize;
  272.     TQRPrintOrder FPrintOrder;
  273.     Extended FRightMargin;
  274.     bool FRuler;
  275.     Extended FTopMargin;
  276.     Extended FWidth;
  277.     TCustomQuickRep* Parent;
  278.     Qrprntr::TQRPaperSize __fastcall GetPaperSize(void);
  279.     bool __fastcall GetRuler(void);
  280.     Extended __fastcall GetValue(int Index);
  281.     void __fastcall SetColumns(int Value);
  282.     void __fastcall SetOrientation(Printers::TPrinterOrientation Value);
  283.     void __fastcall SetPaperSize(Qrprntr::TQRPaperSize Value);
  284.     void __fastcall SetPrintOrder(TQRPrintOrder Value);
  285.     void __fastcall SetRuler(bool Value);
  286.     void __fastcall SetValue(int Index, Extended Value);
  287.     __property TQRPrintOrder PrintOrder = {read=FPrintOrder, write=SetPrintOrder, nodefault};
  288.     
  289. protected:
  290.     virtual void __fastcall ReadValues(Classes::TReader* Reader);
  291.     virtual void __fastcall SetParentSizes(void);
  292.     virtual void __fastcall SetUnits(TQRUnit Value);
  293.     virtual void __fastcall WriteValues(Classes::TWriter* Writer);
  294.     void __fastcall FixZoom(void);
  295.     
  296. public:
  297.     __fastcall TQRPage(TCustomQuickRep* AParent);
  298.     
  299. __published:
  300.     __property Extended BottomMargin = {read=GetValue, write=SetValue, stored=false, index=0};
  301.     __property Extended ColumnSpace = {read=GetValue, write=SetValue, stored=false, index=6};
  302.     __property int Columns = {read=FColumns, write=SetColumns, nodefault};
  303.     __property Extended LeftMargin = {read=GetValue, write=SetValue, stored=false, index=4};
  304.     __property Extended Length = {read=GetValue, write=SetValue, stored=false, index=1};
  305.     __property Printers::TPrinterOrientation Orientation = {read=FOrientation, write=SetOrientation, nodefault
  306.         };
  307.     __property Qrprntr::TQRPaperSize PaperSize = {read=GetPaperSize, write=SetPaperSize, nodefault};
  308.     __property Extended RightMargin = {read=GetValue, write=SetValue, stored=false, index=5};
  309.     __property bool Ruler = {read=GetRuler, write=SetRuler, default=1};
  310.     __property Extended TopMargin = {read=GetValue, write=SetValue, stored=false, index=2};
  311.     __property Extended Width = {read=GetValue, write=SetValue, stored=false, index=3};
  312. public:
  313.     #pragma option push -w-inl
  314.     /* TPersistent.Destroy */ inline __fastcall virtual ~TQRPage(void) { }
  315.     #pragma option pop
  316.     
  317. };
  318.  
  319.  
  320. class DELPHICLASS TQuickRepPrinterSettings;
  321. class PASCALIMPLEMENTATION TQuickRepPrinterSettings : public Qrprntr::TQRPrinterSettings 
  322. {
  323.     typedef Qrprntr::TQRPrinterSettings inherited;
  324.     
  325. __published:
  326.     __property Copies ;
  327.     __property Duplex ;
  328.     __property FirstPage ;
  329.     __property LastPage ;
  330.     __property OutputBin ;
  331. public:
  332.     #pragma option push -w-inl
  333.     /* TQRPrinterSettings.Create */ inline __fastcall TQuickRepPrinterSettings(void) : Qrprntr::TQRPrinterSettings(
  334.         ) { }
  335.     #pragma option pop
  336.     
  337. public:
  338.     #pragma option push -w-inl
  339.     /* TPersistent.Destroy */ inline __fastcall virtual ~TQuickRepPrinterSettings(void) { }
  340.     #pragma option pop
  341.     
  342. };
  343.  
  344.  
  345. #pragma option push -b-
  346. enum TQRState { qrAvailable, qrPrepare, qrPreview, qrPrint, qrEdit };
  347. #pragma option pop
  348.  
  349. class DELPHICLASS TQRBand;
  350. class DELPHICLASS TQRPrintable;
  351. class PASCALIMPLEMENTATION TCustomQuickRep : public TQRBasePanel 
  352. {
  353.     typedef TQRBasePanel inherited;
  354.     
  355. /*private:*/protected:
  356.     TQRCreateReportThread* BGThread;
  357.     Classes::TList* BandRegList;
  358.     Classes::TList* FAllDataSets;
  359.     Qrprntr::TQRAfterPrintEvent FAfterPrintEvent;
  360.     Qrprntr::TQRAfterPreviewEvent FAfterPreviewEvent;
  361.     bool FAvailable;
  362.     Classes::TList* FBandList;
  363.     TQuickRepBands* FBands;
  364.     TQRReportBeforePrintEvent FBeforePrintEvent;
  365.     bool FCancelled;
  366.     TQRCustomController* FController;
  367.     int FColumnTopPosition;
  368.     int FCurrentColumn;
  369.     int FCurrentX;
  370.     int FCurrentY;
  371.     Classes::TStrings* FDescription;
  372.     Qrexpr::TQREvEnvironment* FEnvironment;
  373.     Qrprntr::TQRExportFilter* FExportFilter;
  374.     bool FExporting;
  375.     bool FFinalPass;
  376.     bool FHideBands;
  377.     bool FLastPage;
  378.     bool FModified;
  379.     TQRNotifyEvent FOnEndPageEvent;
  380.     TQROnNeedDataEvent FOnNeedDataEvent;
  381.     Classes::TNotifyEvent FOnPreviewEvent;
  382.     TQRNotifyEvent FOnStartPageEvent;
  383.     TQuickReportOptions FOptions;
  384.     TQRPage* FPage;
  385.     Graphics::TMetafile* FPreviewPage;
  386.     int FPageCount;
  387.     Extended FPageFooterSize;
  388.     TQuickRepPrinterSettings* FPrinterSettings;
  389.     AnsiString FReportTitle;
  390.     int FRotateBands;
  391.     bool FShowProgress;
  392.     bool FSnapToGrid;
  393.     TQRState FState;
  394.     Qrprntr::TQRPrinter* FQRPrinter;
  395.     bool NewColumnForced;
  396.     bool NewPageForced;
  397.     unsigned ReferenceDC;
  398.     bool PreparingDesignTime;
  399.     Qrexpr::TQREvElement* EvPageNumber;
  400.     Qrexpr::TQREvElement* EvColumnNumber;
  401.     Qrexpr::TQREvElement* EvReportTitle;
  402.     bool NoForceNewPage;
  403.     TQRUnit __fastcall GetUnits(void);
  404.     bool __fastcall GetPrintIfEmpty(void);
  405.     void __fastcall PrintBand(TQRCustomBand* ABand);
  406.     void __fastcall PrintPageBackground(void);
  407.     void __fastcall SetExportFilter(Qrprntr::TQRExportFilter* Value);
  408.     virtual void __fastcall SetUnits(TQRUnit Value);
  409.     void __fastcall SetDescription(Classes::TStrings* Value);
  410.     void __fastcall SetPrinterValues(void);
  411.     void __fastcall SetController(TQRCustomController* Value);
  412.     
  413. protected:
  414.     virtual void __fastcall Execute(void);
  415.     MESSAGE void __fastcall CMPageAvailable(Qrprntr::TCM_QRPageAvailable &Message);
  416.     MESSAGE void __fastcall CMPreviewClose(Qrprntr::TCM_QRPreviewClose &Message);
  417.     MESSAGE void __fastcall CMPrint(Messages::TMessage &Message);
  418.     int __fastcall AvailableSpace(void);
  419.     bool __fastcall PrepareQRPrinter(void);
  420.     virtual void __fastcall CreateReport(bool CompositeReport);
  421.     void __fastcall ForceNewColumn(void);
  422.     void __fastcall ForceNewPage(void);
  423.     DYNAMIC void __fastcall GetChildren(Classes::TGetChildProc Proc, Classes::TComponent* root);
  424.     virtual void __fastcall Loaded(void);
  425.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  426.         );
  427.     virtual void __fastcall PaintColumns(void);
  428.     virtual void __fastcall PaintMargins(void);
  429.     virtual void __fastcall PaintFrame(void);
  430.     virtual void __fastcall PaintRuler(TQRUnit Units);
  431.     void __fastcall PreviewFinished(System::TObject* Sender);
  432.     void __fastcall PreviewIt(bool Modal);
  433.     void __fastcall PrintFinished(System::TObject* Sender);
  434.     void __fastcall RebuildBandList(void);
  435.     void __fastcall RegisterBand(TQRCustomBand* aBand);
  436.     virtual void __fastcall SetControllerBands(void);
  437.     virtual void __fastcall SetPrintIfEmpty(bool Value);
  438.     void __fastcall SetHideBands(bool Value);
  439.     void __fastcall SetRotateBands(int Value);
  440.     virtual void __fastcall SetZoom(int Value);
  441.     __property TQRCustomController* Controller = {read=FController, write=SetController};
  442.     
  443. public:
  444.     __fastcall virtual TCustomQuickRep(Classes::TComponent* AOwner);
  445.     __fastcall virtual TCustomQuickRep(Classes::TComponent* AOwner, int Dummy);
  446.     __fastcall virtual ~TCustomQuickRep(void);
  447.     TQRBand* __fastcall CreateBand(Qrprntr::TQRBandType BandType);
  448.     int __fastcall TextHeight(Graphics::TFont* aFont, AnsiString aText);
  449.     int __fastcall TextWidth(Graphics::TFont* aFont, AnsiString aText);
  450.     void __fastcall AddBand(TQRCustomBand* aBand);
  451.     virtual void __fastcall AddNotifyClient(TQRPrintable* Value);
  452.     void __fastcall Cancel(void);
  453.     void __fastcall ExportToFilter(Qrprntr::TQRExportFilter* AFilter);
  454.     void __fastcall EndPage(void);
  455.     void __fastcall Modify(void);
  456.     void __fastcall NewColumn(void);
  457.     void __fastcall NewPage(void);
  458.     virtual void __fastcall Paint(void);
  459.     void __fastcall Print(void);
  460.     void __fastcall PrintBackground(void);
  461.     void __fastcall PrinterSetup(void);
  462.     void __fastcall Prepare(void);
  463.     void __fastcall Preview(void);
  464.     void __fastcall PreviewModeless(void);
  465.     void __fastcall PreviewModal(void);
  466.     void __fastcall ResetPageFooterSize(void);
  467.     void __fastcall RemoveBand(TQRCustomBand* aBand);
  468.     void __fastcall SetBandValues(void);
  469.     virtual void __fastcall SetBounds(int ALeft, int ATop, int AWidth, int AHeight);
  470.     __property bool Available = {read=FAvailable, nodefault};
  471.     __property Classes::TList* AllDataSets = {read=FAllDataSets, write=FAllDataSets};
  472.     __property Classes::TList* BandList = {read=FBandList};
  473.     __property bool Cancelled = {read=FCancelled, nodefault};
  474.     __property int ColumnTopPosition = {read=FColumnTopPosition, write=FColumnTopPosition, nodefault};
  475.     __property int CurrentColumn = {read=FCurrentColumn, nodefault};
  476.     __property int CurrentX = {read=FCurrentX, write=FCurrentX, nodefault};
  477.     __property int CurrentY = {read=FCurrentY, write=FCurrentY, nodefault};
  478.     __property Qrprntr::TQRExportFilter* ExportFilter = {read=FExportFilter, write=SetExportFilter};
  479.     __property bool Exporting = {read=FExporting, nodefault};
  480.     __property bool FinalPass = {read=FFinalPass, nodefault};
  481.     __property bool HideBands = {read=FHideBands, write=SetHideBands, nodefault};
  482.     __property int PageNumber = {read=FPageCount, nodefault};
  483.     __property Qrprntr::TQRPrinter* Printer = {read=FQRPrinter};
  484.     __property Qrprntr::TQRPrinter* QRPrinter = {read=FQRPrinter, write=FQRPrinter};
  485.     __property int RotateBands = {read=FRotateBands, write=SetRotateBands, nodefault};
  486.     __property TQRState State = {read=FState, write=FState, nodefault};
  487.     __property Qrprntr::TQRAfterPrintEvent AfterPrint = {read=FAfterPrintEvent, write=FAfterPrintEvent}
  488.         ;
  489.     __property Qrprntr::TQRAfterPreviewEvent AfterPreview = {read=FAfterPreviewEvent, write=FAfterPreviewEvent
  490.         };
  491.     __property TQuickRepBands* Bands = {read=FBands, write=FBands};
  492.     __property TQRReportBeforePrintEvent BeforePrint = {read=FBeforePrintEvent, write=FBeforePrintEvent
  493.         };
  494.     __property Classes::TStrings* Description = {read=FDescription, write=SetDescription};
  495.     __property Font ;
  496.     __property Qrexpr::TQREvEnvironment* Functions = {read=FEnvironment, write=FEnvironment, stored=true
  497.         };
  498.     __property TQRNotifyEvent OnEndPage = {read=FOnEndPageEvent, write=FOnEndPageEvent};
  499.     __property TQROnNeedDataEvent OnNeedData = {read=FOnNeedDataEvent, write=FOnNeedDataEvent};
  500.     __property Classes::TNotifyEvent OnPreview = {read=FOnPreviewEvent, write=FOnPreviewEvent};
  501.     __property TQRNotifyEvent OnStartPage = {read=FOnStartPageEvent, write=FOnStartPageEvent};
  502.     __property TQuickReportOptions Options = {read=FOptions, write=FOptions, nodefault};
  503.     __property TQRPage* Page = {read=FPage, write=FPage};
  504.     __property bool PrintIfEmpty = {read=GetPrintIfEmpty, write=SetPrintIfEmpty, nodefault};
  505.     __property TQuickRepPrinterSettings* PrinterSettings = {read=FPrinterSettings, write=FPrinterSettings
  506.         };
  507.     __property AnsiString ReportTitle = {read=FReportTitle, write=FReportTitle};
  508.     __property bool ShowProgress = {read=FShowProgress, write=FShowProgress, default=1};
  509.     __property bool SnapToGrid = {read=FSnapToGrid, write=FSnapToGrid, nodefault};
  510.     __property TQRUnit Units = {read=GetUnits, write=SetUnits, stored=true, nodefault};
  511.     __property Zoom ;
  512. public:
  513.     #pragma option push -w-inl
  514.     /* TWinControl.CreateParented */ inline __fastcall TCustomQuickRep(HWND ParentWindow) : TQRBasePanel(
  515.         ParentWindow) { }
  516.     #pragma option pop
  517.     
  518. };
  519.  
  520.  
  521. class PASCALIMPLEMENTATION TQRCustomController : public Classes::TComponent 
  522. {
  523.     typedef Classes::TComponent inherited;
  524.     
  525. private:
  526.     Classes::TComponent* OrgOwner;
  527.     Classes::TComponent* FMaster;
  528.     Classes::TList* PrintAfterList;
  529.     Classes::TList* PrintBeforeList;
  530.     Classes::TList* GroupList;
  531.     bool FPrintIfEmpty;
  532.     Classes::TComponent* FSelfCheck;
  533.     TCustomQuickRep* FParentReport;
  534.     bool FPrintBefore;
  535.     Classes::TList* NotifyList;
  536.     Qrexpr::TQREvElement* EvConstant;
  537.     bool __fastcall CheckGroups(void);
  538.     void __fastcall CheckLastGroupFooters(void);
  539.     void __fastcall NewPageCheckGroups(void);
  540.     void __fastcall SetMaster(Classes::TComponent* Value);
  541.     
  542. protected:
  543.     virtual Qrexpr::TQREvResult __fastcall LocalVarValue();
  544.     void __fastcall AddAfter(TQRCustomController* aController);
  545.     void __fastcall AddBefore(TQRCustomController* aController);
  546.     virtual void __fastcall BuildTree(void);
  547.     virtual void __fastcall Execute(void);
  548.     void __fastcall NotifyClients(TQRNotifyOperation Operation);
  549.     virtual void __fastcall Prepare(void);
  550.     virtual void __fastcall Unprepare(void);
  551.     virtual void __fastcall PrintAfterControllers(void);
  552.     virtual void __fastcall PrintBeforeControllers(void);
  553.     virtual void __fastcall PrintEmptyController(void);
  554.     void __fastcall PrintGroupHeaders(void);
  555.     void __fastcall PrintGroupFooters(void);
  556.     virtual void __fastcall RegisterBands(void);
  557.     virtual void __fastcall RegisterDatasets(void);
  558.     virtual void __fastcall SetPrintBefore(bool Value);
  559.     virtual void __fastcall UpdateLocalVar(void);
  560.     
  561. public:
  562.     __fastcall virtual TQRCustomController(Classes::TComponent* AOwner);
  563.     __fastcall virtual ~TQRCustomController(void);
  564.     void __fastcall AddNotifyClient(TQRPrintable* Value);
  565.     __property Classes::TComponent* Master = {read=FMaster, write=SetMaster};
  566.     __property TCustomQuickRep* ParentReport = {read=FParentReport, write=FParentReport};
  567.     __property bool PrintBefore = {read=FPrintBefore, write=SetPrintBefore, nodefault};
  568.     __property bool PrintIfEmpty = {read=FPrintIfEmpty, write=FPrintIfEmpty, nodefault};
  569.     __property Classes::TComponent* SelfCheck = {read=FSelfCheck, write=FSelfCheck};
  570. };
  571.  
  572.  
  573. class DELPHICLASS TQRController;
  574. class PASCALIMPLEMENTATION TQRController : public TQRCustomController 
  575. {
  576.     typedef TQRCustomController inherited;
  577.     
  578. private:
  579.     Db::TDataSet* FDataSet;
  580.     TQRCustomBand* FDetail;
  581.     TQRCustomBand* FFooter;
  582.     TQRCustomBand* FHeader;
  583.     TQROnNeedDataEvent FOnNeedDataEvent;
  584.     int FDetailNumber;
  585.     bool UpdateSQLParams;
  586.     void __fastcall SetDataSet(Db::TDataSet* Value);
  587.     
  588. protected:
  589.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  590.         );
  591.     virtual void __fastcall Prepare(void);
  592.     virtual void __fastcall PrintEmptyController(void);
  593.     virtual void __fastcall RegisterBands(void);
  594.     virtual void __fastcall RegisterDatasets(void);
  595.     virtual void __fastcall Execute(void);
  596.     
  597. public:
  598.     __property Db::TDataSet* DataSet = {read=FDataSet, write=SetDataSet};
  599.     __property int DetailNumber = {read=FDetailNumber, nodefault};
  600.     __property TQRCustomBand* Detail = {read=FDetail, write=FDetail};
  601.     __property TQRCustomBand* Footer = {read=FFooter, write=FFooter};
  602.     __property TQRCustomBand* Header = {read=FHeader, write=FHeader};
  603.     __property TQROnNeedDataEvent OnNeedData = {read=FOnNeedDataEvent, write=FOnNeedDataEvent};
  604. public:
  605.     #pragma option push -w-inl
  606.     /* TQRCustomController.Create */ inline __fastcall virtual TQRController(Classes::TComponent* AOwner
  607.         ) : TQRCustomController(AOwner) { }
  608.     #pragma option pop
  609.     #pragma option push -w-inl
  610.     /* TQRCustomController.Destroy */ inline __fastcall virtual ~TQRController(void) { }
  611.     #pragma option pop
  612.     
  613. };
  614.  
  615.  
  616. class DELPHICLASS TQRBandSize;
  617. class PASCALIMPLEMENTATION TQRBandSize : public TQRUnitBase 
  618. {
  619.     typedef TQRUnitBase inherited;
  620.     
  621. private:
  622.     Extended FWidth;
  623.     Extended FLength;
  624.     TQRCustomBand* Parent;
  625.     Extended __fastcall GetValue(int Index);
  626.     void __fastcall SetValue(int Index, Extended Value);
  627.     
  628. protected:
  629.     virtual void __fastcall ReadValues(Classes::TReader* Reader);
  630.     virtual void __fastcall SetParentSizes(void);
  631.     virtual void __fastcall WriteValues(Classes::TWriter* Writer);
  632.     void __fastcall FixZoom(void);
  633.     
  634. public:
  635.     __fastcall TQRBandSize(TQRCustomBand* AParent);
  636.     __property Extended Length = {read=GetValue, write=SetValue, stored=false, index=0};
  637.     
  638. __published:
  639.     __property Extended Height = {read=GetValue, write=SetValue, stored=false, index=0};
  640.     __property Extended Width = {read=GetValue, write=SetValue, stored=false, index=1};
  641. public:
  642.     #pragma option push -w-inl
  643.     /* TPersistent.Destroy */ inline __fastcall virtual ~TQRBandSize(void) { }
  644.     #pragma option pop
  645.     
  646. };
  647.  
  648.  
  649. typedef void __fastcall (__closure *TQRBandBeforePrintEvent)(TQRCustomBand* Sender, bool &PrintBand)
  650.     ;
  651.  
  652. typedef void __fastcall (__closure *TQRBandAfterPrintEvent)(TQRCustomBand* Sender, bool BandPrinted)
  653.     ;
  654.  
  655. class DELPHICLASS TQRChildBand;
  656. class PASCALIMPLEMENTATION TQRCustomBand : public TQRBasePanel 
  657. {
  658.     typedef TQRBasePanel inherited;
  659.     
  660. private:
  661.     Windows::TRect BandFrameRect;
  662.     bool ButtonDown;
  663.     Extended FExpanded;
  664.     TQRBandAfterPrintEvent FAfterPrintEvent;
  665.     bool FAlignToBottom;
  666.     TQRBandBeforePrintEvent FBeforePrintEvent;
  667.     bool FEnabled;
  668.     bool FForceNewColumn;
  669.     bool FForceNewPage;
  670.     TQRCustomBand* FLinkBand;
  671.     TCustomQuickRep* FParentReport;
  672.     bool FParentUpdating;
  673.     Qrprntr::TQRBandType FQRBandType;
  674.     int LoadedHeight;
  675.     TQRBandSize* FSize;
  676.     TQRCustomController* FNotifyController;
  677.     void __fastcall SetLinkBand(TQRCustomBand* Value);
  678.     TQRBandSize* __fastcall GetBandSize(void);
  679.     bool __fastcall GetHasChild(void);
  680.     TQRChildBand* __fastcall GetChild(void);
  681.     void __fastcall SetBandType(Qrprntr::TQRBandType Value);
  682.     void __fastcall SetHasChild(bool Value);
  683.     
  684. protected:
  685.     TQRUnit __fastcall GetUnits(void);
  686.     Extended __fastcall StretchHeight(bool IncludeNext);
  687.     virtual AnsiString __fastcall BandTypeName();
  688.     virtual AnsiString __fastcall BandComponentName();
  689.     void __fastcall AdvancePaper(void);
  690.     virtual void __fastcall Loaded(void);
  691.     void __fastcall MakeSpace(void);
  692.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  693.         );
  694.     virtual void __fastcall Paint(void);
  695.     virtual void __fastcall PaintRuler(TQRUnit Units);
  696.     void __fastcall Print(void);
  697.     virtual void __fastcall SetParent(Controls::TWinControl* AParent);
  698.     virtual void __fastcall SetParentReport(TCustomQuickRep* AParentReport);
  699.     void __fastcall SetBandSize(TQRBandSize* Value);
  700.     virtual void __fastcall SetBounds(int ALeft, int ATop, int AWidth, int AHeight);
  701.     virtual void __fastcall SetEnabled(bool Value);
  702.     void __fastcall SetUnits(TQRUnit Value);
  703.     virtual void __fastcall SetZoom(int Value);
  704.     virtual void __fastcall WriteDummy(Classes::TWriter* Writer);
  705.     __property TQRCustomController* NotifyController = {read=FNotifyController, write=FNotifyController
  706.         };
  707.     __property bool ParentUpdating = {read=FParentUpdating, write=FParentUpdating, nodefault};
  708.     __property TQRUnit Units = {read=GetUnits, write=SetUnits, nodefault};
  709.     
  710. public:
  711.     __fastcall virtual TQRCustomBand(Classes::TComponent* AOwner);
  712.     __fastcall virtual ~TQRCustomBand(void);
  713.     TQRPrintable* __fastcall AddPrintable(TMetaClass* PrintableClass);
  714.     bool __fastcall CanExpand(Extended Value);
  715.     bool __fastcall ExpandBand(Extended Value, Extended &NewExpanded, bool &HasExpanded);
  716.     __property Extended Expanded = {read=FExpanded};
  717.     __property Qrprntr::TQRBandType BandType = {read=FQRBandType, write=SetBandType, nodefault};
  718.     __property TQRChildBand* ChildBand = {read=GetChild};
  719.     __property TCustomQuickRep* ParentReport = {read=FParentReport, write=SetParentReport};
  720.     
  721. __published:
  722.     __property TQRBandAfterPrintEvent AfterPrint = {read=FAfterPrintEvent, write=FAfterPrintEvent};
  723.     __property bool AlignToBottom = {read=FAlignToBottom, write=FAlignToBottom, nodefault};
  724.     __property TQRBandBeforePrintEvent BeforePrint = {read=FBeforePrintEvent, write=FBeforePrintEvent};
  725.         
  726.     __property Color ;
  727.     __property bool Enabled = {read=FEnabled, write=SetEnabled, default=1};
  728.     __property Font ;
  729.     __property bool ForceNewColumn = {read=FForceNewColumn, write=FForceNewColumn, nodefault};
  730.     __property bool ForceNewPage = {read=FForceNewPage, write=FForceNewPage, nodefault};
  731.     __property bool HasChild = {read=GetHasChild, write=SetHasChild, stored=false, nodefault};
  732.     __property TQRCustomBand* LinkBand = {read=FLinkBand, write=SetLinkBand};
  733.     __property ParentFont ;
  734.     __property TQRBandSize* Size = {read=GetBandSize, write=SetBandSize};
  735. public:
  736.     #pragma option push -w-inl
  737.     /* TWinControl.CreateParented */ inline __fastcall TQRCustomBand(HWND ParentWindow) : TQRBasePanel(
  738.         ParentWindow) { }
  739.     #pragma option pop
  740.     
  741. };
  742.  
  743.  
  744. class PASCALIMPLEMENTATION TQRBand : public TQRCustomBand 
  745. {
  746.     typedef TQRCustomBand inherited;
  747.     
  748. __published:
  749.     __property BandType ;
  750. public:
  751.     #pragma option push -w-inl
  752.     /* TQRCustomBand.Create */ inline __fastcall virtual TQRBand(Classes::TComponent* AOwner) : TQRCustomBand(
  753.         AOwner) { }
  754.     #pragma option pop
  755.     #pragma option push -w-inl
  756.     /* TQRCustomBand.Destroy */ inline __fastcall virtual ~TQRBand(void) { }
  757.     #pragma option pop
  758.     
  759. public:
  760.     #pragma option push -w-inl
  761.     /* TWinControl.CreateParented */ inline __fastcall TQRBand(HWND ParentWindow) : TQRCustomBand(ParentWindow
  762.         ) { }
  763.     #pragma option pop
  764.     
  765. };
  766.  
  767.  
  768. class PASCALIMPLEMENTATION TQRChildBand : public TQRCustomBand 
  769. {
  770.     typedef TQRCustomBand inherited;
  771.     
  772. private:
  773.     TQRCustomBand* FParentBand;
  774.     void __fastcall SetParentBand(TQRCustomBand* Value);
  775.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  776.         );
  777.     
  778. public:
  779.     __fastcall virtual TQRChildBand(Classes::TComponent* AOwner);
  780.     
  781. __published:
  782.     __property TQRCustomBand* ParentBand = {read=FParentBand, write=SetParentBand};
  783. public:
  784.     #pragma option push -w-inl
  785.     /* TQRCustomBand.Destroy */ inline __fastcall virtual ~TQRChildBand(void) { }
  786.     #pragma option pop
  787.     
  788. public:
  789.     #pragma option push -w-inl
  790.     /* TWinControl.CreateParented */ inline __fastcall TQRChildBand(HWND ParentWindow) : TQRCustomBand(
  791.         ParentWindow) { }
  792.     #pragma option pop
  793.     
  794. };
  795.  
  796.  
  797. class DELPHICLASS TQRControllerBand;
  798. class PASCALIMPLEMENTATION TQRControllerBand : public TQRCustomBand 
  799. {
  800.     typedef TQRCustomBand inherited;
  801.     
  802. private:
  803.     bool LocalVarCreated;
  804.     TQRCustomController* FController;
  805.     Classes::TComponent* FMaster;
  806.     
  807. protected:
  808.     bool __fastcall GetPrintIfEmpty(void);
  809.     bool __fastcall GetPrintBefore(void);
  810.     void __fastcall SetPrintBefore(bool Value);
  811.     virtual void __fastcall CreateController(void);
  812.     virtual void __fastcall RegisterBands(void);
  813.     virtual void __fastcall SetMaster(Classes::TComponent* Value);
  814.     virtual void __fastcall SetName(const AnsiString NewName);
  815.     virtual void __fastcall SetParent(Controls::TWinControl* AParent);
  816.     virtual void __fastcall SetParentReport(TCustomQuickRep* AParentReport);
  817.     virtual void __fastcall CreateLocalVar(void);
  818.     virtual void __fastcall RemoveLocalVar(void);
  819.     virtual AnsiString __fastcall LocalVarExpression();
  820.     void __fastcall SetPrintIfEmpty(bool Value);
  821.     __property TQRCustomController* Controller = {read=FController, write=FController};
  822.     
  823. public:
  824.     __fastcall virtual TQRControllerBand(Classes::TComponent* AOwner);
  825.     __fastcall virtual ~TQRControllerBand(void);
  826.     __property bool PrintIfEmpty = {read=GetPrintIfEmpty, write=SetPrintIfEmpty, nodefault};
  827.     __property bool PrintBefore = {read=GetPrintBefore, write=SetPrintBefore, nodefault};
  828.     
  829. __published:
  830.     __property Classes::TComponent* Master = {read=FMaster, write=SetMaster};
  831. public:
  832.     #pragma option push -w-inl
  833.     /* TWinControl.CreateParented */ inline __fastcall TQRControllerBand(HWND ParentWindow) : TQRCustomBand(
  834.         ParentWindow) { }
  835.     #pragma option pop
  836.     
  837. };
  838.  
  839.  
  840. class DELPHICLASS TQRSubDetailGroupBands;
  841. class DELPHICLASS TQRSubDetail;
  842. class PASCALIMPLEMENTATION TQRSubDetail : public TQRControllerBand 
  843. {
  844.     typedef TQRControllerBand inherited;
  845.     
  846. private:
  847.     TQRSubDetailGroupBands* FBands;
  848.     Db::TDataSet* __fastcall GetDataSet(void);
  849.     TQRCustomBand* __fastcall GetFooterBand(void);
  850.     TQRCustomBand* __fastcall GetHeaderBand(void);
  851.     TQROnNeedDataEvent __fastcall GetOnNeedData();
  852.     void __fastcall SetDataSet(Db::TDataSet* Value);
  853.     void __fastcall SetFooterBand(TQRCustomBand* Value);
  854.     void __fastcall SetHeaderBand(TQRCustomBand* Value);
  855.     void __fastcall SetOnNeedData(TQROnNeedDataEvent Value);
  856.     
  857. protected:
  858.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  859.         );
  860.     virtual void __fastcall RegisterBands(void);
  861.     
  862. public:
  863.     __fastcall virtual TQRSubDetail(Classes::TComponent* AOwner);
  864.     __fastcall virtual ~TQRSubDetail(void);
  865.     void __fastcall AddNotifyClient(TQRPrintable* Value);
  866.     
  867. __published:
  868.     __property TQRSubDetailGroupBands* Bands = {read=FBands, write=FBands};
  869.     __property Db::TDataSet* DataSet = {read=GetDataSet, write=SetDataSet};
  870.     __property TQRCustomBand* FooterBand = {read=GetFooterBand, write=SetFooterBand};
  871.     __property TQRCustomBand* HeaderBand = {read=GetHeaderBand, write=SetHeaderBand};
  872.     __property TQROnNeedDataEvent OnNeedData = {read=GetOnNeedData, write=SetOnNeedData};
  873.     __property PrintBefore ;
  874.     __property PrintIfEmpty ;
  875. public:
  876.     #pragma option push -w-inl
  877.     /* TWinControl.CreateParented */ inline __fastcall TQRSubDetail(HWND ParentWindow) : TQRControllerBand(
  878.         ParentWindow) { }
  879.     #pragma option pop
  880.     
  881. };
  882.  
  883.  
  884. class PASCALIMPLEMENTATION TQRSubDetailGroupBands : public Classes::TPersistent 
  885. {
  886.     typedef Classes::TPersistent inherited;
  887.     
  888. private:
  889.     TQRSubDetail* Owner;
  890.     TQRCustomBand* __fastcall GetFooterBand(void);
  891.     bool __fastcall GetHasFooter(void);
  892.     bool __fastcall GetHasHeader(void);
  893.     TQRCustomBand* __fastcall GetHeaderBand(void);
  894.     void __fastcall SetHasFooter(bool Value);
  895.     void __fastcall SetHasHeader(bool Value);
  896.     
  897. public:
  898.     __fastcall TQRSubDetailGroupBands(TQRSubDetail* AOwner);
  899.     __property TQRCustomBand* FooterBand = {read=GetFooterBand};
  900.     __property TQRCustomBand* HeaderBand = {read=GetHeaderBand};
  901.     
  902. __published:
  903.     __property bool HasFooter = {read=GetHasFooter, write=SetHasFooter, stored=false, nodefault};
  904.     __property bool HasHeader = {read=GetHasHeader, write=SetHasHeader, stored=false, nodefault};
  905. public:
  906.         
  907.     #pragma option push -w-inl
  908.     /* TPersistent.Destroy */ inline __fastcall virtual ~TQRSubDetailGroupBands(void) { }
  909.     #pragma option pop
  910.     
  911. };
  912.  
  913.  
  914. class DELPHICLASS TQRLoopController;
  915. class PASCALIMPLEMENTATION TQRLoopController : public TQRCustomController 
  916. {
  917.     typedef TQRCustomController inherited;
  918.     
  919. private:
  920.     int FCount;
  921.     int FPrintCount;
  922.     TQRCustomBand* FDetailBand;
  923.     
  924. protected:
  925.     virtual Qrexpr::TQREvResult __fastcall LocalVarValue();
  926.     virtual void __fastcall RegisterBands(void);
  927.     
  928. public:
  929.     __fastcall virtual TQRLoopController(Classes::TComponent* AOwner);
  930.     virtual void __fastcall Execute(void);
  931.     __property TQRCustomBand* Detail = {read=FDetailBand, write=FDetailBand};
  932.     __property int PrintCount = {read=FPrintCount, write=FPrintCount, nodefault};
  933.     __property int Count = {read=FCount, write=FCount, nodefault};
  934. public:
  935.     #pragma option push -w-inl
  936.     /* TQRCustomController.Destroy */ inline __fastcall virtual ~TQRLoopController(void) { }
  937.     #pragma option pop
  938.     
  939. };
  940.  
  941.  
  942. class DELPHICLASS TQRLoopBand;
  943. class PASCALIMPLEMENTATION TQRLoopBand : public TQRControllerBand 
  944. {
  945.     typedef TQRControllerBand inherited;
  946.     
  947. protected:
  948.     int __fastcall GetPrintCount(void);
  949.     void __fastcall SetPrintCount(int Value);
  950.     virtual void __fastcall CreateController(void);
  951.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  952.         );
  953.     virtual AnsiString __fastcall BandTypeName();
  954.     virtual AnsiString __fastcall BandComponentName();
  955.     int __fastcall GetCount(void);
  956.     virtual AnsiString __fastcall LocalVarExpression();
  957.     
  958. public:
  959.     __fastcall virtual TQRLoopBand(Classes::TComponent* AOwner);
  960.     __property int Count = {read=GetCount, nodefault};
  961.     
  962. __published:
  963.     __property int PrintCount = {read=GetPrintCount, write=SetPrintCount, nodefault};
  964.     __property PrintBefore ;
  965. public:
  966.     #pragma option push -w-inl
  967.     /* TQRControllerBand.Destroy */ inline __fastcall virtual ~TQRLoopBand(void) { }
  968.     #pragma option pop
  969.     
  970. public:
  971.     #pragma option push -w-inl
  972.     /* TWinControl.CreateParented */ inline __fastcall TQRLoopBand(HWND ParentWindow) : TQRControllerBand(
  973.         ParentWindow) { }
  974.     #pragma option pop
  975.     
  976. };
  977.  
  978.  
  979. class DELPHICLASS TQRStringsController;
  980. class PASCALIMPLEMENTATION TQRStringsController : public TQRCustomController 
  981. {
  982.     typedef TQRCustomController inherited;
  983.     
  984. private:
  985.     Classes::TStrings* FItems;
  986.     int FIndex;
  987.     TQRCustomBand* FDetailBand;
  988.     
  989. protected:
  990.     virtual Qrexpr::TQREvResult __fastcall LocalVarValue();
  991.     virtual void __fastcall RegisterBands(void);
  992.     
  993. public:
  994.     __fastcall virtual TQRStringsController(Classes::TComponent* AOwner);
  995.     __fastcall virtual ~TQRStringsController(void);
  996.     virtual void __fastcall Execute(void);
  997.     __property TQRCustomBand* Detail = {read=FDetailBand, write=FDetailBand};
  998.     __property Classes::TStrings* Items = {read=FItems, write=FItems};
  999.     __property int Index = {read=FIndex, write=FIndex, nodefault};
  1000. };
  1001.  
  1002.  
  1003. class DELPHICLASS TQRStringsBand;
  1004. class PASCALIMPLEMENTATION TQRStringsBand : public TQRControllerBand 
  1005. {
  1006.     typedef TQRControllerBand inherited;
  1007.     
  1008. protected:
  1009.     int __fastcall GetIndex(void);
  1010.     AnsiString __fastcall GetItem();
  1011.     Classes::TStrings* __fastcall GetItems(void);
  1012.     virtual AnsiString __fastcall BandTypeName();
  1013.     virtual AnsiString __fastcall BandComponentName();
  1014.     virtual AnsiString __fastcall LocalVarExpression();
  1015.     void __fastcall SetItems(Classes::TStrings* Value);
  1016.     virtual void __fastcall CreateController(void);
  1017.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  1018.         );
  1019.     
  1020. public:
  1021.     __fastcall virtual TQRStringsBand(Classes::TComponent* AOwner);
  1022.     __property AnsiString Item = {read=GetItem};
  1023.     __property int Index = {read=GetIndex, nodefault};
  1024.     
  1025. __published:
  1026.     __property Classes::TStrings* Items = {read=GetItems, write=SetItems};
  1027.     __property PrintBefore ;
  1028. public:
  1029.     #pragma option push -w-inl
  1030.     /* TQRControllerBand.Destroy */ inline __fastcall virtual ~TQRStringsBand(void) { }
  1031.     #pragma option pop
  1032.     
  1033. public:
  1034.     #pragma option push -w-inl
  1035.     /* TWinControl.CreateParented */ inline __fastcall TQRStringsBand(HWND ParentWindow) : TQRControllerBand(
  1036.         ParentWindow) { }
  1037.     #pragma option pop
  1038.     
  1039. };
  1040.  
  1041.  
  1042. class DELPHICLASS TQRCompositePrinterSettings;
  1043. class PASCALIMPLEMENTATION TQRCompositePrinterSettings : public TQuickRepPrinterSettings 
  1044. {
  1045.     typedef TQuickRepPrinterSettings inherited;
  1046.     
  1047. __published:
  1048.     __property Orientation ;
  1049.     __property PaperSize ;
  1050. public:
  1051.     #pragma option push -w-inl
  1052.     /* TQRPrinterSettings.Create */ inline __fastcall TQRCompositePrinterSettings(void) : TQuickRepPrinterSettings(
  1053.         ) { }
  1054.     #pragma option pop
  1055.     
  1056. public:
  1057.     #pragma option push -w-inl
  1058.     /* TPersistent.Destroy */ inline __fastcall virtual ~TQRCompositePrinterSettings(void) { }
  1059.     #pragma option pop
  1060.     
  1061. };
  1062.  
  1063.  
  1064. class DELPHICLASS TQuickRep;
  1065. class PASCALIMPLEMENTATION TQuickRep : public TCustomQuickRep 
  1066. {
  1067.     typedef TCustomQuickRep inherited;
  1068.     
  1069. private:
  1070.     Db::TDataSet* __fastcall GetDataSet(void);
  1071.     int __fastcall GetRecordCount(void);
  1072.     int __fastcall GetRecordNumber(void);
  1073.     void __fastcall SetDataSet(Db::TDataSet* Value);
  1074.     
  1075. protected:
  1076.     virtual void __fastcall Execute(void);
  1077.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  1078.         );
  1079.     virtual void __fastcall SetControllerBands(void);
  1080.     
  1081. public:
  1082.     __fastcall virtual TQuickRep(Classes::TComponent* AOwner, int Dummy);
  1083.     __fastcall virtual ~TQuickRep(void);
  1084.     __property int RecordCount = {read=GetRecordCount, nodefault};
  1085.     __property int RecordNumber = {read=GetRecordNumber, nodefault};
  1086.     
  1087. __published:
  1088.     __property AfterPrint ;
  1089.     __property AfterPreview ;
  1090.     __property TQuickRepBands* Bands = {read=FBands, write=FBands};
  1091.     __property BeforePrint ;
  1092.     __property Db::TDataSet* DataSet = {read=GetDataSet, write=SetDataSet};
  1093.     __property Description ;
  1094.     __property Font ;
  1095.     __property Functions ;
  1096.     __property OnEndPage ;
  1097.     __property OnNeedData ;
  1098.     __property OnPreview ;
  1099.     __property OnStartPage ;
  1100.     __property Options ;
  1101.     __property Page ;
  1102.     __property PrinterSettings ;
  1103.     __property PrintIfEmpty ;
  1104.     __property ReportTitle ;
  1105.     __property ShowProgress ;
  1106.     __property SnapToGrid ;
  1107.     __property Units ;
  1108.     __property Zoom ;
  1109. public:
  1110.     #pragma option push -w-inl
  1111.     /* TCustomQuickRep.Create */ inline __fastcall virtual TQuickRep(Classes::TComponent* AOwner) : TCustomQuickRep(
  1112.         AOwner) { }
  1113.     #pragma option pop
  1114.     
  1115. public:
  1116.     #pragma option push -w-inl
  1117.     /* TWinControl.CreateParented */ inline __fastcall TQuickRep(HWND ParentWindow) : TCustomQuickRep(ParentWindow
  1118.         ) { }
  1119.     #pragma option pop
  1120.     
  1121. };
  1122.  
  1123.  
  1124. class DELPHICLASS TQuickAbstractRep;
  1125. class PASCALIMPLEMENTATION TQuickAbstractRep : public TCustomQuickRep 
  1126. {
  1127.     typedef TCustomQuickRep inherited;
  1128.     
  1129. __published:
  1130.     __property AfterPrint ;
  1131.     __property AfterPreview ;
  1132.     __property TQuickRepBands* Bands = {read=FBands, write=FBands};
  1133.     __property BeforePrint ;
  1134.     __property Description ;
  1135.     __property Font ;
  1136.     __property Functions ;
  1137.     __property OnEndPage ;
  1138.     __property OnPreview ;
  1139.     __property OnStartPage ;
  1140.     __property Options ;
  1141.     __property Page ;
  1142.     __property PrinterSettings ;
  1143.     __property PrintIfEmpty ;
  1144.     __property ReportTitle ;
  1145.     __property Units ;
  1146.     __property Zoom ;
  1147. public:
  1148.     #pragma option push -w-inl
  1149.     /* TCustomQuickRep.Create */ inline __fastcall virtual TQuickAbstractRep(Classes::TComponent* AOwner
  1150.         ) : TCustomQuickRep(AOwner) { }
  1151.     #pragma option pop
  1152.     #pragma option push -w-inl
  1153.     /* TCustomQuickRep.CreateNew */ inline __fastcall virtual TQuickAbstractRep(Classes::TComponent* AOwner
  1154.         , int Dummy) : TCustomQuickRep(AOwner, Dummy) { }
  1155.     #pragma option pop
  1156.     #pragma option push -w-inl
  1157.     /* TCustomQuickRep.Destroy */ inline __fastcall virtual ~TQuickAbstractRep(void) { }
  1158.     #pragma option pop
  1159.     
  1160. public:
  1161.     #pragma option push -w-inl
  1162.     /* TWinControl.CreateParented */ inline __fastcall TQuickAbstractRep(HWND ParentWindow) : TCustomQuickRep(
  1163.         ParentWindow) { }
  1164.     #pragma option pop
  1165.     
  1166. };
  1167.  
  1168.  
  1169. class DELPHICLASS TQRLabelSetup;
  1170. class PASCALIMPLEMENTATION TQRLabelSetup : public TQRUnitBase 
  1171. {
  1172.     typedef TQRUnitBase inherited;
  1173.     
  1174. private:
  1175.     Extended FTopMargin;
  1176.     Extended FSideMargin;
  1177.     Extended FVerticalPitch;
  1178.     Extended FLabelWidth;
  1179.     Extended FLabelHeight;
  1180.     Extended FHorizontalPitch;
  1181.     int FNumberDown;
  1182.     int FNumberAcross;
  1183.     TCustomQuickRep* FParent;
  1184.     
  1185. protected:
  1186.     Extended __fastcall GetValue(int Index);
  1187.     int __fastcall GetInteger(int Index);
  1188.     void __fastcall SetValue(int Index, Extended Value);
  1189.     void __fastcall SetInteger(int Index, int Value);
  1190.     
  1191. public:
  1192.     __fastcall TQRLabelSetup(TCustomQuickRep* Parent);
  1193.     
  1194. __published:
  1195.     __property Extended TopMargin = {read=GetValue, write=SetValue, stored=false, index=0};
  1196.     __property Extended SideMargin = {read=GetValue, write=SetValue, stored=false, index=1};
  1197.     __property Extended VerticalPitch = {read=GetValue, write=SetValue, stored=false, index=2};
  1198.     __property Extended LabelWidth = {read=GetValue, write=SetValue, stored=false, index=3};
  1199.     __property Extended LabelHeight = {read=GetValue, write=SetValue, stored=false, index=4};
  1200.     __property Extended HorizontalPitch = {read=GetValue, write=SetValue, stored=false, index=5};
  1201.     __property int NumberDown = {read=GetInteger, write=SetInteger, stored=false, index=0, nodefault};
  1202.     __property int NumberAcross = {read=GetInteger, write=SetInteger, stored=false, index=1, nodefault}
  1203.         ;
  1204. public:
  1205.     #pragma option push -w-inl
  1206.     /* TPersistent.Destroy */ inline __fastcall virtual ~TQRLabelSetup(void) { }
  1207.     #pragma option pop
  1208.     
  1209. };
  1210.  
  1211.  
  1212. class DELPHICLASS TQuickLabelReport;
  1213. class PASCALIMPLEMENTATION TQuickLabelReport : public TCustomQuickRep 
  1214. {
  1215.     typedef TCustomQuickRep inherited;
  1216.     
  1217. private:
  1218.     TQRLabelSetup* FLabelSetup;
  1219.     
  1220. public:
  1221.     __fastcall virtual TQuickLabelReport(Classes::TComponent* AOwner, int Dummy);
  1222.     __fastcall virtual ~TQuickLabelReport(void);
  1223.     
  1224. __published:
  1225.     __property TQRLabelSetup* LabelSetup = {read=FLabelSetup, write=FLabelSetup};
  1226. public:
  1227.     #pragma option push -w-inl
  1228.     /* TCustomQuickRep.Create */ inline __fastcall virtual TQuickLabelReport(Classes::TComponent* AOwner
  1229.         ) : TCustomQuickRep(AOwner) { }
  1230.     #pragma option pop
  1231.     
  1232. public:
  1233.     #pragma option push -w-inl
  1234.     /* TWinControl.CreateParented */ inline __fastcall TQuickLabelReport(HWND ParentWindow) : TCustomQuickRep(
  1235.         ParentWindow) { }
  1236.     #pragma option pop
  1237.     
  1238. };
  1239.  
  1240.  
  1241. class DELPHICLASS TQRGroup;
  1242. class PASCALIMPLEMENTATION TQRGroup : public TQRCustomBand 
  1243. {
  1244.     typedef TQRCustomBand inherited;
  1245.     
  1246. private:
  1247.     Qrexpr::TQREvaluator* Evaluator;
  1248.     AnsiString FExpression;
  1249.     TQRBand* FFooterBand;
  1250.     Classes::TComponent* FMaster;
  1251.     bool FReprint;
  1252.     bool FReprintOnNewPage;
  1253.     Qrexpr::TQREvResult GroupValue;
  1254.     bool HasResult;
  1255.     bool InGroup;
  1256.     int PrintPageNumber;
  1257.     void __fastcall SetFooterBand(TQRBand* Value);
  1258.     void __fastcall SetMaster(Classes::TComponent* Value);
  1259.     
  1260. protected:
  1261.     __property bool Reprint = {read=FReprint, write=FReprint, nodefault};
  1262.     void __fastcall Check(void);
  1263.     void __fastcall NewPageCheck(void);
  1264.     virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
  1265.         );
  1266.     void __fastcall Prepare(void);
  1267.     void __fastcall PrintGroupHeader(void);
  1268.     void __fastcall PrintGroupFooter(void);
  1269.     void __fastcall SetExpression(AnsiString Value);
  1270.     virtual void __fastcall SetParent(Controls::TWinControl* AParent);
  1271.     void __fastcall Unprepare(void);
  1272.     
  1273. public:
  1274.     __fastcall virtual TQRGroup(Classes::TComponent* AOwner);
  1275.     __fastcall virtual ~TQRGroup(void);
  1276.     
  1277. __published:
  1278.     __property AnsiString Expression = {read=FExpression, write=SetExpression};
  1279.     __property TQRBand* FooterBand = {read=FFooterBand, write=SetFooterBand};
  1280.     __property Classes::TComponent* Master = {read=FMaster, write=SetMaster};
  1281.     __property bool ReprintOnNewPage = {read=FReprintOnNewPage, write=FReprintOnNewPage, nodefault};
  1282. public:
  1283.         
  1284.     #pragma option push -w-inl
  1285.     /* TWinControl.CreateParented */ inline __fastcall TQRGroup(HWND ParentWindow) : TQRCustomBand(ParentWindow
  1286.         ) { }
  1287.     #pragma option pop
  1288.     
  1289. };
  1290.  
  1291.  
  1292. class DELPHICLASS TQRPrintableSize;
  1293. class PASCALIMPLEMENTATION TQRPrintableSize : public TQRUnitBase 
  1294. {
  1295.     typedef TQRUnitBase inherited;
  1296.     
  1297. private:
  1298.     Extended FHeight;
  1299.     Extended FLeft;
  1300.     Extended FTop;
  1301.     Extended FWidth;
  1302.     TQRPrintable* Parent;
  1303.     Extended __fastcall GetValue(int Index);
  1304.     void __fastcall SetValue(int Index, Extended Value);
  1305.     
  1306. protected:
  1307.     virtual void __fastcall SetParentSizes(void);
  1308.     virtual void __fastcall ReadValues(Classes::TReader* Reader);
  1309.     virtual void __fastcall WriteValues(Classes::TWriter* Writer);
  1310.     void __fastcall FixZoom(void);
  1311.     
  1312. public:
  1313.     __fastcall TQRPrintableSize(TQRPrintable* AParent);
  1314.     
  1315. __published:
  1316.     __property Extended Height = {read=GetValue, write=SetValue, stored=false, index=0};
  1317.     __property Extended Left = {read=GetValue, write=SetValue, stored=false, index=1};
  1318.     __property Extended Top = {read=GetValue, write=SetValue, stored=false, index=2};
  1319.     __property Extended Width = {read=GetValue, write=SetValue, stored=false, index=3};
  1320. public:
  1321.     #pragma option push -w-inl
  1322.     /* TPersistent.Destroy */ inline __fastcall virtual ~TQRPrintableSize(void) { }
  1323.     #pragma option pop
  1324.     
  1325. };
  1326.  
  1327.  
  1328. typedef TMetaClass*TQRPrintableClass;
  1329.  
  1330. typedef TMetaClass*TQRPrintableEditorClass;
  1331.  
  1332. class DELPHICLASS TQRPrintableEditor;
  1333. class PASCALIMPLEMENTATION TQRPrintableEditor : public System::TObject 
  1334. {
  1335.     typedef System::TObject inherited;
  1336.     
  1337. private:
  1338.     TQRPrintable* FControl;
  1339.     
  1340. protected:
  1341.     virtual Graphics::TColor __fastcall GetColor(void);
  1342.     virtual Graphics::TFont* __fastcall GetFont(void);
  1343.     virtual TMetaClass* __fastcall GetPrintableClass(void);
  1344.     virtual AnsiString __fastcall GetValue();
  1345.     virtual AnsiString __fastcall GetGlyphResName();
  1346.     virtual AnsiString __fastcall GetControlName();
  1347.     virtual void __fastcall SetColor(Graphics::TColor Value) = 0 ;
  1348.     virtual void __fastcall SetFont(Graphics::TFont* Value) = 0 ;
  1349.     virtual void __fastcall SetValue(AnsiString Value) = 0 ;
  1350.     
  1351. public:
  1352.     __fastcall virtual TQRPrintableEditor(TQRPrintable* AControl);
  1353.     virtual bool __fastcall ShowEditor(void) = 0 ;
  1354.     __property TQRPrintable* Control = {read=FControl, write=FControl};
  1355.     __property Graphics::TColor Color = {read=GetColor, write=SetColor, nodefault};
  1356.     __property Graphics::TFont* Font = {read=GetFont, write=SetFont};
  1357.     __property TMetaClass* PrintableClass = {read=GetPrintableClass};
  1358.     __property AnsiString Value = {read=GetValue, write=SetValue};
  1359.     __property AnsiString GlyphResName = {read=GetGlyphResName};
  1360.     __property AnsiString ControlName = {read=GetControlName};
  1361. public:
  1362.     #pragma option push -w-inl
  1363.     /* TObject.Destroy */ inline __fastcall virtual ~TQRPrintableEditor(void) { }
  1364.     #pragma option pop
  1365.     
  1366. };
  1367.  
  1368.  
  1369. class PASCALIMPLEMENTATION TQRPrintable : public Controls::TCustomControl 
  1370. {
  1371.     typedef Controls::TCustomControl inherited;
  1372.     
  1373. private:
  1374.     bool AlignUpdating;
  1375.     Classes::TAlignment FAlignment;
  1376.     bool FAlignToBand;
  1377.     bool ButtonDown;
  1378.     TQRFrame* FFrame;
  1379.     bool FIsPrinting;
  1380.     TCustomQuickRep* FParentReport;
  1381.     bool FPrintFinished;
  1382.     Qrprntr::TQRPrinter* FQRPrinter;
  1383.     TQRPrintableSize* FSize;
  1384.     int LoadedTop;
  1385.     int LoadedWidth;
  1386.     int LoadedHeight;
  1387.     int LoadedLeft;
  1388.     bool __fastcall GetTransparent(void);
  1389.     void __fastcall SetTransparent(bool Value);
  1390.     int __fastcall GetZoom(void);
  1391.     void __fastcall SetAlignToBand(bool Value);
  1392.     void __fastcall SetFrame(TQRFrame* Value);
  1393.     
  1394. protected:
  1395.     virtual bool __fastcall IsEnabled(void);
  1396.     virtual TMetaClass* __fastcall GetEditorClass(void);
  1397.     virtual void __fastcall AlignIt(void);
  1398.     virtual void __fastcall Loaded(void);
  1399.     void __fastcall PaintCorners(void);
  1400.     virtual void __fastcall SetParent(Controls::TWinControl* AParent);
  1401.     void __fastcall SetZoom(int Value);
  1402.     virtual void __fastcall Paint(void);
  1403.     virtual void __fastcall Prepare(void);
  1404.     virtual void __fastcall Print(int OfsX, int OfsY);
  1405.     virtual void __fastcall QRNotification(System::TObject* Sender, TQRNotifyOperation Operation);
  1406.     virtual void __fastcall SetAlignment(Classes::TAlignment Value);
  1407.     virtual void __fastcall SetBounds(int ALeft, int ATop, int AWidth, int AHeight);
  1408.     virtual void __fastcall UnPrepare(void);
  1409.     __property Classes::TAlignment Alignment = {read=FAlignment, write=SetAlignment, nodefault};
  1410.     __property bool AlignToBand = {read=FAlignToBand, write=SetAlignToBand, nodefault};
  1411.     __property bool IsPrinting = {read=FIsPrinting, write=FIsPrinting, nodefault};
  1412.     __property bool PrintFinished = {read=FPrintFinished, write=FPrintFinished, nodefault};
  1413.     __property Qrprntr::TQRPrinter* QRPrinter = {read=FQRPrinter, write=FQRPrinter};
  1414.     __property bool Transparent = {read=GetTransparent, write=SetTransparent, nodefault};
  1415.     
  1416. public:
  1417.     __fastcall virtual TQRPrintable(Classes::TComponent* AOwner);
  1418.     __fastcall virtual ~TQRPrintable(void);
  1419.     __property TCustomQuickRep* ParentReport = {read=FParentReport, write=FParentReport};
  1420.     __property int Zoom = {read=GetZoom, write=SetZoom, nodefault};
  1421.     __property TMetaClass* EditorClass = {read=GetEditorClass};
  1422.     
  1423. __published:
  1424.     __property Enabled ;
  1425.     __property TQRFrame* Frame = {read=FFrame, write=SetFrame};
  1426.     __property TQRPrintableSize* Size = {read=FSize, write=FSize};
  1427. public:
  1428.     #pragma option push -w-inl
  1429.     /* TWinControl.CreateParented */ inline __fastcall TQRPrintable(HWND ParentWindow) : Controls::TCustomControl(
  1430.         ParentWindow) { }
  1431.     #pragma option pop
  1432.     
  1433. };
  1434.  
  1435.  
  1436. class DELPHICLASS TQRCompositeWinControl;
  1437. class DELPHICLASS TQRCompositeReport;
  1438. class PASCALIMPLEMENTATION TQRCompositeReport : public Classes::TComponent 
  1439. {
  1440.     typedef Classes::TComponent inherited;
  1441.     
  1442. private:
  1443.     Classes::TNotifyEvent FOnAddReports;
  1444.     Classes::TNotifyEvent FOnFinished;
  1445.     TQuickReportOptions FOptions;
  1446.     TQRCompositePrinterSettings* FPrinterSettings;
  1447.     Qrprntr::TQRPrinter* FQRPrinter;
  1448.     Classes::TList* FReports;
  1449.     int FIndex;
  1450.     AnsiString FReportTitle;
  1451.     bool FGenerating;
  1452.     TQuickRep* aReport;
  1453.     TQRCompositeWinControl* aWinControl;
  1454.     void __fastcall CreateComposite(void);
  1455.     void __fastcall SetPrinterValues(void);
  1456.     
  1457. protected:
  1458.     void __fastcall CMPreviewClose(Qrprntr::TCM_QRPreviewClose &Message);
  1459.     void __fastcall CMPrint(Messages::TMessage &Message);
  1460.     __property bool Generating = {read=FGenerating, nodefault};
  1461.     
  1462. public:
  1463.     __fastcall virtual TQRCompositeReport(Classes::TComponent* AOwner);
  1464.     __fastcall virtual ~TQRCompositeReport(void);
  1465.     void __fastcall Prepare(void);
  1466.     void __fastcall PrinterSetup(void);
  1467.     void __fastcall Preview(void);
  1468.     void __fastcall Print(void);
  1469.     __property int Index = {read=FIndex, nodefault};
  1470.     __property Classes::TList* Reports = {read=FReports, write=FReports};
  1471.     
  1472. __published:
  1473.     __property Classes::TNotifyEvent OnAddReports = {read=FOnAddReports, write=FOnAddReports};
  1474.     __property Classes::TNotifyEvent OnFinished = {read=FOnFinished, write=FOnFinished};
  1475.     __property TQuickReportOptions Options = {read=FOptions, write=FOptions, nodefault};
  1476.     __property TQRCompositePrinterSettings* PrinterSettings = {read=FPrinterSettings, write=FPrinterSettings
  1477.         };
  1478.     __property AnsiString ReportTitle = {read=FReportTitle, write=FReportTitle};
  1479. };
  1480.  
  1481.  
  1482. class PASCALIMPLEMENTATION TQRCompositeWinControl : public Controls::TWinControl 
  1483. {
  1484.     typedef Controls::TWinControl inherited;
  1485.     
  1486. protected:
  1487.     TQRCompositeReport* ParentReport;
  1488.     MESSAGE void __fastcall CMPreviewClose(Qrprntr::TCM_QRPreviewClose &Message);
  1489.     MESSAGE void __fastcall CMPrint(Messages::TMessage &Message);
  1490.     
  1491. public:
  1492.     __fastcall virtual ~TQRCompositeWinControl(void);
  1493. public:
  1494.     #pragma option push -w-inl
  1495.     /* TWinControl.Create */ inline __fastcall virtual TQRCompositeWinControl(Classes::TComponent* AOwner
  1496.         ) : Controls::TWinControl(AOwner) { }
  1497.     #pragma option pop
  1498.     #pragma option push -w-inl
  1499.     /* TWinControl.CreateParented */ inline __fastcall TQRCompositeWinControl(HWND ParentWindow) : Controls::TWinControl(
  1500.         ParentWindow) { }
  1501.     #pragma option pop
  1502.     
  1503. };
  1504.  
  1505.  
  1506. //-- var, const, procedure ---------------------------------------------------
  1507. extern PACKAGE AnsiString __fastcall UniqueName(Classes::TComponent* AComponent, AnsiString Start);
  1508. extern PACKAGE void __fastcall PerformSQLParamsUpdate(Dbtables::TQuery* Query, Qrexpr::TQREvEnvironment* 
  1509.     Environment);
  1510. extern PACKAGE void __fastcall SetQRHiColor(void);
  1511. extern PACKAGE void __fastcall SetQRLoColor(void);
  1512.  
  1513. }    /* namespace Quickrpt */
  1514. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  1515. using namespace Quickrpt;
  1516. #endif
  1517. #pragma option pop    // -w-
  1518. #pragma option pop    // -Vx
  1519.  
  1520. #pragma delphiheader end.
  1521. //-- end unit ----------------------------------------------------------------
  1522. #endif    // QuickRpt
  1523.