/* H-soubor k souboru menu.c */

#ifndef __MENU_H
#define __MENU_H

#include <stddef.h>

// Definice 
#define MENU_DISPLAY_LINE		2				// Pocet radku LCD (kvuli vypoctu rotujiciho textu)
#define MENU_MAX_UROVEN			5				// Maximalni mozna uroven menu

#define MENU_UROVEN_ZPET		0xFF			// Navratovy kod pokud bylo stisknuto tlacitko pro navrat do predchozi urovne
#define MENU_UROVEN_EXIT		0xFE			// Navratovy kod pokud bylo stisknuto tlacitko pro uplne opusteni menu
#define MENU_NEALOKOVANO		255

#define MENU_UKAZATEL			'>'				// Ukazatel v menu kterym se "vybiraji" polozky

#define MENU_DIR_NEXT			1
#define MENU_DIR_PREW			2

#define MENU_RYCHLOSTROTACE		210				// Zpozdeni v ms mezi posuvem textu

// Prototypy funkci
uint8_t Menu_Run(uint8_t MenuID);
void Menu_TextRotate(const uint8_t *text, uint8_t radek, uint8_t rotovat);
uint8_t Menu_GetItemCount(void);
uint8_t Menu_GetItemID(uint8_t actual, uint8_t direction);
uint8_t Menu_GetUroven(void);
uint8_t Menu_GetIDUroven(void);
uint8_t Menu_GetUrovenUP(void);
uint8_t Menu_GetIDUrovenUP(void);
uint8_t Menu_GetTextLen(const uint8_t *text);
void Menu_UrovneInit(void);

#endif
/* Konec souboru */
