update menu.cpp
This commit is contained in:
@@ -44,7 +44,7 @@ public:
|
||||
|
||||
// Establece el color del rectangulo del selector
|
||||
void setSelectorColor(int r, int g, int b, int alpha);
|
||||
|
||||
|
||||
// Establece el color del texto del selector
|
||||
void setSelectorTextColor(int r, int g, int b);
|
||||
|
||||
@@ -97,38 +97,28 @@ private:
|
||||
// Obtiene la anchura del elemento más ancho del menu
|
||||
Uint16 getWidestItem();
|
||||
|
||||
// Posicion X/Y del texto del primer elemento del menu
|
||||
int mPosX; // En esta posición se pinta la primera letra del primer elemento
|
||||
int mPosY;
|
||||
|
||||
// Nombre del menu
|
||||
std::string mName;
|
||||
|
||||
// Numero de items del menu
|
||||
Uint8 mTotalItems;
|
||||
|
||||
// Item del menu que ha sido seleccionado
|
||||
Uint8 mItemSelected;
|
||||
|
||||
// Item del menu seleccionado cuando se cancela el menu
|
||||
Uint8 mDefaultActionWhenCancel;
|
||||
|
||||
// Espacio de separacion entre items
|
||||
Uint8 mVerticalPadding;
|
||||
|
||||
// Tipo de fondo para el menu
|
||||
Uint8 mBackgroundType;
|
||||
|
||||
// Sprite con los graficos del selector
|
||||
//Sprite mSelectorSprite;
|
||||
bool mAreElementsCentered; // Variable para saber si los elementos del menu van centrados respecto a este
|
||||
bool mIsCentered; // Variable para saber si el menu debe estar centrado respecto a un punto
|
||||
int mCenter; // Centro del menu
|
||||
int mPosX; // En esta posición del eje X se pinta la primera letra del primer elemento
|
||||
int mPosY; // En esta posición del eje Y se pinta la primera letra del primer elemento
|
||||
SDL_Renderer *mRenderer; // Puntero al renderizador de la ventana
|
||||
std::string mName; // Nombre del menu
|
||||
Text *mText; // Objeto de texto para poder escribir los items del menu
|
||||
Uint16 mWidestItem; // Anchura del elemento más ancho
|
||||
Uint8 mBackgroundType; // Tipo de fondo para el menu, visible o no
|
||||
Uint8 mDefaultActionWhenCancel; // Item del menu que se selecciona cuando se cancela el menu
|
||||
Uint8 mItemSelected; // Item del menu que ha sido seleccionado
|
||||
Uint8 mTotalItems; // Numero de items del menu
|
||||
Uint8 mVerticalPadding; // Espacio de separacion entre items
|
||||
|
||||
struct rectangle
|
||||
{
|
||||
SDL_Rect rect;
|
||||
Uint8 r; // Rojo
|
||||
Uint8 g; // Verde
|
||||
Uint8 b; // Azul
|
||||
Uint8 a; // Transparencia
|
||||
SDL_Rect rect; // Rectangulo
|
||||
Uint8 r; // Rojo
|
||||
Uint8 g; // Verde
|
||||
Uint8 b; // Azul
|
||||
Uint8 a; // Transparencia
|
||||
};
|
||||
|
||||
rectangle mRectBG; // Rectangulo de fondo del menu
|
||||
@@ -136,35 +126,17 @@ private:
|
||||
// Estructura para cada elemento del menu
|
||||
struct item
|
||||
{
|
||||
std::string label;
|
||||
int x;
|
||||
int y;
|
||||
Uint8 w;
|
||||
Uint8 h;
|
||||
Uint8 hPaddingUp;
|
||||
Uint8 hPaddingDown;
|
||||
std::string label; // Texto del elemento
|
||||
int x; // Posición en el eje X donde se empieza a escribir el texto
|
||||
int y; // Posición en el eje Y donde se empieza a escribir el texto
|
||||
Uint8 w; // Anchura del elemento
|
||||
Uint8 h; // Altura del elemento
|
||||
Uint8 hPaddingUp; // Espacio vacío arriba
|
||||
Uint8 hPaddingDown; // Espacio vacío abajo
|
||||
};
|
||||
|
||||
item mItem[10];
|
||||
|
||||
// Texto para poder escribir los items del menu
|
||||
Text *mText;
|
||||
|
||||
// Puntero al renderizador de la ventana
|
||||
SDL_Renderer *mRenderer;
|
||||
|
||||
// Variable para saber si el menu debe estar centrado respecto a un punto
|
||||
bool mIsCentered;
|
||||
|
||||
// Centro del menu
|
||||
int mCenter;
|
||||
|
||||
// Variable para saber si los elementos van centrados
|
||||
bool mAreElementsCentered;
|
||||
|
||||
// Anchura del elemento más ancho
|
||||
Uint16 mWidestItem;
|
||||
|
||||
struct selector
|
||||
{
|
||||
double origin; // Coordenada de origen
|
||||
@@ -174,14 +146,14 @@ private:
|
||||
double despY; // (target - origin) / numJumps
|
||||
bool moving; // Indica si el selector está avanzando hacia el destino
|
||||
Uint8 index; // Elemento del menu que tiene el foco
|
||||
SDL_Rect rect;
|
||||
Uint8 r; // Rojo
|
||||
Uint8 g; // Verde
|
||||
Uint8 b; // Azul
|
||||
Uint8 a; // Transparencia
|
||||
Uint8 itemR; // Rojo
|
||||
Uint8 itemG; // Verde
|
||||
Uint8 itemB; // Azul
|
||||
SDL_Rect rect; // Rectangulo para dibujar el selector
|
||||
Uint8 r; // Color para el selector. Rojo
|
||||
Uint8 g; // Color para el selector. Verde
|
||||
Uint8 b; // Color para el selector. Azul
|
||||
Uint8 a; // Color para el selector. Transparencia
|
||||
Uint8 itemR; // Color para el texto seleccionado. Rojo
|
||||
Uint8 itemG; // Color para el texto seleccionado. Verde
|
||||
Uint8 itemB; // Color para el texto seleccionado. Azul
|
||||
};
|
||||
|
||||
selector mSelector;
|
||||
|
||||
Reference in New Issue
Block a user