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

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

#ifndef Fmx_TmsgridoptionsHPP
#define Fmx_TmsgridoptionsHPP

#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 <FMX.TMSBaseControl.hpp>	// Pascal unit
#include <FMX.Types.hpp>	// Pascal unit
#include <System.UITypes.hpp>	// Pascal unit
#include <FMX.Printer.hpp>	// Pascal unit
#include <FMX.TMSGridDataUtil.hpp>	// Pascal unit
#include <FMX.TMSGridCell.hpp>	// Pascal unit
#include <System.UIConsts.hpp>	// Pascal unit
#include <FMX.Styles.hpp>	// Pascal unit
#include <FMX.Graphics.hpp>	// Pascal unit
#include <FMX.Controls.hpp>	// Pascal unit

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

namespace Fmx
{
namespace Tmsgridoptions
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TTMSFMXCustomGridData;
class PASCALIMPLEMENTATION TTMSFMXCustomGridData : public Fmx::Tmsgridcell::TTMSFMXCustomGridCellData
{
	typedef Fmx::Tmsgridcell::TTMSFMXCustomGridCellData inherited;
	
public:
	/* TTMSFMXBaseControl.Create */ inline __fastcall virtual TTMSFMXCustomGridData(System::Classes::TComponent* AOwner) : Fmx::Tmsgridcell::TTMSFMXCustomGridCellData(AOwner) { }
	/* TTMSFMXBaseControl.Destroy */ inline __fastcall virtual ~TTMSFMXCustomGridData(void) { }
	
};


enum DECLSPEC_DENUM TTMSFMXGridTabKeyHandling : unsigned char { tkhNextControl, tkhNextCell, tkhMixed };

enum DECLSPEC_DENUM TTMSFMXGridTabKeyDirection : unsigned char { tkdNextColumnCell, tkdNextRowCell };

enum DECLSPEC_DENUM TTMSFMXGridPrintPosition : unsigned char { ppTopLeft, ppTopCenter, ppTopRight, ppBottomLeft, ppBottomCenter, ppBottomRight };

enum DECLSPEC_DENUM TTMSFMXGridPrintCellBackground : unsigned char { cbNone, cbCellColor, cbFull };

class DELPHICLASS TTMSFMXGridScrollBarOptions;
class PASCALIMPLEMENTATION TTMSFMXGridScrollBarOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	System::Classes::TNotifyEvent FOnChange;
	bool FVerticalScrollBarVisible;
	bool FHorizontalScrollBarVisible;
	void __fastcall SetHorizontalScrollBarVisible(const bool Value);
	void __fastcall SetVerticalScrollBarVisible(const bool Value);
	
protected:
	__property System::Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
	
public:
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__fastcall TTMSFMXGridScrollBarOptions(void);
	__fastcall virtual ~TTMSFMXGridScrollBarOptions(void);
	
__published:
	__property bool HorizontalScrollBarVisible = {read=FHorizontalScrollBarVisible, write=SetHorizontalScrollBarVisible, default=1};
	__property bool VerticalScrollBarVisible = {read=FVerticalScrollBarVisible, write=SetVerticalScrollBarVisible, default=1};
};


class DELPHICLASS TTMSFMXGridHeaderOptions;
class PASCALIMPLEMENTATION TTMSFMXGridHeaderOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	bool FVisible;
	System::Classes::TNotifyEvent FOnChange;
	void __fastcall SetVisible(const bool Value);
	
protected:
	__property System::Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
	
public:
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__fastcall TTMSFMXGridHeaderOptions(void);
	__fastcall virtual ~TTMSFMXGridHeaderOptions(void);
	
__published:
	__property bool Visible = {read=FVisible, write=SetVisible, default=0};
};


class DELPHICLASS TTMSFMXGridFooterOptions;
class PASCALIMPLEMENTATION TTMSFMXGridFooterOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	bool FVisible;
	System::Classes::TNotifyEvent FOnChange;
	void __fastcall SetVisible(const bool Value);
	
protected:
	__property System::Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
	
public:
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__fastcall TTMSFMXGridFooterOptions(void);
	__fastcall virtual ~TTMSFMXGridFooterOptions(void);
	
__published:
	__property bool Visible = {read=FVisible, write=SetVisible, default=0};
};


