retocs disseny en LOGO

This commit is contained in:
2025-12-02 17:27:18 +01:00
parent 0139da4764
commit c1c5774406
13 changed files with 79 additions and 47 deletions

View File

@@ -195,8 +195,7 @@ void SDLManager::calculateMaxZoom() {
float max_zoom_unrounded = std::min(max_zoom_width, max_zoom_height);
// Round DOWN to nearest 0.1 increment (user preference)
max_zoom_ = std::floor(max_zoom_unrounded / Defaults::Window::ZOOM_INCREMENT)
* Defaults::Window::ZOOM_INCREMENT;
max_zoom_ = std::floor(max_zoom_unrounded / Defaults::Window::ZOOM_INCREMENT) * Defaults::Window::ZOOM_INCREMENT;
// Safety clamp
max_zoom_ = std::max(max_zoom_, Defaults::Window::MIN_ZOOM);
@@ -208,11 +207,10 @@ void SDLManager::calculateMaxZoom() {
void SDLManager::applyZoom(float new_zoom) {
// Clamp to valid range
new_zoom = std::max(Defaults::Window::MIN_ZOOM,
std::min(new_zoom, max_zoom_));
std::min(new_zoom, max_zoom_));
// Round to nearest 0.1 increment
new_zoom = std::round(new_zoom / Defaults::Window::ZOOM_INCREMENT)
* Defaults::Window::ZOOM_INCREMENT;
new_zoom = std::round(new_zoom / Defaults::Window::ZOOM_INCREMENT) * Defaults::Window::ZOOM_INCREMENT;
// No change?
if (std::abs(new_zoom - zoom_factor_) < 0.01f) {
@@ -339,7 +337,7 @@ bool SDLManager::handleWindowEvent(const SDL_Event& event) {
// Calculate zoom from actual size (may not align to 0.1 increments)
float new_zoom = static_cast<float>(current_width_) / Defaults::Window::WIDTH;
zoom_factor_ = std::max(Defaults::Window::MIN_ZOOM,
std::min(new_zoom, max_zoom_));
std::min(new_zoom, max_zoom_));
// Update windowed cache (if not in fullscreen)
if (!is_fullscreen_) {

View File

@@ -63,10 +63,10 @@ class SDLManager {
int max_height_;
// [ZOOM SYSTEM]
float zoom_factor_; // Current zoom (0.5x to max_zoom_)
int windowed_width_; // Saved size before fullscreen
int windowed_height_; // Saved size before fullscreen
float max_zoom_; // Maximum zoom (calculated from display)
float zoom_factor_; // Current zoom (0.5x to max_zoom_)
int windowed_width_; // Saved size before fullscreen
int windowed_height_; // Saved size before fullscreen
float max_zoom_; // Maximum zoom (calculated from display)
// [NUEVO] Funcions internes
void calculateMaxWindowSize(); // Llegir resolució del display