@@ -24,7 +24,6 @@ def __init__(self):
2424 self .initialize_variables ()
2525 self .create_gui ()
2626 self .file_setup ()
27- self .settings_gui_setup ()
2827
2928
3029 def create_gui (self ):
@@ -38,7 +37,7 @@ def create_gui(self):
3837 self .goal_gui_setup ()
3938 self .progress_gui_setup ()
4039 self .streak_gui_setup ()
41-
40+ self . settings_gui_setup ()
4241
4342
4443 def file_setup (self ):
@@ -66,12 +65,12 @@ def file_setup(self):
6665 self .workbook .save (self .data_file )
6766
6867 self .data_manager = DataManager (self , self .timer_manager , self .workbook , self .worksheet )
69-
70- print ("New file created" )
71- self .data_manager .initialize_new_file_variables ()
7268
69+ self .data_manager .initialize_new_file_variables ()
7370 self .data_manager .customize_excel ()
7471
72+ print ("New file created" )
73+
7574
7675 def initialize_variables (self ):
7776 self .default_choice = ctk .StringVar (value = "1 hour" )
@@ -99,19 +98,18 @@ def main_frame_gui_setup(self):
9998
10099 self .statistics_frame = ctk .CTkFrame (self .WINDOW , fg_color = main_frame_color , height = HEIGHT + ((widget_padding_x + frame_padding )* 2 ), width = WIDTH , corner_radius = 0 )
101100 self .statistics_frame .grid (column = 2 , row = 0 , padx = main_frame_pad_x )
102- self .statistics_frame .grid_forget ()
103101
104102 self .settings_frame = ctk .CTkFrame (self .WINDOW , fg_color = main_frame_color , height = HEIGHT + ((widget_padding_x + frame_padding )* 2 ), width = WIDTH , corner_radius = 0 )
105103 self .settings_frame .grid (column = 2 , row = 0 , padx = main_frame_pad_x )
106104 self .settings_frame .grid_forget ()
107105
108106 self .achievements_frame = ctk .CTkFrame (self .WINDOW , fg_color = main_frame_color , height = HEIGHT + ((widget_padding_x + frame_padding )* 2 ), width = WIDTH , corner_radius = 0 )
109107 self .achievements_frame .grid (column = 2 , row = 0 , padx = main_frame_pad_x )
110- self .achievements_frame .grid_forget ()
111108
112109 self .history_frame = ctk .CTkFrame (self .WINDOW , fg_color = main_frame_color , height = HEIGHT + ((widget_padding_x + frame_padding )* 2 ), width = WIDTH , corner_radius = 0 )
113110 self .history_frame .grid (column = 2 , row = 0 , padx = main_frame_pad_x )
114- self .history_frame .grid_forget ()
111+
112+ self .forget_and_propagate (list = [self .statistics_frame , self .settings_frame , self .achievements_frame , self .history_frame ])
115113
116114
117115 def tab_frames_gui_setup (self ):
@@ -250,14 +248,25 @@ def save_data_gui(self):
250248
251249
252250 def settings_gui_setup (self ):
251+ color_select_frame = ctk .CTkFrame (self .settings_frame , fg_color = frame_color , height = 200 , width = int (frame_width / 1.25 ), corner_radius = 10 )
252+ color_select_frame .grid (column = 0 , row = 0 , padx = frame_padding , pady = frame_padding )
253+ color_label = ctk .CTkLabel (color_select_frame , text = "Color" , font = (font_family , font_size ), text_color = font_color )
254+ color_label .place (anchor = "nw" , relx = 0.05 , rely = 0.05 )
255+ color_dropdown = ctk .CTkComboBox (color_select_frame , values = ["Orange" , "Green" , "Blue" ], variable = default_color , state = "readonly" , width = 150 , height = 30 ,
256+ dropdown_font = (font_family , int (font_size * 0.75 )), font = (font_family , int (font_size )), fg_color = border_frame_color , button_color = border_frame_color )
257+ color_dropdown .place (anchor = "center" , relx = 0.5 , rely = 0.45 )
258+
253259 reset_frame = ctk .CTkFrame (self .settings_frame , fg_color = tab_color )
254260 reset_frame .place (anchor = "s" , relx = 0.5 , rely = 0.985 )
255261 reset_data_btn = ctk .CTkButton (reset_frame , text = "Reset Data" , font = (font_family , font_size ), fg_color = button_color , text_color = button_font_color ,
256262 border_color = frame_border_color , hover_color = button_highlight_color , height = button_height , command = self .reset_data , width = 450 )
257263 reset_data_btn .pack ()
258264
259-
260265
266+ def forget_and_propagate (self , list ):
267+ for item in list :
268+ item .grid_forget ()
269+ item .grid_propagate (False )
261270
262271
263272 def switch_tab (self , tab = str ):
0 commit comments