mirror of
https://github.com/RPCS3/rpcs3.git
synced 2026-03-17 18:55:19 +01:00
overlay/settings: Use switch element instead of checkbox
This commit is contained in:
parent
cff9b5b65e
commit
471ed347f4
|
|
@ -58,7 +58,8 @@ namespace rsx
|
||||||
add_element(text_stack);
|
add_element(text_stack);
|
||||||
}
|
}
|
||||||
|
|
||||||
home_menu_checkbox::home_menu_checkbox(cfg::_bool* setting, const std::string& text) : home_menu_setting(setting, text)
|
home_menu_checkbox::home_menu_checkbox(cfg::_bool* setting, const std::string& text)
|
||||||
|
: home_menu_setting(setting, text)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
void home_menu_checkbox::set_size(u16 w, u16 h)
|
void home_menu_checkbox::set_size(u16 w, u16 h)
|
||||||
|
|
@ -66,35 +67,23 @@ namespace rsx
|
||||||
set_reserved_width(w / 2 + menu_entry_margin);
|
set_reserved_width(w / 2 + menu_entry_margin);
|
||||||
home_menu_setting::set_size(w, h);
|
home_menu_setting::set_size(w, h);
|
||||||
|
|
||||||
auto box = std::make_unique<box_layout>();
|
auto checkbox_ = std::make_unique<switchbox>();
|
||||||
m_background = box->add_element();
|
checkbox_->set_size(menu_checkbox_size, menu_checkbox_size);
|
||||||
m_checkbox = box->add_element();
|
checkbox_->set_pos(0, 16);
|
||||||
|
m_checkbox = add_element(checkbox_);
|
||||||
m_background->set_size(menu_checkbox_size, menu_checkbox_size);
|
|
||||||
m_checkbox->set_size(m_background->w - 2, m_background->h - 2);
|
|
||||||
m_checkbox->set_pos(1, 1);
|
|
||||||
|
|
||||||
box->set_pos(0, 16);
|
|
||||||
add_element(box);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
compiled_resource& home_menu_checkbox::get_compiled()
|
compiled_resource& home_menu_checkbox::get_compiled()
|
||||||
{
|
{
|
||||||
update_value();
|
update_value();
|
||||||
|
|
||||||
if (!is_compiled())
|
if (is_compiled())
|
||||||
{
|
{
|
||||||
m_background->back_color = { 1.f };
|
return compiled_resources;
|
||||||
m_checkbox->back_color = { 0.3f };
|
|
||||||
m_checkbox->back_color.a = 1.f;
|
|
||||||
m_checkbox->set_visible(!m_last_value);
|
|
||||||
|
|
||||||
compiled_resources = horizontal_layout::get_compiled();
|
|
||||||
compiled_resources.add(m_background->get_compiled());
|
|
||||||
compiled_resources.add(m_checkbox->get_compiled());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return compiled_resources;
|
m_checkbox->set_checked(m_last_value);
|
||||||
|
return horizontal_layout::get_compiled();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,8 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "Emu/RSX/Overlays/overlays.h"
|
#include "Emu/RSX/Overlays/overlays.h"
|
||||||
|
#include "Emu/RSX/Overlays/overlay_checkbox.h"
|
||||||
|
|
||||||
#include "Emu/System.h"
|
#include "Emu/System.h"
|
||||||
#include "Utilities/Config.h"
|
#include "Utilities/Config.h"
|
||||||
|
|
||||||
|
|
@ -109,8 +111,7 @@ namespace rsx
|
||||||
compiled_resource& get_compiled() override;
|
compiled_resource& get_compiled() override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
overlay_element* m_background = nullptr;
|
checkbox* m_checkbox = nullptr;
|
||||||
overlay_element* m_checkbox = nullptr;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue