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

// (DO NOT EDIT: machine generated header) 'FMX.TMSTileListBinding.pas' rev: 26.00 (Windows)

#ifndef Fmx_TmstilelistbindingHPP
#define Fmx_TmstilelistbindingHPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member 
#pragma pack(push,8)
#include <System.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <FMX.TMSTileList.hpp>	// Pascal unit
#include <System.Classes.hpp>	// Pascal unit
#include <Fmx.Bind.DBLinks.hpp>	// Pascal unit
#include <System.Math.hpp>	// Pascal unit
#include <System.Bindings.EvalProtocol.hpp>	// Pascal unit
#include <Data.Bind.Components.hpp>	// Pascal unit
#include <Data.Bind.Editors.hpp>	// Pascal unit
#include <System.Bindings.ObjEval.hpp>	// Pascal unit
#include <FMX.Dialogs.hpp>	// Pascal unit
#include <System.SysUtils.hpp>	// Pascal unit
#include <FMX.Types.hpp>	// Pascal unit
#include <FMX.Graphics.hpp>	// Pascal unit
#include <FMX.TMSBaseControl.hpp>	// Pascal unit
#include <FMX.Controls.hpp>	// Pascal unit

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

namespace Fmx
{
namespace Tmstilelistbinding
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TTMSFMXTileListBindClass;
class PASCALIMPLEMENTATION TTMSFMXTileListBindClass : public Fmx::Tmstilelist::TTMSFMXTileList
{
	typedef Fmx::Tmstilelist::TTMSFMXTileList inherited;
	
public:
	/* TTMSFMXTileList.Create */ inline __fastcall virtual TTMSFMXTileListBindClass(System::Classes::TComponent* AOwner) : Fmx::Tmstilelist::TTMSFMXTileList(AOwner) { }
	/* TTMSFMXTileList.Destroy */ inline __fastcall virtual ~TTMSFMXTileListBindClass(void) { }
	
};


class DELPHICLASS TTMSFMXBindDBTileListLink;
class PASCALIMPLEMENTATION TTMSFMXBindDBTileListLink : public Data::Bind::Components::TBindGridLink
{
	typedef Data::Bind::Components::TBindGridLink inherited;
	
public:
	__fastcall virtual TTMSFMXBindDBTileListLink(System::Classes::TComponent* AOwner);
public:
	/* TCustomBindGridLink.Destroy */ inline __fastcall virtual ~TTMSFMXBindDBTileListLink(void) { }
	
};


class DELPHICLASS TTMSFMXTileListItemEditorObject;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXTileListItemEditorObject : public System::TObject
{
	typedef System::TObject inherited;
	
private:
	int FIndex;
	Fmx::Tmstilelist::TTMSFMXTileList* FTileList;
	Fmx::Graphics::TBitmap* __fastcall GetBitmap(void);
	System::UnicodeString __fastcall GetDetailNotes(void);
	void __fastcall SetBitmap(Fmx::Graphics::TBitmap* const Value);
	void __fastcall SetCaption(const System::UnicodeString Value);
	void __fastcall SetDetailNotes(const System::UnicodeString Value);
	System::UnicodeString __fastcall GetCaption(void);
	System::UnicodeString __fastcall GetNotes(void);
	void __fastcall SetNotes(const System::UnicodeString Value);
	
public:
	__property System::UnicodeString Caption = {read=GetCaption, write=SetCaption};
	__property System::UnicodeString Notes = {read=GetNotes, write=SetNotes};
	__property System::UnicodeString DetailNotes = {read=GetDetailNotes, write=SetDetailNotes};
	__property Fmx::Graphics::TBitmap* Bitmap = {read=GetBitmap, write=SetBitmap};
public:
	/* TObject.Create */ inline __fastcall TTMSFMXTileListItemEditorObject(void) : System::TObject() { }
	/* TObject.Destroy */ inline __fastcall virtual ~TTMSFMXTileListItemEditorObject(void) { }
	
};

#pragma pack(pop)

class DELPHICLASS TTMSFMXBindTileListEditor;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXBindTileListEditor : public Data::Bind::Editors::TBindListEditor
{
	typedef Data::Bind::Editors::TBindListEditor inherited;
	
private:
	TTMSFMXTileListItemEditorObject* FEditorObject;
	int __fastcall GetIndex(void);
	void __fastcall SetIndex(const int Value);
	
protected:
	__property int AIndex = {read=GetIndex, write=SetIndex, nodefault};
	TTMSFMXTileListBindClass* __fastcall TileList(void);
	
public:
	__fastcall TTMSFMXBindTileListEditor(Fmx::Tmstilelist::TTMSFMXTileList* ATileList);
	__fastcall virtual ~TTMSFMXBindTileListEditor(void);
	virtual void __fastcall BeginUpdate(void);
	virtual void __fastcall EndUpdate(void);
	virtual void __fastcall DeleteToEnd(void);
	virtual System::Bindings::Evalprotocol::_di_IScope __fastcall AddItem(bool Select);
	virtual System::Bindings::Evalprotocol::_di_IScope __fastcall InsertItem(bool Select);
	virtual bool __fastcall CanInsertItem(void);
	virtual bool __fastcall MoveNext(void);
	virtual int __fastcall GetRowCount(void);
	virtual System::Bindings::Evalprotocol::_di_IScope __fastcall CurrentItem(void);
	virtual void __fastcall ClearList(void);
	virtual System::UnicodeString __fastcall GetSelectedText(void);
	virtual void __fastcall SetSelectedText(const System::UnicodeString AValue);
	virtual System::TObject* __fastcall GetSelectedItem(void);
};

#pragma pack(pop)

class DELPHICLASS TTMSFMXBindTileListEditorFactory;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXBindTileListEditorFactory : public Data::Bind::Components::TBindEditorFactory
{
	typedef Data::Bind::Components::TBindEditorFactory inherited;
	
public:
	__fastcall virtual TTMSFMXBindTileListEditorFactory(void);
	virtual bool __fastcall Supports(const GUID &AIntf, System::TObject* AObject);
	virtual System::_di_IInterface __fastcall CreateEditor(const GUID &AIntf, System::TObject* AObject);
public:
	/* TObject.Destroy */ inline __fastcall virtual ~TTMSFMXBindTileListEditorFactory(void) { }
	
};

#pragma pack(pop)

//-- var, const, procedure ---------------------------------------------------
}	/* namespace Tmstilelistbinding */
}	/* namespace Fmx */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_FMX_TMSTILELISTBINDING)
using namespace Fmx::Tmstilelistbinding;
#endif
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_FMX)
using namespace Fmx;
#endif
#pragma pack(pop)
#pragma option pop

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