class DELPHICLASS TTMSFMXGridPrintingOptions;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXGridPrintingOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	System::UnicodeString FPageNumberFormat;
	TTMSFMXGridPrintPosition FTitlePosition;
	TTMSFMXGridPrintPosition FPageNumberPosition;
	System::UnicodeString FTitle;
	TTMSFMXGridPrintPosition FDescriptionPosition;
	System::UnicodeString FDescription;
	System::Uitypes::TPrinterOrientation FPrinterOrientation;
	bool FRepeatFixedRows;
	bool FRepeatFixedColumns;
	TTMSFMXGridPrintCellBackground FPrintCellBackGround;
	Fmx::Types::TBounds* FPrintMargins;
	Fmx::Graphics::TFont* FDescriptionFont;
	Fmx::Graphics::TFont* FTitleFont;
	Fmx::Graphics::TFont* FPageNumberFont;
	System::Uitypes::TAlphaColor FTitleColor;
	System::Uitypes::TAlphaColor FPageNumberColor;
	System::Uitypes::TAlphaColor FDescriptionColor;
	System::Types::TPoint FDPI;
	void __fastcall SetDescriptionFont(Fmx::Graphics::TFont* const Value);
	void __fastcall SetPageNumberFont(Fmx::Graphics::TFont* const Value);
	void __fastcall SetTitleFont(Fmx::Graphics::TFont* const Value);
	void __fastcall SetDescriptionColor(const System::Uitypes::TAlphaColor Value);
	void __fastcall SetPageNumberColor(const System::Uitypes::TAlphaColor Value);
	void __fastcall SetTitleColor(const System::Uitypes::TAlphaColor Value);
	
public:
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__fastcall TTMSFMXGridPrintingOptions(void);
	__fastcall virtual ~TTMSFMXGridPrintingOptions(void);
	__property System::Types::TPoint DPI = {read=FDPI, write=FDPI};
	
__published:
	__property Fmx::Graphics::TFont* TitleFont = {read=FTitleFont, write=SetTitleFont};
	__property Fmx::Graphics::TFont* DescriptionFont = {read=FDescriptionFont, write=SetDescriptionFont};
	__property Fmx::Graphics::TFont* PageNumberFont = {read=FPageNumberFont, write=SetPageNumberFont};
	__property System::Uitypes::TAlphaColor TitleColor = {read=FTitleColor, write=SetTitleColor, default=-16777216};
	__property System::Uitypes::TAlphaColor DescriptionColor = {read=FDescriptionColor, write=SetDescriptionColor, default=-16777216};
	__property System::Uitypes::TAlphaColor PageNumberColor = {read=FPageNumberColor, write=SetPageNumberColor, default=-16777216};
	__property System::UnicodeString Title = {read=FTitle, write=FTitle};
	__property System::UnicodeString Description = {read=FDescription, write=FDescription};
	__property TTMSFMXGridPrintPosition PageNumberPosition = {read=FPageNumberPosition, write=FPageNumberPosition, default=4};
	__property TTMSFMXGridPrintPosition TitlePosition = {read=FTitlePosition, write=FTitlePosition, default=0};
	__property TTMSFMXGridPrintPosition DescriptionPosition = {read=FDescriptionPosition, write=FDescriptionPosition, default=2};
	__property System::UnicodeString PageNumberFormat = {read=FPageNumberFormat, write=FPageNumberFormat};
	__property System::Uitypes::TPrinterOrientation PrinterOrientation = {read=FPrinterOrientation, write=FPrinterOrientation, default=0};
	__property bool RepeatFixedRows = {read=FRepeatFixedRows, write=FRepeatFixedRows, default=0};
	__property bool RepeatFixedColumns = {read=FRepeatFixedColumns, write=FRepeatFixedColumns, default=0};
	__property TTMSFMXGridPrintCellBackground PrintCellBackGround = {read=FPrintCellBackGround, write=FPrintCellBackGround, default=0};
	__property Fmx::Types::TBounds* PrintMargins = {read=FPrintMargins, write=FPrintMargins};
};

#pragma pack(pop)

class DELPHICLASS TTMSFMXGridBandOptions;
class PASCALIMPLEMENTATION TTMSFMXGridBandOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	bool FEnabled;
	System::Classes::TNotifyEvent FOnChange;
	int FBandRowCount;
	int FNormalRowCount;
	int FTotalRowCount;
	void __fastcall SetEnabled(const bool Value);
	void __fastcall SetBandRowCount(const int Value);
	void __fastcall SetNormalRowCount(const int Value);
	
public:
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__fastcall TTMSFMXGridBandOptions(void);
	virtual void __fastcall Changed(void);
	__property int TotalRowCount = {read=FTotalRowCount, nodefault};
	
