I have been working on this tree in PysimpleGUI, suddenly the insert method decides to stop working when I give it a list full of data. I debugged nearly everything about it, the function insert itself stopped working or adding anything to tree data. Here is code
import PySimpleGUI as sg
from services import HandlePacks
Cardpacks = HandlePacks()
card_packs = Cardpacks.get_packs()
treeData = sg.TreeData()
for pack_name, card_pack in card_packs:
print("Adding pack:", pack_name)
treeData.insert("", str(pack_name), str(pack_name), "", icon=None)
for card in card_pack:
card_name = card["name"]
print("Adding card:", card_name)
treeData.insert(str(pack_name), str(card_name), str(card_name), "", icon=None)
print(treeData)
sg.theme("LightGrey1")
tree = sg.Tree(
treeData,
font=("Helvetica", 16),
col0_width=30,
enable_events=True,
show_expanded=False,
key="-TREE-",
)
delete_button = sg.Button("Delete Pack", disabled=True)
layout = [
[sg.Text("All your Packs:", font=("Calibri", 24))],
[tree],
[delete_button],
]
window = sg.Window("Memory Game", layout, size=(600, 500))
while True:
event, values = window.read()
if event in (None, "Exit"):
break
if event == "-TREE-":
selected_item = values["-TREE-"]
if selected_item:
delete_button.update(disabled=False)
else:
delete_button.update(disabled=True)
elif event == "Delete Pack":
selected_item = values["-TREE-"][0]
Cardpacks.delete_pack(selected_item)
window.refresh()
window.close()
I tried changing it from Insert to insert and it didn't help. Any help would be appreciated.
