1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-17 14:11:06 +00:00

Tweak minsize of editor ColorPickerButtons

This commit is contained in:
kobewi
2022-05-17 22:44:15 +02:00
parent b9bb3de6a1
commit 9a1054d942
6 changed files with 31 additions and 3 deletions

View File

@@ -2752,7 +2752,13 @@ void EditorPropertyColor::_picker_opening() {
last_color = picker->get_pick_color(); last_color = picker->get_pick_color();
} }
void EditorPropertyColor::_bind_methods() { void EditorPropertyColor::_notification(int p_what) {
switch (p_what) {
case NOTIFICATION_ENTER_TREE:
case NOTIFICATION_THEME_CHANGED: {
picker->set_custom_minimum_size(Size2(0, get_theme_constant(SNAME("color_picker_button_height"), SNAME("Editor"))));
} break;
}
} }
void EditorPropertyColor::update_property() { void EditorPropertyColor::update_property() {

View File

@@ -667,7 +667,7 @@ class EditorPropertyColor : public EditorProperty {
protected: protected:
virtual void _set_read_only(bool p_read_only) override; virtual void _set_read_only(bool p_read_only) override;
static void _bind_methods(); void _notification(int p_what);
public: public:
virtual void update_property() override; virtual void update_property() override;

View File

@@ -535,6 +535,7 @@ Ref<Theme> create_editor_theme(const Ref<Theme> p_theme) {
theme->set_constant("scale", "Editor", EDSCALE); theme->set_constant("scale", "Editor", EDSCALE);
theme->set_constant("thumb_size", "Editor", thumb_size); theme->set_constant("thumb_size", "Editor", thumb_size);
theme->set_constant("dark_theme", "Editor", dark_theme); theme->set_constant("dark_theme", "Editor", dark_theme);
theme->set_constant("color_picker_button_height", "Editor", 28 * EDSCALE);
// Register icons + font // Register icons + font

View File

@@ -6949,6 +6949,10 @@ void Node3DEditor::_update_theme() {
sun_title->add_theme_font_override("font", get_theme_font(SNAME("title_font"), SNAME("Window"))); sun_title->add_theme_font_override("font", get_theme_font(SNAME("title_font"), SNAME("Window")));
environ_title->add_theme_font_override("font", get_theme_font(SNAME("title_font"), SNAME("Window"))); environ_title->add_theme_font_override("font", get_theme_font(SNAME("title_font"), SNAME("Window")));
sun_color->set_custom_minimum_size(Size2(0, get_theme_constant(SNAME("color_picker_button_height"), SNAME("Editor"))));
environ_sky_color->set_custom_minimum_size(Size2(0, get_theme_constant(SNAME("color_picker_button_height"), SNAME("Editor"))));
environ_ground_color->set_custom_minimum_size(Size2(0, get_theme_constant(SNAME("color_picker_button_height"), SNAME("Editor"))));
} }
void Node3DEditor::_notification(int p_what) { void Node3DEditor::_notification(int p_what) {

View File

@@ -269,6 +269,15 @@ ThemeEditorPreview::ThemeEditorPreview() {
picker_overlay->connect("mouse_exited", callable_mp(this, &ThemeEditorPreview::_reset_picker_overlay)); picker_overlay->connect("mouse_exited", callable_mp(this, &ThemeEditorPreview::_reset_picker_overlay));
} }
void DefaultThemeEditorPreview::_notification(int p_what) {
switch (p_what) {
case NOTIFICATION_ENTER_TREE:
case NOTIFICATION_THEME_CHANGED: {
test_color_picker_button->set_custom_minimum_size(Size2(0, get_theme_constant(SNAME("color_picker_button_height"), SNAME("Editor"))));
} break;
}
}
DefaultThemeEditorPreview::DefaultThemeEditorPreview() { DefaultThemeEditorPreview::DefaultThemeEditorPreview() {
Panel *main_panel = memnew(Panel); Panel *main_panel = memnew(Panel);
preview_content->add_child(main_panel); preview_content->add_child(main_panel);
@@ -343,7 +352,8 @@ DefaultThemeEditorPreview::DefaultThemeEditorPreview() {
test_option_button->add_item(TTR("Many")); test_option_button->add_item(TTR("Many"));
test_option_button->add_item(TTR("Options")); test_option_button->add_item(TTR("Options"));
first_vb->add_child(test_option_button); first_vb->add_child(test_option_button);
first_vb->add_child(memnew(ColorPickerButton)); test_color_picker_button = memnew(ColorPickerButton);
first_vb->add_child(test_color_picker_button);
VBoxContainer *second_vb = memnew(VBoxContainer); VBoxContainer *second_vb = memnew(VBoxContainer);
second_vb->set_h_size_flags(SIZE_EXPAND_FILL); second_vb->set_h_size_flags(SIZE_EXPAND_FILL);

View File

@@ -38,6 +38,8 @@
#include "scene/gui/scroll_container.h" #include "scene/gui/scroll_container.h"
#include "scene/resources/theme.h" #include "scene/resources/theme.h"
class ColorPickerButton;
class ThemeEditorPreview : public VBoxContainer { class ThemeEditorPreview : public VBoxContainer {
GDCLASS(ThemeEditorPreview, VBoxContainer); GDCLASS(ThemeEditorPreview, VBoxContainer);
@@ -87,6 +89,11 @@ public:
class DefaultThemeEditorPreview : public ThemeEditorPreview { class DefaultThemeEditorPreview : public ThemeEditorPreview {
GDCLASS(DefaultThemeEditorPreview, ThemeEditorPreview); GDCLASS(DefaultThemeEditorPreview, ThemeEditorPreview);
ColorPickerButton *test_color_picker_button = nullptr;
protected:
void _notification(int p_what);
public: public:
DefaultThemeEditorPreview(); DefaultThemeEditorPreview();
}; };