//---------------------------------------------------------------------------

#ifndef MainFormH
#define MainFormH
//---------------------------------------------------------------------------
#include <System.Classes.hpp>
#include <FMX.Controls.hpp>
#include <FMX.Forms.hpp>
#include <FMX.Types.hpp>
#include <FMX.Ani.hpp>
#include <FMX.Gestures.hpp>
#include <FMX.Layouts.hpp>
#include <FMX.ExtCtrls.hpp>
//---------------------------------------------------------------------------
class TFlyoutDemoForm : public TForm
{
__published:	// IDE-managed Components
	TStyleBook *StyleBook1;
	TLayout *ToolbarHolder;
	TPopup *ToolbarPopup;
	TFloatAnimation *ToolbarPopupAnimation;
	TToolBar *ToolBar1;
	TButton *ToolbarApplyButton;
	TButton *ToolbarCloseButton;
	TButton *ToolbarAddButton;
	TStyleBook *StyleBook2;
	TPopup *ExitFlyout;
	TPanel *Panel1;
	TLayout *Layout1;
	TButton *ReallyCloseButton;
	TLabel *ExitFlyoutLabel;
	TFloatAnimation *ExitFlyoutAnimation;
	TButton *CheckCalendarButton;
	TPopup *CalendarFlyout;
	TPanel *SampleFlyoutPanel;
	TLabel *CalendarTitleLabel;
	TLayout *Layout2;
	TCalendar *Calendar1;
	TButton *CalendarCloseButton;
	TFloatAnimation *CalendarFlyoutAnimation;
	TLayout *DummyLayout;
	TLayout *FooterLayout;
	TButton *CloseAppButton;
	TLabel *TitleLabel;
	void __fastcall FormKeyDown(TObject *Sender, WORD &Key, System::WideChar &KeyChar,
		  TShiftState Shift);
	void __fastcall ToolbarCloseButtonClick(TObject *Sender);
	void __fastcall FormGesture(TObject *Sender, const TGestureEventInfo &EventInfo,
          bool &Handled);
	void __fastcall CloseAppButtonClick(TObject *Sender);
	void __fastcall CheckCalendarButtonClick(TObject *Sender);
	void __fastcall CalendarCloseButtonClick(TObject *Sender);
	void __fastcall ReallyCloseButtonClick(TObject *Sender);
private:	// User declarations
	TPointF FGestureOrigin;
	bool FGestureInProgress;
	void ShowToolbar(bool AShow);
	void ShowExitFlyout(bool AShow);
	void ShowCalendarFlyout(bool AShow);

public:		// User declarations
	__fastcall TFlyoutDemoForm(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TFlyoutDemoForm *FlyoutDemoForm;
//---------------------------------------------------------------------------
#endif