__published:
	__property int NormalRowCount = {read=FNormalRowCount, write=SetNormalRowCount, default=1};
	__property int BandRowCount = {read=FBandRowCount, write=SetBandRowCount, default=1};
	__property bool Enabled = {read=FEnabled, write=SetEnabled, default=0};
	__property System::Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TTMSFMXGridBandOptions(void) { }
	
};


enum DECLSPEC_DENUM TTMSFMXGridFixedCellSelectionMode : unsigned char { fcsAll, fcsRow, fcsColumn, fcsRowRange, fcsColumnRange, fcsDisjunctRow, fcsDisjunctColumn };

typedef System::Set<TTMSFMXGridFixedCellSelectionMode, TTMSFMXGridFixedCellSelectionMode::fcsAll, TTMSFMXGridFixedCellSelectionMode::fcsDisjunctColumn> TTMSFMXGridFixedCellSelection;

class DELPHICLASS TTMSFMXGridMouseOptions;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXGridMouseOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	bool FDirectEdit;
	int FWheelScrollSize;
	bool FAutoDragging;
	bool FFixedRowSizing;
	bool FFixedColumnSizing;
	bool FRowDragging;
	bool FColumnDragging;
	int FAutoScrollingInterval;
	bool FRowSizing;
	bool FColumnSizing;
	int FAutoScrollingSpeed;
	bool FAutoScrolling;
	bool FDirectComboDrop;
	bool FTouchScrolling;
	float FTouchScrollingSensitivity;
	TTMSFMXGridFixedCellSelection FFixedCellSelection;
	bool FRowAutoSizeOnDblClick;
	bool FColumnAutoSizeOnDblClick;
	bool FWheelScrollKeepSelection;
	void __fastcall SetWheelScrollSize(const int Value);
	void __fastcall SetAutoScrollingInterval(const int Value);
	void __fastcall SetTouchScrolling(const bool Value);
	void __fastcall SetWheelScrollKeepSelection(const bool Value);
	
public:
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__fastcall TTMSFMXGridMouseOptions(void);
	
__published:
	__property bool DirectEdit = {read=FDirectEdit, write=FDirectEdit, default=0};
	__property bool DirectComboDrop = {read=FDirectComboDrop, write=FDirectComboDrop, default=0};
	__property int WheelScrollSize = {read=FWheelScrollSize, write=SetWheelScrollSize, default=4};
	__property bool WheelScrollKeepSelection = {read=FWheelScrollKeepSelection, write=SetWheelScrollKeepSelection, default=0};
	__property bool ColumnSizing = {read=FColumnSizing, write=FColumnSizing, default=0};
	__property bool RowSizing = {read=FRowSizing, write=FRowSizing, default=0};
	__property bool FixedColumnSizing = {read=FFixedColumnSizing, write=FFixedColumnSizing, default=0};
	__property bool FixedRowSizing = {read=FFixedRowSizing, write=FFixedRowSizing, default=0};
	__property TTMSFMXGridFixedCellSelection FixedCellSelection = {read=FFixedCellSelection, write=FFixedCellSelection, default=0};
	__property bool ColumnAutoSizeOnDblClick = {read=FColumnAutoSizeOnDblClick, write=FColumnAutoSizeOnDblClick, default=1};
	__property bool RowAutoSizeOnDblClick = {read=FRowAutoSizeOnDblClick, write=FRowAutoSizeOnDblClick, default=1};
	__property bool ColumnDragging = {read=FColumnDragging, write=FColumnDragging, default=0};
	__property bool RowDragging = {read=FRowDragging, write=FRowDragging, default=0};
	__property bool AutoScrolling = {read=FAutoScrolling, write=FAutoScrolling, default=1};
	__property bool AutoDragging = {read=FAutoDragging, write=FAutoDragging, default=1};
	__property int AutoScrollingSpeed = {read=FAutoScrollingSpeed, write=FAutoScrollingSpeed, default=1};
	__property int AutoScrollingInterval = {read=FAutoScrollingInterval, write=SetAutoScrollingInterval, default=100};
	__property bool TouchScrolling = {read=FTouchScrolling, write=SetTouchScrolling, default=0};
	__property float TouchScrollingSensitivity = {read=FTouchScrollingSensitivity, write=FTouchScrollingSensitivity};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TTMSFMXGridMouseOptions(void) { }
	
};

#pragma pack(pop)

