Fix support for icon and font color selector

Closes #23
pull/39/head
passivestar 2025-03-29 17:31:24 +07:00
parent 17517d8c42
commit c82b2dbbe5
1 changed files with 53 additions and 50 deletions

@ -46,10 +46,13 @@ func _init() -> void:
var popup_margin : float = maxf(base_margin * 2.4, 4.0 * scale)
dark_theme = base_color.get_luminance() < 0.5
var dark_theme_icon_and_font : bool = dark_theme
if icon_and_font_color != 0: # ColorMode.AUTO_COLOR
dark_theme = icon_and_font_color == 1 # ColorMode.DARK
dark_theme_icon_and_font = icon_and_font_color == 2 # ColorMode.LIGHT
var mono_color : Color = Color.WHITE if dark_theme else Color.BLACK
var mono_color_icon_and_font : Color = Color.WHITE if dark_theme_icon_and_font else Color.BLACK
var extra_border_color_1 : Color = Color(1, 1, 1, 0.4) if dark_theme else Color(0, 0, 0, 0.4)
var extra_border_color_2 : Color = Color(1, 1, 1, 0.2) if dark_theme else Color(0, 0, 0, 0.2)
@ -122,8 +125,8 @@ func _init() -> void:
set_color('track_focus_color', 'AnimationBezierTrackEdit', mono_color * Color(1, 1, 1, 0.1))
set_color('v_line_color', 'AnimationBezierTrackEdit', Color.TRANSPARENT)
set_color('font_primary_color', 'AnimationTimelineEdit', mono_color * Color(1, 1, 1, 0.7))
set_color('font_secondary_color', 'AnimationTimelineEdit', mono_color * Color(1, 1, 1, 0.4))
set_color('font_primary_color', 'AnimationTimelineEdit', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
set_color('font_secondary_color', 'AnimationTimelineEdit', mono_color_icon_and_font * Color(1, 1, 1, 0.4))
set_color('h_line_color', 'AnimationTimelineEdit', Color.TRANSPARENT)
set_color('v_line_primary_color', 'AnimationTimelineEdit', mono_color * Color(1, 1, 1, 0.4))
set_color('v_line_secondary_color', 'AnimationTimelineEdit', mono_color * Color(1, 1, 1, 0.08))
@ -190,14 +193,14 @@ func _init() -> void:
# Button
set_color('font_color', 'Button', mono_color * Color(1, 1, 1, 0.7))
set_color('font_disabled_color', 'Button', mono_color * Color(1, 1, 1, 0.3))
set_color('font_focus_color', 'Button', mono_color)
set_color('font_hover_color', 'Button', mono_color)
set_color('font_hover_pressed_color', 'Button', mono_color)
set_color('font_pressed_color', 'Button', mono_color)
set_color('icon_disabled_color', 'Button', mono_color * Color(1, 1, 1, 0.3))
set_color('icon_normal_color', 'Button', mono_color * Color(1, 1, 1, 0.7))
set_color('font_color', 'Button', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
set_color('font_disabled_color', 'Button', mono_color_icon_and_font * Color(1, 1, 1, 0.3))
set_color('font_focus_color', 'Button', mono_color_icon_and_font)
set_color('font_hover_color', 'Button', mono_color_icon_and_font)
set_color('font_hover_pressed_color', 'Button', mono_color_icon_and_font)
set_color('font_pressed_color', 'Button', mono_color_icon_and_font)
set_color('icon_disabled_color', 'Button', mono_color_icon_and_font * Color(1, 1, 1, 0.3))
set_color('icon_normal_color', 'Button', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
set_constant('outline_size', 'Button', 0)
set_stylebox('disabled', 'Button', button_disabled_sb)
set_stylebox('disabled_mirrored', 'Button', button_disabled_sb)
@ -213,8 +216,8 @@ func _init() -> void:
# Checkbox
set_color('font_hover_pressed_color', 'CheckBox', mono_color)
set_color('font_pressed_color', 'CheckBox', mono_color * Color(1, 1, 1, 0.7))
set_color('font_hover_pressed_color', 'CheckBox', mono_color_icon_and_font)
set_color('font_pressed_color', 'CheckBox', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
sb = base_sb.duplicate()
sb.draw_center = false
@ -224,9 +227,9 @@ func _init() -> void:
# CheckButton
set_color('font_focus_color', 'CheckButton', mono_color * Color(1, 1, 1, 0.7))
set_color('font_hover_pressed_color', 'CheckButton', mono_color)
set_color('font_pressed_color', 'CheckButton', mono_color * Color(1, 1, 1, 0.7))
set_color('font_focus_color', 'CheckButton', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
set_color('font_hover_pressed_color', 'CheckButton', mono_color_icon_and_font)
set_color('font_pressed_color', 'CheckButton', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
# Editor
@ -241,11 +244,11 @@ func _init() -> void:
set_color('forward_plus_color', 'Editor', Color(0.54902, 0.752941, 0.392157))
set_color('gl_compatibility_color', 'Editor', Color(0.447059, 0.698039, 0.890196))
set_color('mobile_color', 'Editor', Color(0.862745, 0.482353, 0.584314))
set_color('property_color_w', 'Editor', mono_color * Color(1, 1, 1, 0.8))
set_color('property_color_x', 'Editor', Color('#E16277') if dark_theme else Color('#670A18'))
set_color('property_color_y', 'Editor', Color('#C3EF65') if dark_theme else Color('#455E10'))
set_color('property_color_z', 'Editor', Color('#6AABF6') if dark_theme else Color('#143862'))
set_color('warning_color', 'Editor', Color('#D4C79F') if dark_theme else Color('#D47D03'))
set_color('property_color_w', 'Editor', mono_color_icon_and_font * Color(1, 1, 1, 0.8))
set_color('property_color_x', 'Editor', Color('#E16277') if dark_theme_icon_and_font else Color('#670A18'))
set_color('property_color_y', 'Editor', Color('#C3EF65') if dark_theme_icon_and_font else Color('#455E10'))
set_color('property_color_z', 'Editor', Color('#6AABF6') if dark_theme_icon_and_font else Color('#143862'))
set_color('warning_color', 'Editor', Color('#D4C79F') if dark_theme_icon_and_font else Color('#D47D03'))
set_color('prop_subsection', 'Editor', Color.TRANSPARENT)
set_constant('top_bar_separation', 'Editor', int(base_margin * scale))
@ -294,7 +297,7 @@ func _init() -> void:
# EditorProperty
set_color('property_color', 'EditorProperty', mono_color * Color(1, 1, 1, 0.6))
set_color('property_color', 'EditorProperty', mono_color_icon_and_font * Color(1, 1, 1, 0.6))
set_color('warning_color', 'EditorProperty', get_color('warning_color', 'Editor'))
set_stylebox('bg', 'EditorProperty', base_empty_sb)
set_stylebox('bg_selected', 'EditorProperty', base_empty_sb)
@ -358,14 +361,14 @@ func _init() -> void:
# FlatButton
set_color('font_color', 'FlatButton', mono_color * Color(1, 1, 1, 0.7))
set_color('font_disabled_color', 'FlatButton', mono_color * Color(1, 1, 1, 0.3))
set_color('font_focus_color', 'FlatButton', mono_color)
set_color('font_hover_color', 'FlatButton', mono_color)
set_color('font_hover_pressed_color', 'FlatButton', mono_color)
set_color('font_pressed_color', 'FlatButton', mono_color)
set_color('icon_disabled_color', 'FlatButton', mono_color * Color(1, 1, 1, 0.3))
set_color('icon_normal_color', 'FlatButton', mono_color * Color(1, 1, 1, 0.7))
set_color('font_color', 'FlatButton', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
set_color('font_disabled_color', 'FlatButton', mono_color_icon_and_font * Color(1, 1, 1, 0.3))
set_color('font_focus_color', 'FlatButton', mono_color_icon_and_font)
set_color('font_hover_color', 'FlatButton', mono_color_icon_and_font)
set_color('font_hover_pressed_color', 'FlatButton', mono_color_icon_and_font)
set_color('font_pressed_color', 'FlatButton', mono_color_icon_and_font)
set_color('icon_disabled_color', 'FlatButton', mono_color_icon_and_font * Color(1, 1, 1, 0.3))
set_color('icon_normal_color', 'FlatButton', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
set_stylebox('disabled', 'FlatButton', base_empty_wide_sb)
set_stylebox('disabled_mirrored', 'FlatButton', base_empty_wide_sb)
@ -381,14 +384,14 @@ func _init() -> void:
# FlatMenuButton
set_color('font_color', 'FlatMenuButton', mono_color * Color(1, 1, 1, 0.7))
set_color('font_disabled_color', 'FlatMenuButton', mono_color * Color(1, 1, 1, 0.3))
set_color('font_focus_color', 'FlatMenuButton', mono_color)
set_color('font_hover_color', 'FlatMenuButton', mono_color)
set_color('font_hover_pressed_color', 'FlatMenuButton', mono_color)
set_color('font_pressed_color', 'FlatMenuButton', mono_color)
set_color('icon_disabled_color', 'FlatMenuButton', mono_color * Color(1, 1, 1, 0.3))
set_color('icon_normal_color', 'FlatMenuButton', mono_color * Color(1, 1, 1, 0.7))
set_color('font_color', 'FlatMenuButton', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
set_color('font_disabled_color', 'FlatMenuButton', mono_color_icon_and_font * Color(1, 1, 1, 0.3))
set_color('font_focus_color', 'FlatMenuButton', mono_color_icon_and_font)
set_color('font_hover_color', 'FlatMenuButton', mono_color_icon_and_font)
set_color('font_hover_pressed_color', 'FlatMenuButton', mono_color_icon_and_font)
set_color('font_pressed_color', 'FlatMenuButton', mono_color_icon_and_font)
set_color('icon_disabled_color', 'FlatMenuButton', mono_color_icon_and_font * Color(1, 1, 1, 0.3))
set_color('icon_normal_color', 'FlatMenuButton', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
set_stylebox('disabled', 'FlatMenuButton', base_empty_wide_sb)
set_stylebox('disabled_mirrored', 'FlatMenuButton', base_empty_wide_sb)
@ -456,7 +459,7 @@ func _init() -> void:
# Label
set_color('font_color', 'Label', mono_color * Color(1, 1, 1, 0.7))
set_color('font_color', 'Label', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
empty_sb = base_empty_sb.duplicate()
# Keeping vertical margin low otherwise quick open looks bad
@ -465,7 +468,7 @@ func _init() -> void:
# LineEdit and TextEdit
set_color('font_placeholder_color', 'LineEdit', mono_color * Color(1, 1, 1, 0.4))
set_color('font_placeholder_color', 'LineEdit', mono_color_icon_and_font * Color(1, 1, 1, 0.4))
sb = base_sb.duplicate()
sb.bg_color = _get_base_color(-1.2 if dark_theme else -2.0)
@ -522,14 +525,14 @@ func _init() -> void:
set_constant('arrow_margin', 'OptionButton', int(base_margin * 3.5))
set_color('font_color', 'OptionButton', mono_color * Color(1, 1, 1, 0.7))
set_color('font_disabled_color', 'OptionButton', mono_color * Color(1, 1, 1, 0.3))
set_color('font_focus_color', 'OptionButton', mono_color)
set_color('font_hover_color', 'OptionButton', mono_color)
set_color('font_hover_pressed_color', 'OptionButton', mono_color)
set_color('font_pressed_color', 'OptionButton', mono_color)
set_color('icon_disabled_color', 'OptionButton', mono_color * Color(1, 1, 1, 0.3))
set_color('icon_normal_color', 'OptionButton', mono_color * Color(1, 1, 1, 0.7))
set_color('font_color', 'OptionButton', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
set_color('font_disabled_color', 'OptionButton', mono_color_icon_and_font * Color(1, 1, 1, 0.3))
set_color('font_focus_color', 'OptionButton', mono_color_icon_and_font)
set_color('font_hover_color', 'OptionButton', mono_color_icon_and_font)
set_color('font_hover_pressed_color', 'OptionButton', mono_color_icon_and_font)
set_color('font_pressed_color', 'OptionButton', mono_color_icon_and_font)
set_color('icon_disabled_color', 'OptionButton', mono_color_icon_and_font * Color(1, 1, 1, 0.3))
set_color('icon_normal_color', 'OptionButton', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
set_stylebox('disabled', 'OptionButton', button_disabled_sb)
set_stylebox('disabled_mirrored', 'OptionButton', button_disabled_sb)
@ -718,7 +721,7 @@ func _init() -> void:
# Tree
set_color('drop_position_color', 'Tree', mono_color * Color(1, 1, 1, 0.4))
set_color('font_color', 'Tree', mono_color * Color(1, 1, 1, 0.7))
set_color('font_color', 'Tree', mono_color_icon_and_font * Color(1, 1, 1, 0.7))
set_color('guide_color', 'Tree', Color.TRANSPARENT)
set_color('parent_hl_line_color', 'Tree', mono_color * Color(1, 1, 1, relationship_line_opacity))
set_constant('children_hl_line_width', 'Tree', 0)
@ -798,4 +801,4 @@ func _set_border(sb: StyleBoxFlat, color: Color, width: float = 1, blend: bool =
[resource]
script = SubResource("GDScript_hhmc0")
script = SubResource("GDScript_hhmc0")