apply color theme auto
This commit is contained in:
parent
e5f9c4410b
commit
f3ffdb9d6a
1 changed files with 41 additions and 105 deletions
|
@ -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
|
||||
|
|
Reference in a new issue