manual model editing added

main
Justus Jan Nico Wolff 2024-06-07 21:48:52 +02:00
parent 78196290c2
commit 48986e8003
3 changed files with 30 additions and 0 deletions

View File

@ -41,4 +41,6 @@
"settings": "Einstellungen",
"gamex": "Spiel x Groesse",
"gamey": "Spiel y Groesse",
"modelobjs": "Ausgewaehlte Objekte zu Model machen",
"demodelobjs": "Ausgewaehltes Model zu Objekte machen",
}

View File

@ -41,4 +41,6 @@
"settings": "Einstellungen",
"gamex": "Game x size",
"gamey": "Game y size",
"modelobjs": "Turn selected objects into Model",
"demodelobjs": "Turn selected model into objects",
}

26
main.py
View File

@ -309,6 +309,30 @@ def renameobj():
if not "HASHMODEL" in objtree.item(target, "tags"):
gamedata[target]["name"] = new
def modelobjs():
#use detach and move
temp = objtree.selection()
targets = []
for i in temp:
if not "objsel" in objtree.item(i, "tags"): continue
if objtree.parent(i) != "": continue
if gamedata[i]["id"] == "obj":
targets.append(i)
tempid = genid()
objtree.insert("", tk.END, text=LH.string("IOM"), image=icons["model"], iid=tempid, tags=("HASHMODEL",))
for i in targets:
objtree.detach(i)
objtree.move(i, tempid, "end")
def demodelobjs():
#use detach and move
temp = objtree.focus()
if not "HASHMODEL" in objtree.item(temp, "tags"): return
for i in objtree.get_children(temp):
objtree.detach(i)
objtree.move(i, "", "end")
objtree.delete(temp)
def delobjg(target):
objtree.delete(target)
temp = gamedata.pop(target)
@ -950,6 +974,8 @@ def GUIinit():
rmenu = tk.Menu(container, tearoff=0)
rmenu.add_command(label=LH.string("rename"), command=renameobj)
rmenu.add_command(label=LH.string("delete"), command=delobj)
rmenu.add_command(label=LH.string("modelobjs"), command=modelobjs)
rmenu.add_command(label=LH.string("demodelobjs"), command=demodelobjs)
objtree.bind("<Button-3>", rpopup)