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

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

#ifndef Fmx_TmsreplacedialogHPP
#define Fmx_TmsreplacedialogHPP

#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 <FMX.Forms.hpp>	// Pascal unit
#include <FMX.Memo.hpp>	// Pascal unit
#include <FMX.Menus.hpp>	// Pascal unit
#include <FMX.Edit.hpp>	// Pascal unit
#include <FMX.Controls.hpp>	// Pascal unit
#include <FMX.Types.hpp>	// Pascal unit
#include <FMX.Layouts.hpp>	// Pascal unit
#include <FMX.ListBox.hpp>	// Pascal unit
#include <System.UITypes.hpp>	// Pascal unit
#include <FMX.TMSBaseControl.hpp>	// Pascal unit
#include <FMX.StdCtrls.hpp>	// Pascal unit

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

namespace Fmx
{
namespace Tmsreplacedialog
{
//-- type declarations -------------------------------------------------------
enum DECLSPEC_DENUM TTMSFMXReplaceDialogOption : unsigned char { fdoCurrentFile, fdoSelection, fdoAllOpenFiles, fdoCaseSensitive, fdoExpression, fdoWholeWordOnly, fdoWrapAtEndOfFile, fdoMoreEnabled, fdoFindEnabled, fdoReplaceAllEnabled, fdoReplaceEnabled, fdoCloseEnabled, fdoFindList, fdoMoreExpanded, fdoReplaceList, fdoDown };

enum DECLSPEC_DENUM TAdvFindDialogVisibleOption : unsigned char { fdovCaseSensitive, fdovExpression, fdovWholeWordOnly, fdovWrapAtEndOfFile, fdovMore, fdovReplace, fdovReplaceAll, fdovFind, fdovClose, fdovFindCombo, fdovFindMemo, fdovReplaceCombo, fdovReplaceMemo, fdovReplaceAllRange, fdovCurrentFile, fdovSelection, fdovAllOpenFiles, fdovDirection };

typedef System::Set<TTMSFMXReplaceDialogOption, TTMSFMXReplaceDialogOption::fdoCurrentFile, TTMSFMXReplaceDialogOption::fdoDown> TTMSFMXReplaceDialogOptions;

typedef System::Set<TAdvFindDialogVisibleOption, TAdvFindDialogVisibleOption::fdovCaseSensitive, TAdvFindDialogVisibleOption::fdovDirection> TTMSFMXReplaceDialogVisibleOptions;

typedef void __fastcall (__closure *TEditChangeEvent)(System::TObject* Sender, System::UnicodeString &AText);

class DELPHICLASS TTMSFMXReplaceDialogForm;
class DELPHICLASS TTMSFMXReplaceDialog;
class PASCALIMPLEMENTATION TTMSFMXReplaceDialogForm : public Fmx::Forms::TForm
{
	typedef Fmx::Forms::TForm inherited;
	
__published:
	Fmx::Stdctrls::TGroupBox* RangeGroup;
	Fmx::Stdctrls::TGroupBox* DirGroup;
	Fmx::Stdctrls::TLabel* Label1;
	Fmx::Edit::TComboEdit* ComboBox1;
	Fmx::Stdctrls::TSpeedButton* SpeedButton1;
	Fmx::Menus::TPopupMenu* PopupMenu1;
	Fmx::Menus::TMenuItem* abCharacter1;
	Fmx::Menus::TMenuItem* NewLine1;
	Fmx::Menus::TMenuItem* AnyCharacter1;
	Fmx::Menus::TMenuItem* CharacterinRange1;
	Fmx::Menus::TMenuItem* CharacternotinRange1;
	Fmx::Menus::TMenuItem* BeginningofLine1;
	Fmx::Menus::TMenuItem* EndofLine1;
	Fmx::Menus::TMenuItem* aggedExpression1;
	Fmx::Menus::TMenuItem* Or1;
	Fmx::Menus::TMenuItem* N0or1matches1;
	Fmx::Menus::TMenuItem* N1orMoreMatches1;
	Fmx::Menus::TMenuItem* N0or1Matches2;
	Fmx::Menus::TMenuItem* N1;
	Fmx::Stdctrls::TButton* FindBtn;
	Fmx::Stdctrls::TButton* ReplaceBtn;
	Fmx::Stdctrls::TButton* ReplaceAllBtn;
	Fmx::Stdctrls::TButton* CloseBtn;
	Fmx::Stdctrls::TButton* MoreBtn;
	Fmx::Stdctrls::TCheckBox* CheckBox1;
	Fmx::Stdctrls::TCheckBox* CheckBox2;
	Fmx::Stdctrls::TCheckBox* CheckBox4;
	Fmx::Stdctrls::TCheckBox* CheckBox5;
	Fmx::Stdctrls::TLabel* Label2;
	Fmx::Stdctrls::TLabel* Label3;
	Fmx::Memo::TMemo* Memo1;
	Fmx::Memo::TMemo* Memo2;
	Fmx::Edit::TComboEdit* ComboBox2;
	Fmx::Stdctrls::TLabel* Label4;
	Fmx::Stdctrls::TRadioButton* RadioButton2;
	Fmx::Stdctrls::TRadioButton* RadioButton3;
	Fmx::Stdctrls::TRadioButton* CurrentFile;
	Fmx::Stdctrls::TRadioButton* AllOpen;
	Fmx::Stdctrls::TRadioButton* Selection;
	void __fastcall abCharacter1Click(System::TObject* Sender);
	void __fastcall NewLine1Click(System::TObject* Sender);
	void __fastcall AnyCharacter1Click(System::TObject* Sender);
	void __fastcall CharacterinRange1Click(System::TObject* Sender);
	void __fastcall CharacternotinRange1Click(System::TObject* Sender);
	void __fastcall BeginningofLine1Click(System::TObject* Sender);
	void __fastcall EndofLine1Click(System::TObject* Sender);
	void __fastcall aggedExpression1Click(System::TObject* Sender);
	void __fastcall Or1Click(System::TObject* Sender);
	void __fastcall N0or1matches1Click(System::TObject* Sender);
	void __fastcall N1orMoreMatches1Click(System::TObject* Sender);
	void __fastcall N0or1Matches2Click(System::TObject* Sender);
	void __fastcall CloseBtnClick(System::TObject* Sender);
	void __fastcall FindBtnClick(System::TObject* Sender);
	void __fastcall ReplaceBtnClick(System::TObject* Sender);
	void __fastcall ReplaceAllBtnClick(System::TObject* Sender);
	void __fastcall MoreBtnClick(System::TObject* Sender);
	void __fastcall FormClose(System::TObject* Sender, System::Uitypes::TCloseAction &Action);
	void __fastcall CheckBox1Click(System::TObject* Sender);
	void __fastcall CheckBox2Click(System::TObject* Sender);
	void __fastcall CheckBox4Click(System::TObject* Sender);
	void __fastcall CheckBox5Click(System::TObject* Sender);
	void __fastcall FormCreate(System::TObject* Sender);
	void __fastcall RangeGroupClick(System::TObject* Sender);
	void __fastcall ComboBox1Change(System::TObject* Sender);
	void __fastcall ComboBox2Change(System::TObject* Sender);
	void __fastcall Memo1Change(System::TObject* Sender);
	void __fastcall DirGroupClick(System::TObject* Sender);
	
private:
	System::Classes::TNotifyEvent FOnReplace;
	System::Classes::TNotifyEvent FOnFind;
	System::Classes::TNotifyEvent FOnReplaceAll;
	System::Classes::TNotifyEvent FOnClose;
	TTMSFMXReplaceDialog* FDialog;
	TEditChangeEvent FOnFindEditChange;
	TEditChangeEvent FOnReplaceEditChange;
	System::UnicodeString __fastcall GetReplaceText(void);
	void __fastcall SetReplaceText(const System::UnicodeString Value);
	System::UnicodeString __fastcall GetFindText(void);
	void __fastcall SetFindText(const System::UnicodeString Value);
	
protected:
	virtual void __fastcall DoFindEditChange(System::UnicodeString &AText);
	virtual void __fastcall DoReplaceEditChange(System::UnicodeString &AText);
	virtual void __fastcall EnableButtons(void);
	
public:
	__property TTMSFMXReplaceDialog* Dialog = {read=FDialog, write=FDialog};
	__property System::Classes::TNotifyEvent OnReplace = {read=FOnReplace, write=FOnReplace};
	__property System::Classes::TNotifyEvent OnClose = {read=FOnClose, write=FOnClose};
	__property System::Classes::TNotifyEvent OnReplaceAll = {read=FOnReplaceAll, write=FOnReplaceAll};
	__property System::Classes::TNotifyEvent OnFind = {read=FOnFind, write=FOnFind};
	__property TEditChangeEvent OnFindEditChange = {read=FOnFindEditChange, write=FOnFindEditChange};
	__property TEditChangeEvent OnReplaceEditChange = {read=FOnReplaceEditChange, write=FOnReplaceEditChange};
	__property System::UnicodeString ReplaceText = {read=GetReplaceText, write=SetReplaceText};
	__property System::UnicodeString FindText = {read=GetFindText, write=SetFindText};
public:
	/* TCustomForm.Create */ inline __fastcall virtual TTMSFMXReplaceDialogForm(System::Classes::TComponent* AOwner) : Fmx::Forms::TForm(AOwner) { }
	/* TCustomForm.CreateNew */ inline __fastcall virtual TTMSFMXReplaceDialogForm(System::Classes::TComponent* AOwner, NativeInt Dummy) : Fmx::Forms::TForm(AOwner, Dummy) { }
	/* TCustomForm.Destroy */ inline __fastcall virtual ~TTMSFMXReplaceDialogForm(void) { }
	
};


class DELPHICLASS TReplaceUILanguage;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TReplaceUILanguage : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	System::UnicodeString FFindWhat;
	System::UnicodeString FCaseSensitive;
	System::UnicodeString FWrapAtEndOfFile;
	System::UnicodeString FExpression;
	System::UnicodeString FMore;
	System::UnicodeString FWholeWordOnly;
	System::UnicodeString FClose;
	System::UnicodeString FFind;
	System::UnicodeString FCurrentFile;
	System::UnicodeString FReplace;
	System::UnicodeString FSelection;
	System::UnicodeString FReplaceAll;
	System::UnicodeString FAllOpenFiles;
	System::UnicodeString FReplaceWith;
	System::UnicodeString FLess;
	System::UnicodeString FReplaceAllRange;
	System::UnicodeString FDirection;
	System::UnicodeString FDown;
	System::UnicodeString FUp;
	System::UnicodeString FReplaceCaption;
	
public:
	__fastcall TReplaceUILanguage(System::Classes::TComponent* AOwner);
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	void __fastcall Init(void);
	
__published:
	__property System::UnicodeString ReplaceCaption = {read=FReplaceCaption, write=FReplaceCaption};
	__property System::UnicodeString FindWhat = {read=FFindWhat, write=FFindWhat};
	__property System::UnicodeString ReplaceWith = {read=FReplaceWith, write=FReplaceWith};
	__property System::UnicodeString CaseSensitive = {read=FCaseSensitive, write=FCaseSensitive};
	__property System::UnicodeString Expression = {read=FExpression, write=FExpression};
	__property System::UnicodeString WholeWordOnly = {read=FWholeWordOnly, write=FWholeWordOnly};
	__property System::UnicodeString WrapAtEndOfFile = {read=FWrapAtEndOfFile, write=FWrapAtEndOfFile};
	__property System::UnicodeString Find = {read=FFind, write=FFind};
	__property System::UnicodeString Replace = {read=FReplace, write=FReplace};
	__property System::UnicodeString ReplaceAll = {read=FReplaceAll, write=FReplaceAll};
	__property System::UnicodeString ReplaceAllRange = {read=FReplaceAllRange, write=FReplaceAllRange};
	__property System::UnicodeString Close = {read=FClose, write=FClose};
	__property System::UnicodeString More = {read=FMore, write=FMore};
	__property System::UnicodeString Less = {read=FLess, write=FLess};
	__property System::UnicodeString CurrentFile = {read=FCurrentFile, write=FCurrentFile};
	__property System::UnicodeString Selection = {read=FSelection, write=FSelection};
	__property System::UnicodeString AllOpenFiles = {read=FAllOpenFiles, write=FAllOpenFiles};
	__property System::UnicodeString Direction = {read=FDirection, write=FDirection};
	__property System::UnicodeString Up = {read=FUp, write=FUp};
	__property System::UnicodeString Down = {read=FDown, write=FDown};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TReplaceUILanguage(void) { }
	
};

#pragma pack(pop)

class PASCALIMPLEMENTATION TTMSFMXReplaceDialog : public System::Classes::TComponent
{
	typedef System::Classes::TComponent inherited;
	
private:
	System::UnicodeString FReplaceText;
	System::Classes::TNotifyEvent FOnReplace;
	System::Classes::TNotifyEvent FOnReplacePrevious;
	System::Classes::TNotifyEvent FOnClose;
	TTMSFMXReplaceDialogOptions FOptions;
	System::Classes::TStringList* FReplaceList;
	System::Classes::TNotifyEvent FOnFind;
	System::UnicodeString FFindText;
	System::Classes::TStringList* FFindList;
	TReplaceUILanguage* FUILanguage;
	TTMSFMXReplaceDialogVisibleOptions FVisibleOptions;
	TEditChangeEvent FOnFindEditChange;
	TEditChangeEvent FOnReplaceEditChange;
	bool FAutoHistory;
	TTMSFMXReplaceDialogForm* Frm;
	void __fastcall SetUILanguage(TReplaceUILanguage* const Value);
	void __fastcall SetOptions(const TTMSFMXReplaceDialogOptions Value);
	
protected:
	void __fastcall DoClose(System::TObject* Sender);
	void __fastcall DoReplace(System::TObject* Sender);
	void __fastcall DoReplaceAll(System::TObject* Sender);
	void __fastcall DoFind(System::TObject* Sender);
	void __fastcall DoFindEditChange(System::TObject* Sender, System::UnicodeString &AText);
	void __fastcall DoReplaceEditChange(System::TObject* Sender, System::UnicodeString &AText);
	virtual TTMSFMXReplaceDialogForm* __fastcall CreateDialogForm(System::Classes::TComponent* AOwner);
	virtual Fmx::Forms::TCustomForm* __fastcall InitDialog(void);
	
public:
	virtual void __fastcall Execute(void);
	__fastcall virtual TTMSFMXReplaceDialog(System::Classes::TComponent* AOwner);
	__fastcall virtual ~TTMSFMXReplaceDialog(void);
	__property TTMSFMXReplaceDialogForm* Form = {read=Frm};
	void __fastcall Close(void);
	
__published:
	__property bool AutoHistory = {read=FAutoHistory, write=FAutoHistory, default=1};
	__property System::UnicodeString ReplaceText = {read=FReplaceText, write=FReplaceText};
	__property System::UnicodeString FindText = {read=FFindText, write=FFindText};
	__property System::Classes::TStringList* ReplaceList = {read=FReplaceList, write=FReplaceList};
	__property System::Classes::TStringList* FindList = {read=FFindList, write=FFindList};
	__property System::Classes::TNotifyEvent OnFind = {read=FOnFind, write=FOnFind};
	__property TEditChangeEvent OnFindEditChange = {read=FOnFindEditChange, write=FOnFindEditChange};
	__property System::Classes::TNotifyEvent OnReplace = {read=FOnReplace, write=FOnReplace};
	__property TEditChangeEvent OnReplaceEditChange = {read=FOnReplaceEditChange, write=FOnReplaceEditChange};
	__property System::Classes::TNotifyEvent OnClose = {read=FOnClose, write=FOnClose};
	__property System::Classes::TNotifyEvent OnReplaceAll = {read=FOnReplacePrevious, write=FOnReplacePrevious};
	__property TTMSFMXReplaceDialogOptions Options = {read=FOptions, write=SetOptions, default=36736};
	__property TTMSFMXReplaceDialogVisibleOptions VisibleOptions = {read=FVisibleOptions, write=FVisibleOptions, default=196607};
	__property TReplaceUILanguage* UILanguage = {read=FUILanguage, write=SetUILanguage};
};


//-- var, const, procedure ---------------------------------------------------
#define DefaultReplaceOptions (System::Set<TTMSFMXReplaceDialogOption, TTMSFMXReplaceDialogOption::fdoCurrentFile, TTMSFMXReplaceDialogOption::fdoDown>() << TTMSFMXReplaceDialogOption::fdoMoreEnabled << TTMSFMXReplaceDialogOption::fdoFindEnabled << TTMSFMXReplaceDialogOption::fdoReplaceAllEnabled << TTMSFMXReplaceDialogOption::fdoReplaceEnabled << TTMSFMXReplaceDialogOption::fdoCloseEnabled << TTMSFMXReplaceDialogOption::fdoDown )
#define DefaultVisibleReplaceOptions (System::Set<TAdvFindDialogVisibleOption, TAdvFindDialogVisibleOption::fdovCaseSensitive, TAdvFindDialogVisibleOption::fdovDirection>() << TAdvFindDialogVisibleOption::fdovCaseSensitive << TAdvFindDialogVisibleOption::fdovExpression << TAdvFindDialogVisibleOption::fdovWholeWordOnly << TAdvFindDialogVisibleOption::fdovWrapAtEndOfFile << TAdvFindDialogVisibleOption::fdovMore << TAdvFindDialogVisibleOption::fdovReplace << TAdvFindDialogVisibleOption::fdovReplaceAll << TAdvFindDialogVisibleOption::fdovFind << TAdvFindDialogVisibleOption::fdovClose << TAdvFindDialogVisibleOption::fdovFindCombo << TAdvFindDialogVisibleOption::fdovFindMemo << TAdvFindDialogVisibleOption::fdovReplaceCombo << TAdvFindDialogVisibleOption::fdovReplaceMemo \
	<< TAdvFindDialogVisibleOption::fdovReplaceAllRange << TAdvFindDialogVisibleOption::fdovCurrentFile << TAdvFindDialogVisibleOption::fdovSelection << TAdvFindDialogVisibleOption::fdovDirection )
extern DELPHI_PACKAGE TTMSFMXReplaceDialogForm* TMSFMXReplaceDialogForm;
extern DELPHI_PACKAGE bool More;
extern DELPHI_PACKAGE System::UnicodeString FPrevCap;
}	/* namespace Tmsreplacedialog */
}	/* namespace Fmx */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_FMX_TMSREPLACEDIALOG)
using namespace Fmx::Tmsreplacedialog;
#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_TmsreplacedialogHPP
