MCPcopy Index your code
hub / github.com/PySimpleGUI/PySimpleGUI / make_window

Function make_window

DemoPrograms/Demo_Desktop_Widget_Manual_Counter.py:46–91  ·  view source on GitHub ↗
(location, test_window=False)

Source from the content-addressed store, hash-verified

44
45
46def make_window(location, test_window=False):
47 title_font = sg.user_settings_get_entry('-title font-', 'Courier 8')
48 button_font = sg.user_settings_get_entry('-button font-', 'Courier 20')
49 sg.user_settings_set_entry('-button font-', button_font)
50 title = sg.user_settings_get_entry('-title-', '')
51 main_number_font = sg.user_settings_get_entry('-main number font-', 'Courier 70')
52 sg.user_settings_set_entry('-main number font-', main_number_font)
53
54 if not test_window:
55 theme = sg.user_settings_get_entry('-theme-', THEME)
56 sg.theme(theme)
57
58 alpha = sg.user_settings_get_entry('-alpha-', ALPHA)
59
60 # ------------------- Window Layout -------------------
61 # If this is a test window (for choosing theme), then uses some extra Text Elements to display theme info
62 # and also enables events for the elements to make the window easy to close
63 if test_window:
64 top_elements = [[sg.Text(title, font=title_font, k='-TITLE-', enable_events=True)],
65 [sg.Text('Click to close', font=title_font, enable_events=True)],
66 [sg.Text('This is theme', font=title_font, enable_events=True)],
67 [sg.Text(sg.theme(), font=title_font, enable_events=True)]]
68 right_click_menu = [[''], ['Exit', ]]
69 else:
70 top_elements = [[sg.Stretch(), sg.Text(title, font=title_font, k='-TITLE-'), sg.Stretch()]]
71
72 right_click_menu = [[''],
73 ['Set Counter', 'Choose Title', 'Edit Me', 'Change Theme', 'Set Button Font',
74 'Set Title Font', 'Set Main Font', 'Set Click Sound', 'Show Settings', 'Alpha', [str(x) for x in range(1, 11)], 'Exit', ]]
75
76 layout = top_elements + \
77 [[sg.Column([[sg.pin(sg.Text('0', font=main_number_font, k='-MAIN INFO NUM-', justification='c', enable_events=test_window, pad=(0, 0)))]],justification='c', element_justification='c', pad=0)]] + \
78 [[sg.T('+', font=button_font, enable_events=True, pad=0), sg.Stretch(), sg.T('-', font=button_font, enable_events=True, pad=0)]]
79
80 try:
81 window = sg.Window('Clicky Counter', layout, location=location, no_titlebar=True, grab_anywhere=True, margins=(0, 0), element_padding=0, alpha_channel=alpha, finalize=True, right_click_menu=right_click_menu, right_click_menu_tearoff=False,
82 enable_close_attempted_event=True, keep_on_top=True)
83 except Exception as e:
84 if sg.popup_yes_no('Error creating your window', e, 'These are your current settings:', sg.user_settings(),
85 'Do you want to delete your settings file?') == 'Yes':
86 sg.user_settings_delete_filename()
87 sg.popup('Settings deleted.', 'Please restart your program')
88 exit()
89 window = None
90
91 return window
92
93
94def main():

Callers 2

choose_themeFunction · 0.70
mainFunction · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected