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

// (DO NOT EDIT: machine generated header) 'uecNativePanoramioLayer.pas' rev: 37.00 (Windows)

#ifndef uecNativePanoramioLayerHPP
#define uecNativePanoramioLayerHPP

#pragma delphiheader begin
#pragma option push
#if defined(__BORLANDC__) && !defined(__clang__)
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member 
#endif
#pragma pack(push,8)
#include <System.hpp>
#include <SysInit.hpp>
#include <Winapi.Windows.hpp>
#include <Winapi.Messages.hpp>
#include <System.SysUtils.hpp>
#include <System.Variants.hpp>
#include <System.Classes.hpp>
#include <Vcl.Graphics.hpp>
#include <Vcl.Controls.hpp>
#include <Vcl.Forms.hpp>
#include <Vcl.Dialogs.hpp>
#include <UECMapUtil.hpp>
#include <uecNativeMapControl.hpp>
#include <Vcl.ExtCtrls.hpp>
#include <Vcl.StdCtrls.hpp>
#include <uecNativeShape.hpp>
#include <uecNativePanoramio.hpp>

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

namespace Uecnativepanoramiolayer
{
//-- forward type declarations -----------------------------------------------
class DELPHICLASS TECNativePanoramioLayer;
class DELPHICLASS TECPanoramioItem;
//-- type declarations -------------------------------------------------------
class PASCALIMPLEMENTATION TECNativePanoramioLayer : public Uecnativemapcontrol::TECNativeLayer
{
	typedef Uecnativemapcontrol::TECNativeLayer inherited;
	
private:
	Uecnativepanoramio::TECNativePanoramio* FPanoramio;
	unsigned FLastPanoramioSearch;
	System::Classes::TNotifyEvent FOnPanoramio;
	Uecnativemapcontrol::TOnPanoramioClick FOnPanoramioClick;
	bool FRotation;
	
protected:
	virtual void __fastcall doOnMapChangeBounds(System::TObject* sender);
	virtual void __fastcall doOnShapeClick(System::TObject* sender);
	virtual void __fastcall doOnMapHiResChange(System::TObject* sender);
	
public:
	virtual void __fastcall setVisible(const bool value);
	__property bool Rotation = {read=FRotation, write=FRotation, nodefault};
	__fastcall virtual TECNativePanoramioLayer(Uecnativemapcontrol::TNativeMapControl* _FMap, const System::UnicodeString Name);
	__fastcall virtual ~TECNativePanoramioLayer();
	__property System::Classes::TNotifyEvent OnPanoramio = {read=FOnPanoramio, write=FOnPanoramio};
	__property Uecnativemapcontrol::TOnPanoramioClick OnPanoramioClick = {read=FOnPanoramioClick, write=FOnPanoramioClick};
};


class PASCALIMPLEMENTATION TECPanoramioItem : public System::TObject
{
	typedef System::TObject inherited;
	
public:
	System::UnicodeString OwnerId;
	System::UnicodeString OwnerName;
	System::UnicodeString PhotoDate;
	System::UnicodeString PhotoId;
	double Longitude;
	double Latitude;
	System::UnicodeString PhotoTitle;
	System::UnicodeString PhotoUrl;
	System::UnicodeString HtmlCopyright;
public:
	/* TObject.Create */ inline __fastcall TECPanoramioItem() : System::TObject() { }
	/* TObject.Destroy */ inline __fastcall virtual ~TECPanoramioItem() { }
	
};


//-- var, const, procedure ---------------------------------------------------
}	/* namespace Uecnativepanoramiolayer */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_UECNATIVEPANORAMIOLAYER)
using namespace Uecnativepanoramiolayer;
#endif
#pragma pack(pop)
#pragma option pop

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