// Borland C++ Builder
// Copyright (c) 1995, 2005 by Borland Software Corporation
// All rights reserved

// (DO NOT EDIT: machine generated header) 'Iwregion32.pas' rev: 10.00

#ifndef Iwregion32HPP
#define Iwregion32HPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member functions
#pragma pack(push,8)
#include <System.hpp>	// Pascal unit
#include <Sysinit.hpp>	// Pascal unit
#include <Iwvclbasecontrol.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <Iwvclcomponent.hpp>	// Pascal unit
#include <Iwvclclasses.hpp>	// Pascal unit
#include <Controls.hpp>	// Pascal unit
#include <Forms.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <Messages.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <Iwcontainer.hpp>	// Pascal unit
#include <Iwcontrol.hpp>	// Pascal unit
#include <Iwhtmltag.hpp>	// Pascal unit
#include <Iwcolor.hpp>	// Pascal unit
#include <Iwbaseinterfaces.hpp>	// Pascal unit
#include <Iwcontainer32layout.hpp>	// Pascal unit
#include <Iwrendercontext.hpp>	// Pascal unit
#include <Iwcontrol32.hpp>	// Pascal unit
#include <Iwbasecontrol.hpp>	// Pascal unit
#include <Iwgridcommon.hpp>	// Pascal unit
#include <Iwtypes.hpp>	// Pascal unit
#include <Iwhtml32interfaces.hpp>	// Pascal unit
#include <Iwfont.hpp>	// Pascal unit
#include <Iwapplication.hpp>	// Pascal unit
#include <Iwbasehtmlinterfaces.hpp>	// Pascal unit
#include <Iwhtmlcontainer.hpp>	// Pascal unit
#include <Iwbaserendercontext.hpp>	// Pascal unit
#include <Iwstreams.hpp>	// Pascal unit
#include <Iwvclbasecontainer.hpp>	// Pascal unit

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

