#ifndef OS_SCREENS_H
#define OS_SCREENS_H

#define BUTTON_SIZE_X 100
#define BUTTON_SIZE_Y 30





#define MAX_NAME_LENGTH 10
#define MAX_SCREEN_OBJECT_COUNT 10
/*
typedef struct SCREEN_OBJECT_PARAMS
{
	short width;					//size...
	short height;
	char *caption;					//Caption of the object
	FONT *font;	
	char* text;
}SCREEN_OBJECT_PARAMS;

typedef struct SCREEN_OBJECT
{
	short x;
	short y;
	SCREEN_OBJECT_TYPE type;
	char id;
	SCREEN_OBJECT_STATE state;
	SCREEN_OBJECT_PARAMS* params;
	void (*draw)(void *object, OBJECT_MESSAGE msg);
	void (*object_callback)(void *object, OBJECT_MESSAGE message);
}SCREEN_OBJECT;
*/
/*
typedef struct SCREEN
{
	SCREEN_OBJECT* objects;
	short object_count;
	FONT* font;
}SCREEN;



SCREEN* createScreen(unsigned char max_count, FONT* font);
RESULT addObject(SCREEN * screen, SCREEN_OBJECT * object);

SCREEN_OBJECT * fillObject(	SCREEN_OBJECT * object,
								short x, short y,
								SCREEN_OBJECT_TYPE type,
								char id,
								SCREEN_OBJECT_STATE state,
								SCREEN_OBJECT_PARAMS* params,
								void (*draw)(void *object, OBJECT_MESSAGE msg),
								void (*object_callback)(void *object, OBJECT_MESSAGE message));
RESULT drawScreen(SCREEN* screen);
void drawButton(void *object, OBJECT_MESSAGE msg);
void drawButtonShape(SCREEN_OBJECT * obj, OBJECT_MESSAGE msg);
void drawTextArea(void*object, OBJECT_MESSAGE msg);

extern POSITION clickPosition;*/
#endif