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

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

#ifndef Fmx_TmssearcheditHPP
#define Fmx_TmssearcheditHPP

#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 <System.Classes.hpp>	// Pascal unit
#include <System.Types.hpp>	// Pascal unit
#include <System.SysUtils.hpp>	// Pascal unit
#include <FMX.Types.hpp>	// Pascal unit
#include <FMX.TMSBaseControl.hpp>	// Pascal unit
#include <FMX.Edit.hpp>	// Pascal unit
#include <FMX.Objects.hpp>	// Pascal unit
#include <FMX.Layouts.hpp>	// Pascal unit
#include <FMX.Controls.hpp>	// Pascal unit
#include <System.UIConsts.hpp>	// Pascal unit
#include <FMX.Styles.hpp>	// Pascal unit
#include <FMX.Graphics.hpp>	// Pascal unit

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

namespace Fmx
{
namespace Tmssearchedit
{
//-- type declarations -------------------------------------------------------
enum DECLSPEC_DENUM TTMSFMXSearchEditMode : unsigned char { emCaption, emDescription };

class DELPHICLASS TTMSFMXSearchEdit;
class PASCALIMPLEMENTATION TTMSFMXSearchEdit : public Fmx::Edit::TEdit
{
	typedef Fmx::Edit::TEdit inherited;
	
private:
	TTMSFMXSearchEditMode FMode;
	bool FShowFind;
	bool FShowClear;
	bool FBackGroundVisible;
	System::Classes::TNotifyEvent FOnClickClear;
	System::Classes::TNotifyEvent FOnClickFind;
	void __fastcall SetShowFind(const bool Value);
	void __fastcall SetShowClear(const bool Value);
	void __fastcall SetBackGroundVisible(const bool Value);
	System::UnicodeString __fastcall GetVersion(void);
	int __fastcall GetVersionNr(void);
	void __fastcall SetVersion(const System::UnicodeString Value);
	
protected:
	void __fastcall UpdateFind(void);
	void __fastcall UpdateBackGround(void);
	void __fastcall UpdateClear(void);
	virtual void __fastcall DoChangeTracking(void);
	virtual void __fastcall ApplyStyle(void);
	virtual System::UnicodeString __fastcall GetClassName(void);
	virtual System::UnicodeString __fastcall GetClassStyleName(void);
	virtual Fmx::Types::TFmxObject* __fastcall GetStyleObject(void)/* overload */;
	Fmx::Types::TFmxObject* __fastcall LoadFromResource(void);
	void __fastcall ClearButtonClicked(System::TObject* Sender);
	void __fastcall FindButtonClicked(System::TObject* Sender);
	virtual void __fastcall DoClickClear(void);
	virtual void __fastcall DoClickFind(void);
	
public:
	__property TTMSFMXSearchEditMode Mode = {read=FMode, write=FMode, nodefault};
	__fastcall virtual TTMSFMXSearchEdit(System::Classes::TComponent* AOwner);
	Fmx::Objects::TImage* __fastcall GetClearButton(void);
	Fmx::Objects::TImage* __fastcall GetFindButton(void);
	Fmx::Objects::TRoundRect* __fastcall GetBackGround(void);
	Fmx::Layouts::TLayout* __fastcall GetContent(void);
	
__published:
	__property bool BackGroundVisible = {read=FBackGroundVisible, write=SetBackGroundVisible, default=1};
	__property bool ShowFind = {read=FShowFind, write=SetShowFind, default=1};
	__property bool ShowClear = {read=FShowClear, write=SetShowClear, default=1};
	__property System::UnicodeString Version = {read=GetVersion, write=SetVersion};
	__property System::Classes::TNotifyEvent OnClickClear = {read=FOnClickClear, write=FOnClickClear};
	__property System::Classes::TNotifyEvent OnClickFind = {read=FOnClickFind, write=FOnClickFind};
public:
	/* TCustomEdit.Destroy */ inline __fastcall virtual ~TTMSFMXSearchEdit(void) { }
	
	/* Hoisted overloads: */
	
protected:
	inline Fmx::Types::TFmxObject* __fastcall  GetStyleObject(const bool Clone){ return Fmx::Controls::TStyledControl::GetStyleObject(Clone); }
	
};


//-- var, const, procedure ---------------------------------------------------
static const System::Int8 MAJ_VER = System::Int8(0x1);
static const System::Int8 MIN_VER = System::Int8(0x5);
static const System::Int8 REL_VER = System::Int8(0x0);
static const System::Int8 BLD_VER = System::Int8(0x0);
}	/* namespace Tmssearchedit */
}	/* namespace Fmx */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_FMX_TMSSEARCHEDIT)
using namespace Fmx::Tmssearchedit;
#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_TmssearcheditHPP