namespace Iwregion32
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TIWCustomRegion32;
class PASCALIMPLEMENTATION TIWCustomRegion32 : public Iwhtmlcontainer::TIWHTMLContainer 
{
	typedef Iwhtmlcontainer::TIWHTMLContainer inherited;
	
private:
	Iwhtmltag::TIWHTMLTag* FTDTag;
	int FBorderWidth;
	Iwcontrol32::TIWHTML32ControlImplementation* FIWControl32Implementation;
	Iwbasecontrol::TIWBaseControlImplementation* FIWBaseControlImplementation;
	Classes::TNotifyEvent FOnCreate;
	HIDESBASE void __fastcall SetBorderWidth(const int Value);
	
protected:
	virtual void __fastcall SetName(const AnsiString AValue);
	virtual Iwbaserendercontext::TIWContainerContext* __fastcall InitContainerContext(Iwapplication::TIWApplication* AWebApplication);
	TMetaClass* __fastcall ComponentContextClass(void);
	virtual Iwbasecontrol::TIWPaintHandler* __fastcall InitPaintHandler(void);
	virtual void __fastcall AdjustClientRect(Types::TRect &Rect);
	void __fastcall DoCreate(void);
	virtual void __fastcall InitDesignTime(void);
	virtual void __fastcall InitControl(void);
	virtual void __fastcall Loaded(void);
	virtual void __fastcall RenderComponents(Iwbaserendercontext::TIWContainerContext* AContainerContext, Iwbaserendercontext::TIWBasePageContext* APageContext);
	bool __fastcall NeedsFormTag(void);
	virtual Iwhtmltag::TIWHTMLTag* __fastcall RenderHTML(Iwrendercontext::TIWBaseHTMLComponentContext* AContext);
	void __fastcall DoHTMLTag(Iwhtmltag::TIWHTMLTag* ATag);
	bool __fastcall SupportsSubmit(void);
	bool __fastcall SupportsInput(void);
	void __fastcall AddFreeNotifier(System::TObject* AObject);
	void __fastcall RemoveFreeNotifier(System::TObject* AObject);
	void __fastcall MakeHTMLTag(Iwhtmltag::TIWHTMLTag* ATag, Iwstreams::TIWRenderStream* ABuffer)/* overload */;
	AnsiString __fastcall MakeHTMLTag(Iwhtmltag::TIWHTMLTag* ATag)/* overload */;
	void __fastcall set_WebFont(Iwfont::TIWFont* AValue);
	Iwfont::TIWFont* __fastcall get_WebFont(void);
	virtual Graphics::TCanvas* __fastcall get_Canvas(void);
	HIDESBASE void __fastcall PaintTo(Graphics::TCanvas* ACanvas);
	Iwbaseinterfaces::_di_IIWBaseContainer __fastcall ParentContainer();
	int __fastcall get_HTMLWidth(void);
	int __fastcall get_HTMLHeight(void);
	AnsiString __fastcall get_ComponentName();
	virtual Controls::TTabOrder __fastcall getTabOrder(void);
	virtual void __fastcall setTabOrder(Controls::TTabOrder AValue);
	__property Iwcontrol32::TIWHTML32ControlImplementation* ControlImplementation = {read=FIWControl32Implementation};
	virtual void __fastcall Dispose(bool ADispose);
	
public:
	AnsiString __fastcall get_HTMLName();
	__property AnsiString HTMLName = {read=get_HTMLName};
	__property Iwbaserendercontext::TIWContainerContext* ContainerContext = {read=get_ContainerContext, write=set_ContainerContext};
	
__published:
	Classes::TStringList* __fastcall get_ExtraTagParams(void);
	void __fastcall set_ExtraTagParams(const Classes::TStringList* Value);
	Iwbasehtmlinterfaces::TIWOnHTMLTag __fastcall get_OnHTMLTag();
	void __fastcall set_OnHTMLTag(Iwbasehtmlinterfaces::TIWOnHTMLTag AValue);
	void __fastcall set_LayoutMgr(Iwcontainer32layout::TIWContainer32Layout* Value);
	Iwcontainer32layout::TIWContainer32Layout* __fastcall get_LayoutMgr(void);
	__property Iwcontainer32layout::TIWContainer32Layout* LayoutMgr = {read=get_LayoutMgr, write=set_LayoutMgr};
	__property Controls::TTabOrder TabOrder = {read=getTabOrder, write=setTabOrder, default=-1};
	__property int BorderWidth = {read=FBorderWidth, write=SetBorderWidth, nodefault};
	__property Classes::TStringList* ExtraTagParams = {read=get_ExtraTagParams, write=set_ExtraTagParams};
	__property Iwbasehtmlinterfaces::TIWOnHTMLTag OnHTMLTag = {read=get_OnHTMLTag, write=set_OnHTMLTag};
	__property Classes::TNotifyEvent OnCreate = {read=FOnCreate, write=FOnCreate};
	__property Visible  = {default=1};
public:
	#pragma option push -w-inl
	/* TIWBaseContainer.Create */ inline __fastcall virtual TIWCustomRegion32(Classes::TComponent* AOwner) : Iwhtmlcontainer::TIWHTMLContainer(AOwner) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TIWBaseContainer.Destroy */ inline __fastcall virtual ~TIWCustomRegion32(void) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TIWCustomRegion32(HWND ParentWindow) : Iwhtmlcontainer::TIWHTMLContainer(ParentWindow) { }
	#pragma option pop
	
private:
	void *__IIWHTML32Container;	/* Iwhtml32interfaces::IIWHTML32Container */
	void *__IIWBaseControl;	/* Iwbaseinterfaces::IIWBaseControl */
	void *__IIWHTML32Control;	/* Iwhtml32interfaces::IIWHTML32Control */
	void *__IIWHTML32Component;	/* Iwhtml32interfaces::IIWHTML32Component */
	void *__IIWTabOrder;	/* Iwbaseinterfaces::IIWTabOrder */
	
public:
	operator IIWTabOrder*(void) { return (IIWTabOrder*)&__IIWTabOrder; }
	operator IIWHTML32Component*(void) { return (IIWHTML32Component*)&__IIWHTML32Component; }
	operator IIWHTML32Control*(void) { return (IIWHTML32Control*)&__IIWHTML32Control; }
	operator IIWBaseHTMLControl*(void) { return (IIWBaseHTMLControl*)&__IIWHTML32Control; }
	operator IIWBaseHTMLComponent*(void) { return (IIWBaseHTMLComponent*)&__IIWHTML32Control; }
	operator IIWBaseComponent*(void) { return (IIWBaseComponent*)&__IIWHTML32Control; }
	operator IIWBaseControl*(void) { return (IIWBaseControl*)&__IIWBaseControl; }
	operator IIWHTML32Container*(void) { return (IIWHTML32Container*)&__IIWHTML32Container; }
	
};


class DELPHICLASS TIWRegion32;
class PASCALIMPLEMENTATION TIWRegion32 : public TIWCustomRegion32 
{
	typedef TIWCustomRegion32 inherited;
	
protected:
	virtual AnsiString __fastcall ContainerPrefix();
public:
	#pragma option push -w-inl
	/* TIWBaseContainer.Create */ inline __fastcall virtual TIWRegion32(Classes::TComponent* AOwner) : TIWCustomRegion32(AOwner) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TIWBaseContainer.Destroy */ inline __fastcall virtual ~TIWRegion32(void) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TWinControl.CreateParented */ inline __fastcall TIWRegion32(HWND ParentWindow) : TIWCustomRegion32(ParentWindow) { }
	#pragma option pop
	
};


//-- var, const, procedure ---------------------------------------------------

}	/* namespace Iwregion32 */
using namespace Iwregion32;
#pragma pack(pop)
#pragma option pop

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