enum DECLSPEC_DENUM TTMSFMXGridInsertKeyHandling : unsigned char { ikhNone, ikhInsertRowBefore, ikhInsertRowAfter };

enum DECLSPEC_DENUM TTMSFMXGridEnterKeyHandling : unsigned char { ekhNone, ekhNextColumn, ekhNextRow, ekhNextColumnInRow, ekhNextRowInColumn, ekhNextColumnAndAppend, ekhNextRowAndAppend, ekhNextRowAndColumnAppend, ekhNextColumnAndRowAppend };

enum DECLSPEC_DENUM TTMSFMXGridDeleteKeyHandling : unsigned char { dkhNone, dkhDeleteRow };

class DELPHICLASS TTMSFMXGridKeyboardOptions;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXGridKeyboardOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	TTMSFMXGridTabKeyDirection FTabKeyDirection;
	TTMSFMXGridTabKeyHandling FTabKeyHandling;
	int FPageScrollSize;
	TTMSFMXGridEnterKeyHandling FEnterKeyHandling;
	bool FEnterKeyDirectEdit;
	TTMSFMXGridDeleteKeyHandling FDeleteKeyHandling;
	TTMSFMXGridInsertKeyHandling FInsertKeyHandling;
	bool FTabKeyDirectEdit;
	bool FArrowKeyDirectEdit;
	bool FAllowCellMergeShortCut;
	void __fastcall SetPageScrollSize(const int Value);
	
public:
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__fastcall TTMSFMXGridKeyboardOptions(void);
	
__published:
	__property bool AllowCellMergeShortCut = {read=FAllowCellMergeShortCut, write=FAllowCellMergeShortCut, default=0};
	__property bool TabKeyDirectEdit = {read=FTabKeyDirectEdit, write=FTabKeyDirectEdit, default=0};
	__property bool ArrowKeyDirectEdit = {read=FArrowKeyDirectEdit, write=FArrowKeyDirectEdit, default=0};
	__property TTMSFMXGridInsertKeyHandling InsertKeyHandling = {read=FInsertKeyHandling, write=FInsertKeyHandling, default=2};
	__property TTMSFMXGridDeleteKeyHandling DeleteKeyHandling = {read=FDeleteKeyHandling, write=FDeleteKeyHandling, default=1};
	__property TTMSFMXGridEnterKeyHandling EnterKeyHandling = {read=FEnterKeyHandling, write=FEnterKeyHandling, default=0};
	__property bool EnterKeyDirectEdit = {read=FEnterKeyDirectEdit, write=FEnterKeyDirectEdit, default=0};
	__property TTMSFMXGridTabKeyHandling TabKeyHandling = {read=FTabKeyHandling, write=FTabKeyHandling, default=2};
	__property TTMSFMXGridTabKeyDirection TabKeyDirection = {read=FTabKeyDirection, write=FTabKeyDirection, default=0};
	__property int PageScrollSize = {read=FPageScrollSize, write=SetPageScrollSize, default=0};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TTMSFMXGridKeyboardOptions(void) { }
	
};

#pragma pack(pop)

enum DECLSPEC_DENUM TTMSFMXGridSortBlankPosition : unsigned char { blFirst, blLast };

enum DECLSPEC_DENUM TTMSFMXGridSortingMode : unsigned char { gsmNone, gsmNormal, gsmIndexed };

enum DECLSPEC_DENUM TTMSFMXGridSortColumns : unsigned char { scAll, scNormal, scSingle };

enum DECLSPEC_DENUM TTMSFMXGridBorders : unsigned char { bNone, bAll, bVertical, bHorizontal };

class DELPHICLASS TTMSFMXGridSortingOptions;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXGridSortingOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	TTMSFMXGridSortingMode FMode;
	bool FFixedColumns;
	TTMSFMXGridSortColumns FColumns;
	bool FMultiColumn;
	bool FIgnoreCase;
	bool FIgnoreBlanks;
	TTMSFMXGridSortBlankPosition FBlankPosition;
	void __fastcall SetMode(const TTMSFMXGridSortingMode Value);
	
public:
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__fastcall TTMSFMXGridSortingOptions(void);
	
