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

Function _make_ttk_scrollbar

PySimpleGUI/PySimpleGUI.py:15468–15582  ·  view source on GitHub ↗

Creates a ttk scrollbar for elements as they are being added to the layout :param element: The element :type element: (Element) :param orientation: The orientation vertical ('v') or horizontal ('h') :type orientation: (str) :param window: The window containin

(element, orientation, window)

Source from the content-addressed store, hash-verified

15466
15467
15468def _make_ttk_scrollbar(element, orientation, window):
15469 """
15470 Creates a ttk scrollbar for elements as they are being added to the layout
15471
15472 :param element: The element
15473 :type element: (Element)
15474 :param orientation: The orientation vertical ('v') or horizontal ('h')
15475 :type orientation: (str)
15476 :param window: The window containing the scrollbar
15477 :type window: (Window)
15478 """
15479
15480 style = ttk.Style()
15481 _change_ttk_theme(style, window.TtkTheme)
15482 if orientation[0].lower() == 'v':
15483 orient = 'vertical'
15484 style_name = _make_ttk_style_name('.Vertical.TScrollbar', element)
15485 # style_name_thumb = _make_ttk_style_name('.Vertical.TScrollbar.thumb', element)
15486 element.vsb_style = style
15487 element.vsb = ttk.Scrollbar(element.element_frame, orient=orient, command=element.Widget.yview, style=style_name)
15488 element.vsb_style_name = style_name
15489 else:
15490 orient = 'horizontal'
15491 style_name = _make_ttk_style_name('.Horizontal.TScrollbar', element)
15492 element.hsb_style = style
15493 element.hsb = ttk.Scrollbar(element.element_frame, orient=orient, command=element.Widget.xview, style=style_name)
15494 element.hsb_style_name = style_name
15495
15496 # ------------------ Get the colors using heirarchy of element, window, options, settings ------------------
15497 # Trough Color
15498 if element.ttk_part_overrides.sbar_trough_color is not None:
15499 trough_color = element.ttk_part_overrides.sbar_trough_color
15500 elif window.ttk_part_overrides.sbar_trough_color is not None:
15501 trough_color = window.ttk_part_overrides.sbar_trough_color
15502 elif ttk_part_overrides_from_options.sbar_trough_color is not None:
15503 trough_color = ttk_part_overrides_from_options.sbar_trough_color
15504 else:
15505 trough_color = element.scroll_trough_color
15506 # Relief
15507 if element.ttk_part_overrides.sbar_relief is not None:
15508 scroll_relief = element.ttk_part_overrides.sbar_relief
15509 elif window.ttk_part_overrides.sbar_relief is not None:
15510 scroll_relief = window.ttk_part_overrides.sbar_relief
15511 elif ttk_part_overrides_from_options.sbar_relief is not None:
15512 scroll_relief = ttk_part_overrides_from_options.sbar_relief
15513 else:
15514 scroll_relief = element.scroll_relief
15515 # Frame Color
15516 if element.ttk_part_overrides.sbar_frame_color is not None:
15517 frame_color = element.ttk_part_overrides.sbar_frame_color
15518 elif window.ttk_part_overrides.sbar_frame_color is not None:
15519 frame_color = window.ttk_part_overrides.sbar_frame_color
15520 elif ttk_part_overrides_from_options.sbar_frame_color is not None:
15521 frame_color = ttk_part_overrides_from_options.sbar_frame_color
15522 else:
15523 frame_color = element.scroll_frame_color
15524 # Background Color
15525 if element.ttk_part_overrides.sbar_background_color is not None:

Callers 2

__init__Method · 0.85
PackFormIntoFrameFunction · 0.85

Calls 2

_change_ttk_themeFunction · 0.85
_make_ttk_style_nameFunction · 0.85

Tested by

no test coverage detected