// CodeGear C++Builder
// Copyright (c) 1995, 2025 by Embarcadero Technologies, Inc.
// All rights reserved

// (DO NOT EDIT: machine generated header) 'SMRPreview.pas' rev: 37.00 (Windows)

#ifndef SMRPreviewHPP
#define SMRPreviewHPP

#pragma delphiheader begin
#pragma option push
#if defined(__BORLANDC__) && !defined(__clang__)
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member 
#endif
#pragma pack(push,8)
#include <System.hpp>
#include <SysInit.hpp>
#include <Winapi.Windows.hpp>
#include <Winapi.Messages.hpp>
#include <System.SysUtils.hpp>
#include <System.Classes.hpp>
#include <Vcl.Graphics.hpp>
#include <Vcl.Controls.hpp>
#include <Vcl.Forms.hpp>
#include <PrintSM.hpp>
#include <Vcl.Buttons.hpp>
#include <Vcl.StdCtrls.hpp>
#include <Vcl.ExtCtrls.hpp>
#include <SMRView.hpp>
#include <Vcl.Tabs.hpp>
#include <System.Types.hpp>
#include <System.UITypes.hpp>

//-- user supplied -----------------------------------------------------------

namespace Smrpreview
{
//-- forward type declarations -----------------------------------------------
class DELPHICLASS TfrmSMPreview;
//-- type declarations -------------------------------------------------------
class PASCALIMPLEMENTATION TfrmSMPreview : public Vcl::Forms::TForm
{
	typedef Vcl::Forms::TForm inherited;
	
__published:
	Vcl::Extctrls::TPanel* pnlStatus;
	Vcl::Buttons::TSpeedButton* btnFirstPage;
	Vcl::Buttons::TSpeedButton* btnPrevPage;
	Vcl::Buttons::TSpeedButton* btnLastPage;
	Vcl::Buttons::TSpeedButton* btnNextPage;
	Vcl::Stdctrls::TLabel* lblPages;
	Vcl::Extctrls::TPanel* pnlButton;
	Vcl::Buttons::TSpeedButton* btnPrint;
	Vcl::Buttons::TSpeedButton* btnSaveToFile;
	Vcl::Buttons::TSpeedButton* btnOnePage;
	Vcl::Buttons::TSpeedButton* btnManyPages;
	Vcl::Stdctrls::TComboBox* cbScale;
	Vcl::Buttons::TSpeedButton* btnZoomIn;
	Vcl::Buttons::TSpeedButton* btnZoomOut;
	Vcl::Buttons::TSpeedButton* btnRuler;
	Vcl::Buttons::TSpeedButton* btnGrid;
	Vcl::Buttons::TSpeedButton* btnClose;
	Vcl::Buttons::TSpeedButton* btnHelp;
	Vcl::Stdctrls::TEdit* edNumPage;
	Vcl::Stdctrls::TLabel* lblNumPages;
	Vcl::Buttons::TSpeedButton* btnAbout;
	Smrview::TSMRPreview* SMRPreview;
	Vcl::Buttons::TSpeedButton* btnLens;
	Vcl::Buttons::TSpeedButton* btnZoomTo100;
	Vcl::Buttons::TSpeedButton* btnZoomToWidth;
	Vcl::Buttons::TSpeedButton* btnOpenFromFile;
	Vcl::Buttons::TSpeedButton* btnPrinterSetup;
	Vcl::Tabs::TTabSet* tsSheets;
	Vcl::Buttons::TSpeedButton* btnFindText;
	Vcl::Buttons::TSpeedButton* btnThumbnails;
	Vcl::Buttons::TSpeedButton* btnOutlines;
	void __fastcall FormCreate(System::TObject* Sender);
	void __fastcall btnCloseClick(System::TObject* Sender);
	void __fastcall sbPreviewResize(System::TObject* Sender);
	void __fastcall btnZoomInClick(System::TObject* Sender);
	void __fastcall btnGridClick(System::TObject* Sender);
	void __fastcall SetNumPage(System::TObject* Sender);
	void __fastcall btnSaveToFileClick(System::TObject* Sender);
	void __fastcall btnPrintClick(System::TObject* Sender);
	void __fastcall FormKeyDown(System::TObject* Sender, System::Word &Key, System::Classes::TShiftState Shift);
	void __fastcall edNumPageExit(System::TObject* Sender);
	void __fastcall btnAboutClick(System::TObject* Sender);
	void __fastcall FormActivate(System::TObject* Sender);
	void __fastcall SMRPreviewZoomChangeEvent(System::TObject* Sender);
	void __fastcall SMRPreviewBarNumberChangeEvent(System::TObject* Sender);
	void __fastcall SMRPreviewPageNumberChangeEvent(System::TObject* Sender);
	void __fastcall edNumPageKeyDown(System::TObject* Sender, System::Word &Key, System::Classes::TShiftState Shift);
	void __fastcall btnRulerClick(System::TObject* Sender);
	void __fastcall btnLensClick(System::TObject* Sender);
	void __fastcall FormDestroy(System::TObject* Sender);
	void __fastcall SMRPreviewMouseMove(System::TObject* Sender, System::Classes::TShiftState Shift, int X, int Y);
	void __fastcall btnOnePageClick(System::TObject* Sender);
	void __fastcall btnZoomTo100Click(System::TObject* Sender);
	void __fastcall btnZoomToWidthClick(System::TObject* Sender);
	void __fastcall btnOpenFromFileClick(System::TObject* Sender);
	void __fastcall btnPrinterSetupClick(System::TObject* Sender);
	void __fastcall btnHelpClick(System::TObject* Sender);
	void __fastcall FormClose(System::TObject* Sender, System::Uitypes::TCloseAction &Action);
	void __fastcall tsSheetsChange(System::TObject* Sender, int NewTab, bool &AllowChange);
	void __fastcall btnFindTextClick(System::TObject* Sender);
	void __fastcall btnThumbnailsClick(System::TObject* Sender);
	void __fastcall btnOutlinesClick(System::TObject* Sender);
	
private:
	int CoefScale;
	Vcl::Forms::TForm* frmLens;
	Vcl::Graphics::TBitmap* tmpBitmap;
	System::UnicodeString strLatestFileName;
	bool FIsEmbeddedForm;
	Vcl::Controls::TWinControl* __fastcall GetParent();
	void __fastcall LensResize(System::TObject* Sender);
	void __fastcall LensShow(System::TObject* Sender);
	void __fastcall LensHide(System::TObject* Sender);
	void __fastcall pbLensPaint(System::TObject* Sender);
	void __fastcall LensTracking(System::TObject* Sender);
	HIDESBASE MESSAGE void __fastcall WMMOUSEWHEEL(Winapi::Messages::TWMMouseWheel &Message);
	Printsm::TSMPrintBaseComponent* __fastcall GetReport();
	void __fastcall SetReport(Printsm::TSMPrintBaseComponent* Value);
	
protected:
	virtual void __fastcall CreateParams(Vcl::Controls::TCreateParams &Params);
	virtual void __fastcall SetParent(Vcl::Controls::TWinControl* Value);
	virtual void __fastcall FillStringsFromRes();
	
public:
	__fastcall virtual TfrmSMPreview(System::Classes::TComponent* AOwner, Vcl::Controls::TWinControl* AParent);
	__property Printsm::TSMPrintBaseComponent* Report = {read=GetReport, write=SetReport};
	__property Vcl::Controls::TWinControl* Parent = {read=GetParent, write=SetParent};
public:
	/* TCustomForm.Create */ inline __fastcall virtual TfrmSMPreview(System::Classes::TComponent* AOwner) : Vcl::Forms::TForm(AOwner) { }
	/* TCustomForm.CreateNew */ inline __fastcall virtual TfrmSMPreview(System::Classes::TComponent* AOwner, int Dummy) : Vcl::Forms::TForm(AOwner, Dummy) { }
	/* TCustomForm.CreateScaledNew */ inline __fastcall virtual TfrmSMPreview(System::Classes::TComponent* AOwner, int ADPI, int Dummy) : Vcl::Forms::TForm(AOwner, ADPI, Dummy) { }
	/* TCustomForm.Destroy */ inline __fastcall virtual ~TfrmSMPreview() { }
	
};


//-- var, const, procedure ---------------------------------------------------
}	/* namespace Smrpreview */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_SMRPREVIEW)
using namespace Smrpreview;
#endif
#pragma pack(pop)
#pragma option pop

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// SMRPreviewHPP
