Register theme properties with ThemeDB

This commit is contained in:
Yuri Sizov 2023-09-08 21:00:10 +02:00
parent 8c1817f755
commit 2924bfd4d3
71 changed files with 837 additions and 802 deletions

View file

@ -30,7 +30,7 @@
#include "check_button.h"
#include "core/string/print_string.h"
#include "scene/theme/theme_db.h"
#include "servers/rendering_server.h"
Size2 CheckButton::get_icon_size() const {
@ -78,23 +78,6 @@ Size2 CheckButton::get_minimum_size() const {
return minsize;
}
void CheckButton::_update_theme_item_cache() {
Button::_update_theme_item_cache();
theme_cache.h_separation = get_theme_constant(SNAME("h_separation"));
theme_cache.check_v_offset = get_theme_constant(SNAME("check_v_offset"));
theme_cache.normal_style = get_theme_stylebox(SNAME("normal"));
theme_cache.checked = get_theme_icon(SNAME("checked"));
theme_cache.unchecked = get_theme_icon(SNAME("unchecked"));
theme_cache.checked_disabled = get_theme_icon(SNAME("checked_disabled"));
theme_cache.unchecked_disabled = get_theme_icon(SNAME("unchecked_disabled"));
theme_cache.checked_mirrored = get_theme_icon(SNAME("checked_mirrored"));
theme_cache.unchecked_mirrored = get_theme_icon(SNAME("unchecked_mirrored"));
theme_cache.checked_disabled_mirrored = get_theme_icon(SNAME("checked_disabled_mirrored"));
theme_cache.unchecked_disabled_mirrored = get_theme_icon(SNAME("unchecked_disabled_mirrored"));
}
void CheckButton::_notification(int p_what) {
switch (p_what) {
case NOTIFICATION_THEME_CHANGED:
@ -153,6 +136,21 @@ void CheckButton::_notification(int p_what) {
}
}
void CheckButton::_bind_methods() {
BIND_THEME_ITEM(Theme::DATA_TYPE_CONSTANT, CheckButton, h_separation);
BIND_THEME_ITEM(Theme::DATA_TYPE_CONSTANT, CheckButton, check_v_offset);
BIND_THEME_ITEM_CUSTOM(Theme::DATA_TYPE_STYLEBOX, CheckButton, normal_style, "normal");
BIND_THEME_ITEM(Theme::DATA_TYPE_ICON, CheckButton, checked);
BIND_THEME_ITEM(Theme::DATA_TYPE_ICON, CheckButton, unchecked);
BIND_THEME_ITEM(Theme::DATA_TYPE_ICON, CheckButton, checked_disabled);
BIND_THEME_ITEM(Theme::DATA_TYPE_ICON, CheckButton, unchecked_disabled);
BIND_THEME_ITEM(Theme::DATA_TYPE_ICON, CheckButton, checked_mirrored);
BIND_THEME_ITEM(Theme::DATA_TYPE_ICON, CheckButton, unchecked_mirrored);
BIND_THEME_ITEM(Theme::DATA_TYPE_ICON, CheckButton, checked_disabled_mirrored);
BIND_THEME_ITEM(Theme::DATA_TYPE_ICON, CheckButton, unchecked_disabled_mirrored);
}
CheckButton::CheckButton(const String &p_text) :
Button(p_text) {
set_toggle_mode(true);