improved settings bar
This commit is contained in:
25
gui.py
25
gui.py
@ -79,6 +79,12 @@ H_SEPARATOR_PAD = (1, 20)
|
||||
OUTPUT_TEXT_PAD = (5, (20, 5))
|
||||
WINDOW_MARGIN = (60, 90)
|
||||
MIN_WINDOW_SIZE = (880, 660)
|
||||
SETTINGS_PANEL_MIN_HEIGHT = 320
|
||||
SETTINGS_PANEL_HEIGHT_MARGIN = 230
|
||||
SETTINGS_PANEL_MIN_WIDTH = 320
|
||||
SETTINGS_PANEL_WIDTH_COMPACT = 420
|
||||
SETTINGS_PANEL_WIDTH_WIDE = 480
|
||||
SETTINGS_PANEL_WIDTH_MARGIN = 60
|
||||
|
||||
|
||||
#### ---- Setting GUI
|
||||
@ -120,11 +126,27 @@ def get_screen_size():
|
||||
|
||||
return WINDOW_SIZE
|
||||
|
||||
def get_settings_panel_size(window_size):
|
||||
window_width, window_height = window_size
|
||||
desired_width = SETTINGS_PANEL_WIDTH_COMPACT if COMPACT_LAYOUT else SETTINGS_PANEL_WIDTH_WIDE
|
||||
available_width = window_width - (GRAPH_CANVAS_SIZE[0] * 2) - SETTINGS_PANEL_WIDTH_MARGIN
|
||||
|
||||
if available_width > 0:
|
||||
width = min(desired_width, available_width)
|
||||
if available_width >= SETTINGS_PANEL_MIN_WIDTH:
|
||||
width = max(width, SETTINGS_PANEL_MIN_WIDTH)
|
||||
else:
|
||||
width = desired_width
|
||||
|
||||
height = max(SETTINGS_PANEL_MIN_HEIGHT, window_height - SETTINGS_PANEL_HEIGHT_MARGIN)
|
||||
return (int(width), int(height))
|
||||
|
||||
def setup_gui(params):
|
||||
|
||||
sg.theme("DarkBlue12")
|
||||
|
||||
window_size = get_screen_size()
|
||||
settings_panel_size = get_settings_panel_size(window_size)
|
||||
|
||||
layout_input_col1 = [[sg.Text(SET_TEMPERATURE_TEXT_1, size=(SET_TEXT_WIDTH, 1)), sg.Push(),
|
||||
sg.Input(params['Temp_1'], disabled_readonly_background_color="Gray", size=(SET_INPUT_WIDTH,1), key='-InputT1-', disabled = True)],
|
||||
@ -273,7 +295,8 @@ def setup_gui(params):
|
||||
[sg.Button(SET_START_BUTTON_TEXT, key='-StartCycle-', disabled_button_color=("Gray22", "Blue"), disabled=True), sg.Button(SET_STOP_BUTTON_TEXT, disabled_button_color=("Gray22", "Blue"), key='-StopCycle-', disabled=True), sg.Button(SET_RAMP_BUTTON_TEXT, key='-StartRamp-', disabled_button_color=("Gray22", "Blue")), sg.Button(SET_AD9833_BUTTON_TEXT, key='-StartRamp9833-', disabled_button_color=("Gray22", "Blue"))]]
|
||||
|
||||
|
||||
layout = [[sg.Column(layout_input_col1, pad=(0,0)), sg.VSeparator(pad=(4,0)), sg.Column(layout_input_col2, pad=(0,0)), sg.VSeparator(pad=(4,0)), sg.Column(layout_input_col3, pad=(0,0))],
|
||||
layout = [[sg.Column(layout_input_col1, pad=(0,0)), sg.VSeparator(pad=(4,0)), sg.Column(layout_input_col2, pad=(0,0)), sg.VSeparator(pad=(4,0)),
|
||||
sg.Column(layout_input_col3, pad=(0,0), scrollable=True, vertical_scroll_only=True, size=settings_panel_size, key='-SettingsPanel-', expand_y=True)],
|
||||
|
||||
[sg.HSeparator(pad=(25,10))],
|
||||
|
||||
|
||||
Reference in New Issue
Block a user