__published:
	__property TTMSFMXGridSortBlankPosition BlankPosition = {read=FBlankPosition, write=FBlankPosition, default=0};
	__property bool FixedColumns = {read=FFixedColumns, write=FFixedColumns, default=0};
	__property bool IgnoreCase = {read=FIgnoreCase, write=FIgnoreCase, default=0};
	__property bool IgnoreBlanks = {read=FIgnoreBlanks, write=FIgnoreBlanks, default=0};
	__property bool MultiColumn = {read=FMultiColumn, write=FMultiColumn, default=1};
	__property TTMSFMXGridSortingMode Mode = {read=FMode, write=SetMode, default=0};
	__property TTMSFMXGridSortColumns Columns = {read=FColumns, write=FColumns, default=0};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TTMSFMXGridSortingOptions(void) { }
	
};

#pragma pack(pop)

class DELPHICLASS TTMSFMXGridBorderOptions;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXGridBorderOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	TTMSFMXGridBorders FFixedCellBorders;
	TTMSFMXGridBorders FCellBorders;
	
public:
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__fastcall TTMSFMXGridBorderOptions(void);
	
__published:
	__property TTMSFMXGridBorders FixedCellBorders = {read=FFixedCellBorders, write=FFixedCellBorders, default=1};
	__property TTMSFMXGridBorders CellBorders = {read=FCellBorders, write=FCellBorders, default=1};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TTMSFMXGridBorderOptions(void) { }
	
};

#pragma pack(pop)

enum DECLSPEC_DENUM TTMSFMXGridAutoComplete : unsigned char { acDisabled, acNormal, acLookupList };

enum DECLSPEC_DENUM TTMSFMXGridAutoPost : unsigned char { apNone, apCell, apRow };

class DELPHICLASS TTMSFMXGridEditingOptions;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXGridEditingOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	bool FEnabled;
	TTMSFMXGridAutoComplete FAutoComplete;
	System::Classes::TStringList* FAutoCompleteItems;
	bool FAutoHistory;
	bool FAutoCompleteCaseSensitive;
	System::UnicodeString FCalcFormat;
	TTMSFMXGridAutoPost FAutoPost;
	bool FAutoCancel;
	void __fastcall SetAutoCompleteItems(System::Classes::TStringList* const Value);
	void __fastcall SetAutoPost(const TTMSFMXGridAutoPost Value);
	void __fastcall SetAutoCancel(const bool Value);
	
public:
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__fastcall TTMSFMXGridEditingOptions(void);
	__fastcall virtual ~TTMSFMXGridEditingOptions(void);
	
__published:
	__property bool Enabled = {read=FEnabled, write=FEnabled, default=1};
	__property System::Classes::TStringList* AutoCompleteItems = {read=FAutoCompleteItems, write=SetAutoCompleteItems};
	__property TTMSFMXGridAutoComplete AutoComplete = {read=FAutoComplete, write=FAutoComplete, default=0};
	__property bool AutoHistory = {read=FAutoHistory, write=FAutoHistory, default=0};
	__property bool AutoCompleteCaseSensitive = {read=FAutoCompleteCaseSensitive, write=FAutoCompleteCaseSensitive, default=1};
	__property System::UnicodeString CalcFormat = {read=FCalcFormat, write=FCalcFormat};
	__property TTMSFMXGridAutoPost AutoPost = {read=FAutoPost, write=SetAutoPost, default=0};
	__property bool AutoCancel = {read=FAutoCancel, write=SetAutoCancel, default=0};
};

#pragma pack(pop)

class DELPHICLASS TTMSFMXGridLookupOptions;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXGridLookupOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	bool FCaseSensitive;
	bool FIncremental;
	bool FEnabled;
	
public:
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__fastcall TTMSFMXGridLookupOptions(void);
	
__published:
	__property bool CaseSensitive = {read=FCaseSensitive, write=FCaseSensitive, default=0};
	__property bool Enabled = {read=FEnabled, write=FEnabled, default=0};
	__property bool Incremental = {read=FIncremental, write=FIncremental, default=1};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TTMSFMXGridLookupOptions(void) { }
	
};

#pragma pack(pop)

enum DECLSPEC_DENUM TTMSFMXGridFilterRows : unsigned char { frNormal, frAll };

class DELPHICLASS TTMSFMXGridFilteringOptions;
class PASCALIMPLEMENTATION TTMSFMXGridFilteringOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	TTMSFMXGridFilterRows FRows;
	int FDropDownFixedRow;
	bool FDropDown;
	System::Classes::TNotifyEvent FOnChange;
	int FDropDownHeight;
	int FDropDownWidth;
	bool FMultiColumn;
	void __fastcall SetDropDown(const bool Value);
	void __fastcall SetDropDownFixedRow(const int Value);
	
