(theme=None)
| 14 | use_custom_titlebar = True if sg.running_trinket() else False |
| 15 | |
| 16 | def make_window(theme=None): |
| 17 | |
| 18 | NAME_SIZE = 23 |
| 19 | |
| 20 | |
| 21 | def name(name): |
| 22 | dots = NAME_SIZE-len(name)-2 |
| 23 | return sg.Text(name + ' ' + '•'*dots, size=(NAME_SIZE,1), justification='r',pad=(0,0), font='Courier 10') |
| 24 | |
| 25 | sg.theme(theme) |
| 26 | |
| 27 | # NOTE that we're using our own LOCAL Menu element |
| 28 | if use_custom_titlebar: |
| 29 | Menu = sg.MenubarCustom |
| 30 | else: |
| 31 | Menu = sg.Menu |
| 32 | |
| 33 | treedata = sg.TreeData() |
| 34 | |
| 35 | treedata.Insert("", '_A_', 'Tree Item 1', [1234], ) |
| 36 | treedata.Insert("", '_B_', 'B', []) |
| 37 | treedata.Insert("_A_", '_A1_', 'Sub Item 1', ['can', 'be', 'anything'], ) |
| 38 | |
| 39 | layout_l = [ |
| 40 | [name('Text'), sg.Text('Text')], |
| 41 | [name('Input'), sg.Input(s=15)], |
| 42 | [name('Multiline'), sg.Multiline(s=(15,2))], |
| 43 | [name('Output'), sg.Output(s=(15,2))], |
| 44 | [name('Combo'), sg.Combo(sg.theme_list(), default_value=sg.theme(), s=(15,22), enable_events=True, readonly=True, k='-COMBO-')], |
| 45 | [name('OptionMenu'), sg.OptionMenu(['OptionMenu',],s=(15,2))], |
| 46 | [name('Checkbox'), sg.Checkbox('Checkbox')], |
| 47 | [name('Radio'), sg.Radio('Radio', 1)], |
| 48 | [name('Spin'), sg.Spin(['Spin',], s=(15,2))], |
| 49 | [name('Button'), sg.Button('Button')], |
| 50 | [name('ButtonMenu'), sg.ButtonMenu('ButtonMenu', sg.MENU_RIGHT_CLICK_EDITME_EXIT)], |
| 51 | [name('Slider'), sg.Slider((0,10), orientation='h', s=(10,15))], |
| 52 | [name('Listbox'), sg.Listbox(['Listbox', 'Listbox 2'], no_scrollbar=True, s=(15,2))], |
| 53 | [name('Image'), sg.Image(sg.EMOJI_BASE64_HAPPY_THUMBS_UP)], |
| 54 | [name('Graph'), sg.Graph((125, 50), (0,0), (125,50), k='-GRAPH-')] ] |
| 55 | |
| 56 | layout_r = [[name('Canvas'), sg.Canvas(background_color=sg.theme_button_color()[1], size=(125,40))], |
| 57 | [name('ProgressBar'), sg.ProgressBar(100, orientation='h', s=(10,20), k='-PBAR-')], |
| 58 | [name('Table'), sg.Table([[1,2,3], [4,5,6]], ['Col 1','Col 2','Col 3'], num_rows=2)], |
| 59 | [name('Tree'), sg.Tree(treedata, ['Heading',], num_rows=3)], |
| 60 | [name('Horizontal Separator'), sg.HSep()], |
| 61 | [name('Vertical Separator'), sg.VSep()], |
| 62 | [name('Frame'), sg.Frame('Frame', [[sg.T(s=15)]])], |
| 63 | [name('Column'), sg.Column([[sg.T(s=15)]])], |
| 64 | [name('Tab, TabGroup'), sg.TabGroup([[sg.Tab('Tab1',[[sg.T(s=(15,2))]]), sg.Tab('Tab2', [[]])]])], |
| 65 | [name('Pane'), sg.Pane([sg.Col([[sg.T('Pane 1')]]), sg.Col([[sg.T('Pane 2')]])])], |
| 66 | [name('Push'), sg.Push(), sg.T('Pushed over')], |
| 67 | [name('VPush'), sg.VPush()], |
| 68 | [name('Sizer'), sg.Sizer(1,1)], |
| 69 | [name('StatusBar'), sg.StatusBar('StatusBar')], |
| 70 | [name('Sizegrip'), sg.Sizegrip()] ] |
| 71 | |
| 72 | # Note - LOCAL Menu element is used (see about for how that's defined) |
| 73 | layout = [[Menu([['File', ['Exit']], ['Edit', ['Edit Me', ]]], k='-CUST MENUBAR-',p=0)], |
no test coverage detected