41 lines
1.2 KiB
C++
41 lines
1.2 KiB
C++
#pragma once
|
|
|
|
#ifdef _DEBUG
|
|
|
|
#include <SDL3/SDL.h>
|
|
|
|
#include <memory> // Para shared_ptr
|
|
#include <string> // Para string
|
|
|
|
class Surface;
|
|
|
|
class EditorStatusBar {
|
|
public:
|
|
EditorStatusBar(const std::string& room_number, const std::string& room_name);
|
|
~EditorStatusBar() = default;
|
|
|
|
void render();
|
|
void update(float delta_time);
|
|
void setMouseTile(int tile_x, int tile_y);
|
|
|
|
private:
|
|
void fillTexture(); // Dibuja los elementos en la surface
|
|
|
|
// Constantes de posición (en pixels dentro de la surface de 256x48)
|
|
static constexpr int LINE1_Y = 8; // Nombre de la habitación
|
|
static constexpr int LINE2_Y = 24; // Coordenadas del ratón
|
|
static constexpr int LEFT_X = 8; // Margen izquierdo
|
|
|
|
// Objetos
|
|
std::shared_ptr<Surface> surface_; // Surface donde dibujar la barra
|
|
SDL_FRect surface_dest_{}; // Rectángulo destino en pantalla
|
|
|
|
// Variables
|
|
std::string room_number_; // Número de la habitación
|
|
std::string room_name_; // Nombre de la habitación
|
|
int mouse_tile_x_{0}; // Coordenada X del ratón en tiles
|
|
int mouse_tile_y_{0}; // Coordenada Y del ratón en tiles
|
|
};
|
|
|
|
#endif // _DEBUG
|