public:
	__fastcall TTMSFMXGridFilteringOptions(void);
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	void __fastcall Changed(void);
	
__published:
	__property TTMSFMXGridFilterRows Rows = {read=FRows, write=FRows, default=0};
	__property bool DropDown = {read=FDropDown, write=SetDropDown, default=0};
	__property int DropDownFixedRow = {read=FDropDownFixedRow, write=SetDropDownFixedRow, default=0};
	__property int DropDownWidth = {read=FDropDownWidth, write=FDropDownWidth, default=100};
	__property int DropDownHeight = {read=FDropDownHeight, write=FDropDownHeight, default=120};
	__property bool MultiColumn = {read=FMultiColumn, write=FMultiColumn, default=0};
	__property System::Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TTMSFMXGridFilteringOptions(void) { }
	
};


class DELPHICLASS TTMSFMXGridGroupingOptions;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXGridGroupingOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	bool FMergeHeader;
	bool FMergeSummary;
	bool FSummary;
	bool FShowGroupCount;
	System::UnicodeString FCalcFormat;
	bool FAutoSelectGroup;
	bool FAutoCheckGroup;
	System::UnicodeString FGroupCountFormat;
	
public:
	__fastcall TTMSFMXGridGroupingOptions(void);
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	
__published:
	__property bool AutoSelectGroup = {read=FAutoSelectGroup, write=FAutoSelectGroup, default=0};
	__property bool AutoCheckGroup = {read=FAutoCheckGroup, write=FAutoCheckGroup, default=0};
	__property System::UnicodeString CalcFormat = {read=FCalcFormat, write=FCalcFormat};
	__property bool MergeHeader = {read=FMergeHeader, write=FMergeHeader, default=0};
	__property bool MergeSummary = {read=FMergeSummary, write=FMergeSummary, default=0};
	__property bool ShowGroupCount = {read=FShowGroupCount, write=FShowGroupCount, default=0};
	__property System::UnicodeString GroupCountFormat = {read=FGroupCountFormat, write=FGroupCountFormat};
	__property bool Summary = {read=FSummary, write=FSummary, default=0};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TTMSFMXGridGroupingOptions(void) { }
	
};

#pragma pack(pop)

enum DECLSPEC_DENUM TTMSFMXGridClipboardPasteAction : unsigned char { paReplace, paInsert };

class DELPHICLASS TTMSFMXGridClipboardOptions;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXGridClipboardOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	bool FEnabled;
	bool FIgnoreReadOnly;
	bool FAllowColGrow;
	bool FAllowRowGrow;
	TTMSFMXGridClipboardPasteAction FPasteAction;
	
public:
	__fastcall TTMSFMXGridClipboardOptions(void);
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	
__published:
	__property bool Enabled = {read=FEnabled, write=FEnabled, default=1};
	__property bool IgnoreReadOnly = {read=FIgnoreReadOnly, write=FIgnoreReadOnly, default=0};
	__property bool AllowColGrow = {read=FAllowColGrow, write=FAllowColGrow, default=0};
	__property bool AllowRowGrow = {read=FAllowRowGrow, write=FAllowRowGrow, default=0};
	__property TTMSFMXGridClipboardPasteAction PasteAction = {read=FPasteAction, write=FPasteAction, default=0};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TTMSFMXGridClipboardOptions(void) { }
	
};

#pragma pack(pop)

class DELPHICLASS TTMSFMXGridHTMLExportOptions;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXGridHTMLExportOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	System::UnicodeString FHeaderFile;
	System::UnicodeString FFooterFile;
	bool FShow;
	bool FConvertSpecialChars;
	int FWidth;
	bool FNonBreakingText;
	int FBorderSize;
	int FCellPadding;
	System::UnicodeString FPrefixTag;
	System::UnicodeString FSuffixTag;
	bool FSaveFonts;
	bool FExportImages;
	int FCellSpacing;
	System::UnicodeString FSummary;
	bool FSaveColors;
	bool FXHTML;
	System::UnicodeString FTableStyle;
	Fmx::Tmsgriddatautil::TIntList* FColumnWidths;
	
public:
	__fastcall TTMSFMXGridHTMLExportOptions(void);
	__fastcall virtual ~TTMSFMXGridHTMLExportOptions(void);
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__property Fmx::Tmsgriddatautil::TIntList* ColumnWidths = {read=FColumnWidths, write=FColumnWidths};
	
