apply color theme auto

This commit is contained in:
dez 2024-02-07 14:17:46 +01:00
parent e5f9c4410b
commit f3ffdb9d6a

View file

@ -49,18 +49,26 @@ def generate_theme_json(col_theme, is_dark):
if is_dark:
bg_color = ["gray17", "gray20"]
text_color = ["gray10", "#DCE4EE"]
disabled_text_col = ["gray20", "gray10"]
else:
bg_color = ["gray86", "gray20"]
text_color = ["#111111", "#000000"]
disabled_text_col = ["#222222", "#111111"]
col_theme_luminance = 0.299 * col_theme[0] + 0.587 * col_theme[1] + 0.114 * col_theme[2]
col_theme_is_dark = col_theme_luminance < 128
if col_theme_is_dark:
txt_col_theme = ["gray10", "#DCE4EE"]
else:
txt_col_theme = ["#111111", "#000000"]
fg_color = col_theme
combo_box_col = col_theme
bg_col_theme = adjust_brightness_based_on_luminance(col_theme, 20)
disabled_col_theme = adjust_brightness_based_on_luminance(col_theme, -30)
border_col_theme = adjust_brightness_based_on_luminance(col_theme, -20)
col_theme = rgb_to_hex(col_theme)
# Generate theme dictionary
theme_data = {
@ -86,20 +94,11 @@ def generate_theme_json(col_theme, is_dark):
"CTkButton": {
"corner_radius": 6,
"border_width": 0,
"fg_color": [
"#3B8ED0",
"#1F6AA5"
],
"fg_color": col_theme,
"hover_color": bg_col_theme,
"border_color": [
"#3E454A",
"#949A9F"
],
"text_color": text_color,
"text_color_disabled": [
"gray74",
"gray60"
]
"border_color": border_col_theme,
"text_color": txt_col_theme,
"text_color_disabled": disabled_text_col
},
"CTkLabel": {
"corner_radius": 0,
@ -127,22 +126,10 @@ def generate_theme_json(col_theme, is_dark):
"CTkCheckBox": {
"corner_radius": 6,
"border_width": 3,
"fg_color": [
"#3B8ED0",
"#1F6AA5"
],
"border_color": [
"#3E454A",
"#949A9F"
],
"hover_color": [
"#3B8ED0",
"#1F6AA5"
],
"checkmark_color": [
"#DCE4EE",
"gray90"
],
"fg_color": col_theme,
"border_color": border_col_theme,
"hover_color": bg_col_theme,
"checkmark_color": txt_col_theme,
"text_color": text_color,
"text_color_disabled": [
"gray60",
@ -153,22 +140,13 @@ def generate_theme_json(col_theme, is_dark):
"corner_radius": 1000,
"border_width": 3,
"button_length": 0,
"fg_color": [
"#939BA2",
"#4A4D50"
],
"progress_color": [
"#3B8ED0",
"#1F6AA5"
],
"fg_color": border_col_theme,
"progress_color": col_theme,
"button_color": [
"gray36",
"#D5D9DE"
],
"button_hover_color": [
"gray20",
"gray100"
],
"button_hover_color": bg_col_theme,
"text_color": text_color,
"text_color_disabled": [
"gray60",
@ -179,14 +157,8 @@ def generate_theme_json(col_theme, is_dark):
"corner_radius": 1000,
"border_width_checked": 6,
"border_width_unchecked": 3,
"fg_color": [
"#3B8ED0",
"#1F6AA5"
],
"border_color": [
"#3E454A",
"#949A9F"
],
"fg_color": col_theme,
"border_color": border_col_theme,
"hover_color": bg_col_theme,
"text_color": text_color,
"text_color_disabled": [
@ -201,10 +173,7 @@ def generate_theme_json(col_theme, is_dark):
"#939BA2",
"#4A4D50"
],
"progress_color": [
"#3B8ED0",
"#1F6AA5"
],
"progress_color": col_theme,
"border_color": [
"gray",
"gray"
@ -215,29 +184,17 @@ def generate_theme_json(col_theme, is_dark):
"button_corner_radius": 1000,
"border_width": 6,
"button_length": 0,
"fg_color": [
"#939BA2",
"#4A4D50"
],
"fg_color": disabled_col_theme,
"progress_color": [
"gray40",
"#AAB0B5"
],
"button_color": [
"#3B8ED0",
"#1F6AA5"
],
"button_hover_color": [
"#36719F",
"#144870"
]
"button_color": col_theme,
"button_hover_color": bg_col_theme
},
"CTkOptionMenu": {
"corner_radius": 6,
"fg_color": [
"#3B8ED0",
"#1F6AA5"
],
"fg_color": col_theme,
"button_color": col_theme,
"button_hover_color": [
"#27577D",
@ -247,10 +204,7 @@ def generate_theme_json(col_theme, is_dark):
"#DCE4EE",
"#DCE4EE"
],
"text_color_disabled": [
"gray74",
"gray60"
]
"text_color_disabled": disabled_text_col
},
"CTkComboBox": {
"corner_radius": 6,
@ -297,14 +251,8 @@ def generate_theme_json(col_theme, is_dark):
"#979DA2",
"gray29"
],
"selected_color": [
"#3B8ED0",
"#1F6AA5"
],
"selected_hover_color": [
"#36719F",
"#144870"
],
"selected_color": col_theme,
"selected_hover_color": bg_col_theme,
"unselected_color": [
"#979DA2",
"gray29"
@ -317,10 +265,7 @@ def generate_theme_json(col_theme, is_dark):
"#DCE4EE",
"#DCE4EE"
],
"text_color_disabled": [
"gray74",
"gray60"
]
"text_color_disabled": disabled_text_col
},
"CTkTextbox": {
"corner_radius": 6,
@ -350,18 +295,9 @@ def generate_theme_json(col_theme, is_dark):
]
},
"DropdownMenu": {
"fg_color": [
"gray90",
"gray20"
],
"hover_color": [
"gray75",
"gray28"
],
"text_color": [
"gray10",
"gray90"
]
"fg_color": bg_color,
"hover_color": bg_col_theme,
"text_color": txt_col_theme
},
"CTkFont": {
"macOS": {
@ -381,12 +317,12 @@ def generate_theme_json(col_theme, is_dark):
}
},
"provenance": {
"theme name": "Blue",
"theme author": "Tom Schimansky",
"date created": "Aug 17 2023 10:47:28",
"last modified by": "Clive Bostock",
"last modified": "Aug 17 2023 10:47:28",
"created with": "CTk Theme Builder v2.4.0",
"theme name": col_theme,
"theme author": "generated theme by spitfire launcher",
"date created": None,
"last modified by": None,
"last modified": None,
"created with": "https://spitfirebrowser.com/",
"keystone colour": None,
"harmony method": None,
"harmony differential": None