#ifndef CONSOLE_H
#define CONSOLE_H

/****************************************************************************
	Definice stavu aplikace

*****************************************************************************/
typedef enum CONSOLE_STATE
{
	CONSOLE_NOT_INITIALIZED = M_TASK_NOT_INITIALIZED,
	CONSOLE_INITIALIZE,
	CONSOLE_RESTART = M_TASK_RESTART,
	CONSOLE_DRAW,
	CONSOLE_ACTIVE = M_TASK_RUNNING,
	CONSOLE_WAITING = M_TASK_WAITING,
	CONSOLE_DIALOG_WAITING = M_TASK_DIALOG_WAITING,
	tmp_dialog_show,
	CONSOLE_SWITCH,
	CONSOLE_READY = M_TASK_READY,
	CONSOLE_STOP,
	CONSOLE_ERROR = M_TASK_FAILED,
}CONSOLE_STATE;

/****************************************************************************
	Definice ID objektu

*****************************************************************************/
typedef enum CONSOLE_OBJECT
{
	CONSOLE_TEXT_BOX,
	CONSOLE_EXIT,
	CONSOLE_KEYBOARD,
	
	CONSOLE_CONNECTION,
	CONSOLE_SPECIALS,
	CONSOLE_OBJECT_COUNT
}CONSOLE_OBJECT;

/****************************************************************************
	Definice geometrickych rozmeru

*****************************************************************************/
#define CONSOLE_YA 21
#define CONSOLE_XA 0
#define CONSOLE_XC 480
#define CONSOLE_YC 272

#define CONSOLE_TEXT_BOX_TOP 25
#define CONSOLE_TEXT_BOX_LEFT 20
#define CONSOLE_TEXT_BOX_WIDTH 440
#define CONSOLE_TEXT_BOX_HEIGHT 200

#define CONSOLE_BUTTONS_TOP 235
#define CONSOLE_BUTTONS_WIDTH 100
#define CONSOLE_BUTTONS_HEIGHT 30
#define CONSOLE_BUTTONS_DISTANCE 112
#define CONSOLE_BUTTONS_LEFT 20

#define CONSOLE_LINES_COUNT 23




void AppConsole(void);
RESULT CMsgBox(MESSAGE * msg);
RESULT consoleInitialize(ANSWER generate);

#endif