// Borland C++ Builder
// Copyright (c) 1995, 1999 by Borland International
// All rights reserved

// (DO NOT EDIT: machine generated header) 'PSToolbar.pas' rev: 5.00

#ifndef PSToolbarHPP
#define PSToolbarHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <PSCommon.hpp>	// Pascal unit
#include <PSCombo.hpp>	// Pascal unit
#include <PSPreview.hpp>	// Pascal unit
#include <StdCtrls.hpp>	// Pascal unit
#include <Buttons.hpp>	// Pascal unit
#include <ExtCtrls.hpp>	// Pascal unit
#include <Dialogs.hpp>	// Pascal unit
#include <Forms.hpp>	// Pascal unit
#include <Controls.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <SysUtils.hpp>	// Pascal unit
#include <Messages.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.hpp>	// Pascal unit

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

namespace Pstoolbar
{
//-- type declarations -------------------------------------------------------
#pragma option push -b-
enum TButtonKind { btnPrint, btnPrintDialog, btnPrinterSetupDialog, btnFirstPage, btnPrevPage, btnNextPage, 
	btnLastPage, btnWholePage, btnPageWidth, btnZoomOut, btnZoomIn, btnRefresh, btnClose, btnUser };
#pragma option pop

typedef Set<TButtonKind, btnPrint, btnUser>  TButtons;

class DELPHICLASS TCustomPreviewToolbar;
class PASCALIMPLEMENTATION TCustomPreviewToolbar : public Extctrls::TCustomPanel 
{
	typedef Extctrls::TCustomPanel inherited;
	
private:
	Pspreview::TCustomPreview* FPreview;
	Graphics::TBitmap* FBitmaps;
	Buttons::TSpeedButton* FButtonsArray[14];
	TButtons FButtons;
	bool FFlat;
	Pscombo::TPreviewComboBox* FScaleCombo;
	bool FScaleBox;
	TButtonKind FScaleBoxPos;
	bool FUserButtonEnabled;
	Graphics::TBitmap* FUserButtonGlyph;
	AnsiString FUserButtonHint;
	Classes::TNotifyEvent FOnUpdate;
	Classes::TNotifyEvent FOnUserButtonClick;
	void __fastcall SetPreview(const Pspreview::TCustomPreview* Value);
	void __fastcall SetButtons(const TButtons Value);
	void __fastcall SetFlat(const bool Value);
	void __fastcall SetScaleBox(const bool Value);
	void __fastcall SetScaleBoxPos(const TButtonKind Value);
	void __fastcall SetUserButtonEnabled(const bool Value);
	void __fastcall SetUserButtonGlyph(const Graphics::TBitmap* Value);
	void __fastcall SetUserButtonHint(const AnsiString Value);
	void __fastcall GetBitmapPart(Graphics::TBitmap* Bitmap, int Index);
	int __fastcall GetButtonLeft(TButtonKind Button);
	void __fastcall OnButtonClick(System::TObject* Sender);
	
protected:
	virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
		);
	__property Pspreview::TCustomPreview* Preview = {read=FPreview, write=SetPreview};
	__property TButtons Buttons = {read=FButtons, write=SetButtons, nodefault};
	__property bool Flat = {read=FFlat, write=SetFlat, nodefault};
	__property bool ScaleBox = {read=FScaleBox, write=SetScaleBox, nodefault};
	__property TButtonKind ScaleBoxPos = {read=FScaleBoxPos, write=SetScaleBoxPos, nodefault};
	__property bool UserButtonEnabled = {read=FUserButtonEnabled, write=SetUserButtonEnabled, nodefault
		};
	__property Graphics::TBitmap* UserButtonGlyph = {read=FUserButtonGlyph, write=SetUserButtonGlyph};
	__property AnsiString UserButtonHint = {read=FUserButtonHint, write=SetUserButtonHint};
	__property Classes::TNotifyEvent OnUpdate = {read=FOnUpdate, write=FOnUpdate};
	__property Classes::TNotifyEvent OnUserButtonClick = {read=FOnUserButtonClick, write=FOnUserButtonClick
		};
	__property Align ;
	__property ParentShowHint ;
	__property ShowHint ;
	__property Visible ;
	
public:
	__fastcall virtual TCustomPreviewToolbar(Classes::TComponent* AOwner);
	__fastcall virtual ~TCustomPreviewToolbar(void);
	virtual void __fastcall Update(void);
	void __fastcall UpdateButtons(void);
	void __fastcall EnableButtons(void);
	virtual void __fastcall ButtonClick(TButtonKind Button);
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TCustomPreviewToolbar(HWND ParentWindow) : Extctrls::TCustomPanel(
		ParentWindow) { }
	#pragma option pop
	
};


class DELPHICLASS TPreviewToolbar;
class PASCALIMPLEMENTATION TPreviewToolbar : public TCustomPreviewToolbar 
{
	typedef TCustomPreviewToolbar inherited;
	
__published:
	__property Preview ;
	__property Buttons ;
	__property Flat ;
	__property ScaleBox ;
	__property ScaleBoxPos ;
	__property UserButtonEnabled ;
	__property UserButtonGlyph ;
	__property UserButtonHint ;
	__property OnUpdate ;
	__property OnUserButtonClick ;
	__property Align ;
	__property ParentShowHint ;
	__property ShowHint ;
	__property Visible ;
public:
	#pragma option push -w-inl
	/* TCustomPreviewToolbar.Create */ inline __fastcall virtual TPreviewToolbar(Classes::TComponent* AOwner
		) : TCustomPreviewToolbar(AOwner) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TCustomPreviewToolbar.Destroy */ inline __fastcall virtual ~TPreviewToolbar(void) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TPreviewToolbar(HWND ParentWindow) : TCustomPreviewToolbar(
		ParentWindow) { }
	#pragma option pop
	
};


//-- var, const, procedure ---------------------------------------------------
extern PACKAGE void __fastcall Register(void);

}	/* namespace Pstoolbar */
#if !defined(NO_IMPLICIT_NAMESPACE_USE)
using namespace Pstoolbar;
#endif
#pragma option pop	// -w-
#pragma option pop	// -Vx

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