Skip to content

Commit 37b375d

Browse files
committed
fixed wrong json class names and added fix for backwards compatibility in ThemeManager #1538
1 parent cd85a1c commit 37b375d

6 files changed

Lines changed: 28 additions & 22 deletions

File tree

customtkinter/assets/themes/blue.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
"text_color":["gray10", "#DCE4EE"],
3535
"placeholder_text_color": ["gray52", "gray62"]
3636
},
37-
"CTkCheckbox": {
37+
"CTkCheckBox": {
3838
"corner_radius": 6,
3939
"border_width": 3,
4040
"fg_color": ["#3B8ED0", "#1F6AA5"],
@@ -55,7 +55,7 @@
5555
"text_color": ["gray10", "#DCE4EE"],
5656
"text_color_disabled": ["gray60", "gray45"]
5757
},
58-
"CTkRadiobutton": {
58+
"CTkRadioButton": {
5959
"corner_radius": 1000,
6060
"border_width_checked": 6,
6161
"border_width_unchecked": 3,

customtkinter/assets/themes/dark-blue.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
"text_color": ["gray14", "gray84"],
3535
"placeholder_text_color": ["gray52", "gray62"]
3636
},
37-
"CTkCheckbox": {
37+
"CTkCheckBox": {
3838
"corner_radius": 6,
3939
"border_width": 3,
4040
"fg_color": ["#3a7ebf", "#1f538d"],
@@ -55,7 +55,7 @@
5555
"text_color": ["gray14", "gray84"],
5656
"text_color_disabled": ["gray60", "gray45"]
5757
},
58-
"CTkRadiobutton": {
58+
"CTkRadioButton": {
5959
"corner_radius": 1000,
6060
"border_width_checked": 6,
6161
"border_width_unchecked": 3,

customtkinter/assets/themes/green.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
"text_color":["gray10", "#DCE4EE"],
3535
"placeholder_text_color": ["gray52", "gray62"]
3636
},
37-
"CTkCheckbox": {
37+
"CTkCheckBox": {
3838
"corner_radius": 6,
3939
"border_width": 3,
4040
"fg_color": ["#2CC985", "#2FA572"],
@@ -55,7 +55,7 @@
5555
"text_color": ["gray10", "#DCE4EE"],
5656
"text_color_disabled": ["gray60", "gray45"]
5757
},
58-
"CTkRadiobutton": {
58+
"CTkRadioButton": {
5959
"corner_radius": 1000,
6060
"border_width_checked": 6,
6161
"border_width_unchecked": 3,

customtkinter/windows/widgets/ctk_checkbox.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -51,20 +51,20 @@ def __init__(self,
5151
self._checkbox_height = checkbox_height
5252

5353
# color
54-
self._fg_color = ThemeManager.theme["CTkCheckbox"]["fg_color"] if fg_color is None else self._check_color_type(fg_color)
55-
self._hover_color = ThemeManager.theme["CTkCheckbox"]["hover_color"] if hover_color is None else self._check_color_type(hover_color)
56-
self._border_color = ThemeManager.theme["CTkCheckbox"]["border_color"] if border_color is None else self._check_color_type(border_color)
57-
self._checkmark_color = ThemeManager.theme["CTkCheckbox"]["checkmark_color"] if checkmark_color is None else self._check_color_type(checkmark_color)
54+
self._fg_color = ThemeManager.theme["CTkCheckBox"]["fg_color"] if fg_color is None else self._check_color_type(fg_color)
55+
self._hover_color = ThemeManager.theme["CTkCheckBox"]["hover_color"] if hover_color is None else self._check_color_type(hover_color)
56+
self._border_color = ThemeManager.theme["CTkCheckBox"]["border_color"] if border_color is None else self._check_color_type(border_color)
57+
self._checkmark_color = ThemeManager.theme["CTkCheckBox"]["checkmark_color"] if checkmark_color is None else self._check_color_type(checkmark_color)
5858

5959
# shape
60-
self._corner_radius = ThemeManager.theme["CTkCheckbox"]["corner_radius"] if corner_radius is None else corner_radius
61-
self._border_width = ThemeManager.theme["CTkCheckbox"]["border_width"] if border_width is None else border_width
60+
self._corner_radius = ThemeManager.theme["CTkCheckBox"]["corner_radius"] if corner_radius is None else corner_radius
61+
self._border_width = ThemeManager.theme["CTkCheckBox"]["border_width"] if border_width is None else border_width
6262

6363
# text
6464
self._text = text
6565
self._text_label: Union[tkinter.Label, None] = None
66-
self._text_color = ThemeManager.theme["CTkCheckbox"]["text_color"] if text_color is None else self._check_color_type(text_color)
67-
self._text_color_disabled = ThemeManager.theme["CTkCheckbox"]["text_color_disabled"] if text_color_disabled is None else self._check_color_type(text_color_disabled)
66+
self._text_color = ThemeManager.theme["CTkCheckBox"]["text_color"] if text_color is None else self._check_color_type(text_color)
67+
self._text_color_disabled = ThemeManager.theme["CTkCheckBox"]["text_color_disabled"] if text_color_disabled is None else self._check_color_type(text_color_disabled)
6868

6969
# font
7070
self._font = CTkFont() if font is None else self._check_font_type(font)

customtkinter/windows/widgets/ctk_radiobutton.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -50,20 +50,20 @@ def __init__(self,
5050
self._radiobutton_height = radiobutton_height
5151

5252
# color
53-
self._fg_color = ThemeManager.theme["CTkRadiobutton"]["fg_color"] if fg_color is None else self._check_color_type(fg_color)
54-
self._hover_color = ThemeManager.theme["CTkRadiobutton"]["hover_color"] if hover_color is None else self._check_color_type(hover_color)
55-
self._border_color = ThemeManager.theme["CTkRadiobutton"]["border_color"] if border_color is None else self._check_color_type(border_color)
53+
self._fg_color = ThemeManager.theme["CTkRadioButton"]["fg_color"] if fg_color is None else self._check_color_type(fg_color)
54+
self._hover_color = ThemeManager.theme["CTkRadioButton"]["hover_color"] if hover_color is None else self._check_color_type(hover_color)
55+
self._border_color = ThemeManager.theme["CTkRadioButton"]["border_color"] if border_color is None else self._check_color_type(border_color)
5656

5757
# shape
58-
self._corner_radius = ThemeManager.theme["CTkRadiobutton"]["corner_radius"] if corner_radius is None else corner_radius
59-
self._border_width_unchecked = ThemeManager.theme["CTkRadiobutton"]["border_width_unchecked"] if border_width_unchecked is None else border_width_unchecked
60-
self._border_width_checked = ThemeManager.theme["CTkRadiobutton"]["border_width_checked"] if border_width_checked is None else border_width_checked
58+
self._corner_radius = ThemeManager.theme["CTkRadioButton"]["corner_radius"] if corner_radius is None else corner_radius
59+
self._border_width_unchecked = ThemeManager.theme["CTkRadioButton"]["border_width_unchecked"] if border_width_unchecked is None else border_width_unchecked
60+
self._border_width_checked = ThemeManager.theme["CTkRadioButton"]["border_width_checked"] if border_width_checked is None else border_width_checked
6161

6262
# text
6363
self._text = text
6464
self._text_label: Union[tkinter.Label, None] = None
65-
self._text_color = ThemeManager.theme["CTkRadiobutton"]["text_color"] if text_color is None else self._check_color_type(text_color)
66-
self._text_color_disabled = ThemeManager.theme["CTkRadiobutton"]["text_color_disabled"] if text_color_disabled is None else self._check_color_type(text_color_disabled)
65+
self._text_color = ThemeManager.theme["CTkRadioButton"]["text_color"] if text_color is None else self._check_color_type(text_color)
66+
self._text_color_disabled = ThemeManager.theme["CTkRadioButton"]["text_color_disabled"] if text_color_disabled is None else self._check_color_type(text_color_disabled)
6767

6868
# font
6969
self._font = CTkFont() if font is None else self._check_font_type(font)

customtkinter/windows/widgets/theme/theme_manager.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,12 @@ def load_theme(cls, theme_name_or_path: str):
3737
else:
3838
cls.theme[key] = cls.theme[key]["Linux"]
3939

40+
# fix name inconsistencies
41+
if "CTkCheckbox" in cls.theme.keys():
42+
cls.theme["CTkCheckBox"] = cls.theme.pop("CTkCheckbox")
43+
if "CTkRadiobutton" in cls.theme.keys():
44+
cls.theme["CTkRadioButton"] = cls.theme.pop("CTkRadiobutton")
45+
4046
@classmethod
4147
def save_theme(cls):
4248
if cls._currently_loaded_theme is not None:

0 commit comments

Comments
 (0)