#pragma once

#include <Arduino.h>
//
// ===========================================
		String version_ND_h="2026-09-07";
// ===========================================


#include <stdint.h>
#include <TFT_eSPI.h>

#include "SPI.h"


TFT_eSPI TFT480 = TFT_eSPI(); // Configurer le fichier User_Setup.h de la bibliothèque TFT480_eSPI au préalable




/** ***********************************************************************************
		CLASS Cadre  // affiche un nombre ou un petit texte dans un rectangle						
***************************************************************************************/


class Cadre
{
public:

	uint16_t x0; //position
	uint16_t y0;
	uint16_t dx; //dimension
	uint16_t dy;

//couleurs
	uint16_t couleur_contour;
	uint16_t couleur_fond;
	uint16_t couleur_texte;

	
	Cadre();
	
	void init(uint16_t x, uint16_t y, uint16_t dx, uint16_t dy);
	void traceContour();
	void efface();
	void affiche_int(uint32_t valeur, char lettre); // possibilité d'afficher un caractère à la fin, comme une unité par exemple
	void affiche_float(float valeur, int nb_dec);
	void affiche_string(String s1, String s2);
	
	
private:


};


/** ***********************************************************************************
		CLASS Led  // affiche un petit rectangle rectangle coloré
***************************************************************************************/

class Led
{
public:

	uint16_t x0; //position
	uint16_t y0;
	
	uint16_t dx; //dimension
	uint16_t dy;


//couleurs
	uint16_t couleur;
	
	Led();
	
	void init(uint16_t x, uint16_t y, uint16_t dx, uint16_t dy);
	void set_couleur(uint16_t coul_i);
	void allume();
	void eteint();

	
private:


};


void affi_carte_locale(uint16_t x0, uint16_t y0, uint8_t ajouts);
void affi_ND(float alpha_i); // Navigation Display (le grand cercle à gauche avec les différents affichages dessus)
void dessine_pannel_frq(); // pour l'affichage des données, voir la fonction "affi_data_piste()"
void affi_photo(uint16_t x0, uint16_t y0);
void init_variables();
void read_data_plan_sur_SDcard();
void affi_X(uint16_t x, uint16_t y);