__published:
	__property int BorderSize = {read=FBorderSize, write=FBorderSize, default=1};
	__property int CellSpacing = {read=FCellSpacing, write=FCellSpacing, default=0};
	__property int CellPadding = {read=FCellPadding, write=FCellPadding, default=0};
	__property bool ConvertSpecialChars = {read=FConvertSpecialChars, write=FConvertSpecialChars, default=0};
	__property bool ExportImages = {read=FExportImages, write=FExportImages, default=1};
	__property System::UnicodeString FooterFile = {read=FFooterFile, write=FFooterFile};
	__property System::UnicodeString HeaderFile = {read=FHeaderFile, write=FHeaderFile};
	__property bool NonBreakingText = {read=FNonBreakingText, write=FNonBreakingText, default=0};
	__property System::UnicodeString PrefixTag = {read=FPrefixTag, write=FPrefixTag};
	__property bool SaveColors = {read=FSaveColors, write=FSaveColors, default=1};
	__property bool SaveFonts = {read=FSaveFonts, write=FSaveFonts, default=1};
	__property System::UnicodeString SuffixTag = {read=FSuffixTag, write=FSuffixTag};
	__property bool Show = {read=FShow, write=FShow, default=0};
	__property System::UnicodeString Summary = {read=FSummary, write=FSummary};
	__property System::UnicodeString TableStyle = {read=FTableStyle, write=FTableStyle};
	__property int Width = {read=FWidth, write=FWidth, default=100};
	__property bool XHTML = {read=FXHTML, write=FXHTML, default=0};
};

#pragma pack(pop)

class DELPHICLASS TTMSFMXGridURLOptions;
class PASCALIMPLEMENTATION TTMSFMXGridURLOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	bool FUnderline;
	System::Uitypes::TAlphaColor FColor;
	bool FShow;
	System::Classes::TNotifyEvent FOnChange;
	bool FFull;
	bool FOpen;
	void __fastcall SetColor(const System::Uitypes::TAlphaColor Value);
	void __fastcall SetUnderline(const bool Value);
	void __fastcall SetFull(const bool Value);
	
public:
	__fastcall TTMSFMXGridURLOptions(void);
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	virtual void __fastcall Changed(void);
	
__published:
	__property System::Uitypes::TAlphaColor Color = {read=FColor, write=SetColor, default=-16776961};
	__property bool Full = {read=FFull, write=SetFull, default=1};
	__property bool Open = {read=FOpen, write=FOpen, default=1};
	__property bool Show = {read=FShow, write=FShow, default=1};
	__property bool Underline = {read=FUnderline, write=SetUnderline, default=1};
	__property System::Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TTMSFMXGridURLOptions(void) { }
	
};


class DELPHICLASS TTMSFMXGridIOOptions;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TTMSFMXGridIOOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	System::WideChar FDelimiter;
	bool FQuoteEmptyCells;
	System::UnicodeString FXMLEncoding;
	bool FAlwaysQuotes;
	bool FSaveVirtualCellData;
	
public:
	__fastcall TTMSFMXGridIOOptions(void);
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	
__published:
	__property bool AlwaysQuotes = {read=FAlwaysQuotes, write=FAlwaysQuotes, default=0};
	__property System::WideChar Delimiter = {read=FDelimiter, write=FDelimiter, default=0};
	__property bool QuoteEmptyCells = {read=FQuoteEmptyCells, write=FQuoteEmptyCells, default=1};
	__property System::UnicodeString XMLEncoding = {read=FXMLEncoding, write=FXMLEncoding};
	__property bool SaveVirtualCellData = {read=FSaveVirtualCellData, write=FSaveVirtualCellData, default=0};
public:
	/* TPersistent.Destroy */ inline __fastcall virtual ~TTMSFMXGridIOOptions(void) { }
	
};

#pragma pack(pop)

class DELPHICLASS TTMSFMXGridOptions;
class PASCALIMPLEMENTATION TTMSFMXGridOptions : public System::Classes::TPersistent
{
	typedef System::Classes::TPersistent inherited;
	
private:
	TTMSFMXGridMouseOptions* FMouse;
	TTMSFMXGridKeyboardOptions* FKeyboard;
	TTMSFMXGridSortingOptions* FSorting;
	TTMSFMXGridGroupingOptions* FGrouping;
	TTMSFMXGridFilteringOptions* FFiltering;
	TTMSFMXGridEditingOptions* FEditing;
	TTMSFMXGridPrintingOptions* FPrinting;
	TTMSFMXGridBorderOptions* FBorders;
	TTMSFMXGridLookupOptions* FLookup;
	TTMSFMXGridClipboardOptions* FClipboard;
	TTMSFMXGridHTMLExportOptions* FHTMLExport;
	TTMSFMXGridHeaderOptions* FHeader;
	TTMSFMXGridFooterOptions* FFooter;
	TTMSFMXGridBandOptions* FBands;
	System::Classes::TNotifyEvent FOnChange;
	TTMSFMXGridURLOptions* FURL;
	TTMSFMXGridScrollBarOptions* FScrollBar;
	TTMSFMXGridIOOptions* FIO;
	void __fastcall SetKeyboard(TTMSFMXGridKeyboardOptions* const Value);
	void __fastcall SetMouse(TTMSFMXGridMouseOptions* const Value);
	void __fastcall SetGrouping(TTMSFMXGridGroupingOptions* const Value);
	void __fastcall SetSorting(TTMSFMXGridSortingOptions* const Value);
	void __fastcall SetFiltering(TTMSFMXGridFilteringOptions* const Value);
	void __fastcall SetEditing(TTMSFMXGridEditingOptions* const Value);
	void __fastcall SetPrinting(TTMSFMXGridPrintingOptions* const Value);
	void __fastcall SetBorders(TTMSFMXGridBorderOptions* const Value);
	void __fastcall SetLookup(TTMSFMXGridLookupOptions* const Value);
	void __fastcall SetClipboard(TTMSFMXGridClipboardOptions* const Value);
	void __fastcall SetHTMLExport(TTMSFMXGridHTMLExportOptions* const Value);
	void __fastcall SetFooter(TTMSFMXGridFooterOptions* const Value);
	void __fastcall SetHeader(TTMSFMXGridHeaderOptions* const Value);
	void __fastcall SetBands(TTMSFMXGridBandOptions* const Value);
	void __fastcall SetURL(TTMSFMXGridURLOptions* const Value);
	void __fastcall SetScrollBar(TTMSFMXGridScrollBarOptions* const Value);
	void __fastcall SetIO(TTMSFMXGridIOOptions* const Value);
	
public:
	void __fastcall DoChange(System::TObject* Sender);
	__fastcall TTMSFMXGridOptions(void);
	__fastcall virtual ~TTMSFMXGridOptions(void);
	virtual void __fastcall Assign(System::Classes::TPersistent* Source);
	__property System::Classes::TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
	
__published:
	__property TTMSFMXGridBandOptions* Bands = {read=FBands, write=SetBands};
	__property TTMSFMXGridBorderOptions* Borders = {read=FBorders, write=SetBorders};
	__property TTMSFMXGridClipboardOptions* Clipboard = {read=FClipboard, write=SetClipboard};
	__property TTMSFMXGridEditingOptions* Editing = {read=FEditing, write=SetEditing};
	__property TTMSFMXGridFilteringOptions* Filtering = {read=FFiltering, write=SetFiltering};
	__property TTMSFMXGridFooterOptions* Footer = {read=FFooter, write=SetFooter};
	__property TTMSFMXGridGroupingOptions* Grouping = {read=FGrouping, write=SetGrouping};
	__property TTMSFMXGridHeaderOptions* Header = {read=FHeader, write=SetHeader};
	__property TTMSFMXGridHTMLExportOptions* HTMLExport = {read=FHTMLExport, write=SetHTMLExport};
	__property TTMSFMXGridIOOptions* IO = {read=FIO, write=SetIO};
	__property TTMSFMXGridKeyboardOptions* Keyboard = {read=FKeyboard, write=SetKeyboard};
	__property TTMSFMXGridLookupOptions* Lookup = {read=FLookup, write=SetLookup};
	__property TTMSFMXGridMouseOptions* Mouse = {read=FMouse, write=SetMouse};
	__property TTMSFMXGridPrintingOptions* Printing = {read=FPrinting, write=SetPrinting};
	__property TTMSFMXGridSortingOptions* Sorting = {read=FSorting, write=SetSorting};
	__property TTMSFMXGridURLOptions* URL = {read=FURL, write=SetURL};
	__property TTMSFMXGridScrollBarOptions* ScrollBar = {read=FScrollBar, write=SetScrollBar};
};


//-- var, const, procedure ---------------------------------------------------
}	/* namespace Tmsgridoptions */
}	/* namespace Fmx */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_FMX_TMSGRIDOPTIONS)
using namespace Fmx::Tmsgridoptions;
#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_TmsgridoptionsHPP
