Arrayify Frames for each page

This commit is contained in:
Mike A. Trethewey
2020-02-19 03:14:08 -08:00
parent 1f90e90372
commit 8c4bc60312
9 changed files with 110 additions and 71 deletions

View File

@@ -14,32 +14,37 @@ def adjust_page(top, parent, settings):
# Adjust options # Adjust options
self.widgets = {} self.widgets = {}
# Adjust option sections
self.frames = {}
self.frames["checkboxes"] = Frame(self)
self.frames["checkboxes"].pack(anchor=W)
with open(os.path.join("resources","app","gui","adjust","overview","checkboxes.json")) as checkboxes: with open(os.path.join("resources","app","gui","adjust","overview","checkboxes.json")) as checkboxes:
myDict = json.load(checkboxes) myDict = json.load(checkboxes)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, self) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["checkboxes"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=W) self.widgets[key].pack(anchor=W)
selectOptionsFrame = Frame(self) self.frames["selectOptionsFrame"] = Frame(self)
leftAdjustFrame = Frame(selectOptionsFrame) self.frames["leftAdjustFrame"] = Frame(self.frames["selectOptionsFrame"])
rightAdjustFrame = Frame(selectOptionsFrame) self.frames["rightAdjustFrame"] = Frame(self.frames["selectOptionsFrame"])
bottomAdjustFrame = Frame(self) self.frames["bottomAdjustFrame"] = Frame(self)
selectOptionsFrame.pack(fill=X, expand=True) self.frames["selectOptionsFrame"].pack(fill=X)
leftAdjustFrame.pack(side=LEFT) self.frames["leftAdjustFrame"].pack(side=LEFT)
rightAdjustFrame.pack(side=RIGHT) self.frames["rightAdjustFrame"].pack(side=RIGHT)
bottomAdjustFrame.pack(fill=X, expand=True) self.frames["bottomAdjustFrame"].pack(fill=X)
with open(os.path.join("resources","app","gui","adjust","overview","leftAdjustFrame.json")) as leftAdjustFrameItems: with open(os.path.join("resources","app","gui","adjust","overview","leftAdjustFrame.json")) as leftAdjustFrameItems:
myDict = json.load(leftAdjustFrameItems) myDict = json.load(leftAdjustFrameItems)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, leftAdjustFrame) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["leftAdjustFrame"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=E) self.widgets[key].pack(anchor=E)
# Sprite Selection # Sprite Selection
self.spriteNameVar2 = StringVar() self.spriteNameVar2 = StringVar()
spriteDialogFrame2 = Frame(leftAdjustFrame) spriteDialogFrame2 = Frame(self.frames["leftAdjustFrame"])
baseSpriteLabel2 = Label(spriteDialogFrame2, text='Sprite:') baseSpriteLabel2 = Label(spriteDialogFrame2, text='Sprite:')
spriteEntry2 = Label(spriteDialogFrame2, textvariable=self.spriteNameVar2) spriteEntry2 = Label(spriteDialogFrame2, textvariable=self.spriteNameVar2)
self.sprite = None self.sprite = None
@@ -65,12 +70,12 @@ def adjust_page(top, parent, settings):
with open(os.path.join("resources","app","gui","adjust","overview","rightAdjustFrame.json")) as rightAdjustFrameItems: with open(os.path.join("resources","app","gui","adjust","overview","rightAdjustFrame.json")) as rightAdjustFrameItems:
myDict = json.load(rightAdjustFrameItems) myDict = json.load(rightAdjustFrameItems)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, rightAdjustFrame) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["rightAdjustFrame"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=E) self.widgets[key].pack(anchor=E)
adjustRomFrame = Frame(bottomAdjustFrame) adjustRomFrame = Frame(self.frames["bottomAdjustFrame"])
adjustRomLabel = Label(adjustRomFrame, text='Rom to adjust: ') adjustRomLabel = Label(adjustRomFrame, text='Rom to adjust: ')
self.romVar2 = StringVar(value=settings["rom"]) self.romVar2 = StringVar(value=settings["rom"])
romEntry2 = Entry(adjustRomFrame, textvariable=self.romVar2) romEntry2 = Entry(adjustRomFrame, textvariable=self.romVar2)
@@ -85,7 +90,7 @@ def adjust_page(top, parent, settings):
adjustRomLabel.pack(side=LEFT) adjustRomLabel.pack(side=LEFT)
romEntry2.pack(side=LEFT, fill=X, expand=True) romEntry2.pack(side=LEFT, fill=X, expand=True)
romSelectButton2.pack(side=LEFT) romSelectButton2.pack(side=LEFT)
adjustRomFrame.pack(fill=X, expand=True) adjustRomFrame.pack(fill=X)
def adjustRom(): def adjustRom():
options = { options = {
@@ -112,7 +117,7 @@ def adjust_page(top, parent, settings):
else: else:
messagebox.showinfo(title="Success", message="Rom patched successfully") messagebox.showinfo(title="Success", message="Rom patched successfully")
adjustButton = Button(bottomAdjustFrame, text='Adjust Rom', command=adjustRom) adjustButton = Button(self.frames["bottomAdjustFrame"], text='Adjust Rom', command=adjustRom)
adjustButton.pack(side=BOTTOM, padx=(5, 0)) adjustButton.pack(side=BOTTOM, padx=(5, 0))
return self,settings return self,settings

View File

@@ -17,56 +17,52 @@ def custom_page(top,parent):
# Custom Item Pool options # Custom Item Pool options
self.customWidgets = {} self.customWidgets = {}
itemList1 = Frame(self) # Custom Item Pool option sections
itemList2 = Frame(self) self.frames = {}
itemList3 = Frame(self) self.frames["itemList1"] = Frame(self)
itemList4 = Frame(self) self.frames["itemList1"].pack(side=LEFT, padx=(0,0), anchor=N)
itemList5 = Frame(self) self.frames["itemList2"] = Frame(self)
self.frames["itemList2"].pack(side=LEFT, padx=(0,0), anchor=N)
self.frames["itemList3"] = Frame(self)
self.frames["itemList3"].pack(side=LEFT, padx=(0,0), anchor=N)
self.frames["itemList4"] = Frame(self)
self.frames["itemList4"].pack(side=LEFT, padx=(0,0), anchor=N)
self.frames["itemList5"] = Frame(self)
self.frames["itemList5"].pack(side=LEFT, padx=(0,0), anchor=N)
currentList = itemList1
with open(os.path.join("resources","app","gui","custom","overview","itemList1.json")) as items: with open(os.path.join("resources","app","gui","custom","overview","itemList1.json")) as items:
myDict = json.load(items) myDict = json.load(items)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, currentList) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["itemList1"])
for key in dictWidgets: for key in dictWidgets:
self.customWidgets[key] = dictWidgets[key] self.customWidgets[key] = dictWidgets[key]
self.customWidgets[key].pack() self.customWidgets[key].pack()
currentList = itemList2
with open(os.path.join("resources","app","gui","custom","overview","itemList2.json")) as items: with open(os.path.join("resources","app","gui","custom","overview","itemList2.json")) as items:
myDict = json.load(items) myDict = json.load(items)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, currentList) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["itemList2"])
for key in dictWidgets: for key in dictWidgets:
self.customWidgets[key] = dictWidgets[key] self.customWidgets[key] = dictWidgets[key]
self.customWidgets[key].pack() self.customWidgets[key].pack()
currentList = itemList3
with open(os.path.join("resources","app","gui","custom","overview","itemList3.json")) as items: with open(os.path.join("resources","app","gui","custom","overview","itemList3.json")) as items:
myDict = json.load(items) myDict = json.load(items)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, currentList) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["itemList3"])
for key in dictWidgets: for key in dictWidgets:
self.customWidgets[key] = dictWidgets[key] self.customWidgets[key] = dictWidgets[key]
self.customWidgets[key].pack() self.customWidgets[key].pack()
currentList = itemList4
with open(os.path.join("resources","app","gui","custom","overview","itemList4.json")) as items: with open(os.path.join("resources","app","gui","custom","overview","itemList4.json")) as items:
myDict = json.load(items) myDict = json.load(items)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, currentList) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["itemList4"])
for key in dictWidgets: for key in dictWidgets:
self.customWidgets[key] = dictWidgets[key] self.customWidgets[key] = dictWidgets[key]
self.customWidgets[key].pack() self.customWidgets[key].pack()
currentList = itemList5
with open(os.path.join("resources","app","gui","custom","overview","itemList5.json")) as items: with open(os.path.join("resources","app","gui","custom","overview","itemList5.json")) as items:
myDict = json.load(items) myDict = json.load(items)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, currentList) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["itemList5"])
for key in dictWidgets: for key in dictWidgets:
self.customWidgets[key] = dictWidgets[key] self.customWidgets[key] = dictWidgets[key]
self.customWidgets[key].pack() self.customWidgets[key].pack()
itemList1.pack(side=LEFT, padx=(0,0))
itemList2.pack(side=LEFT, padx=(0,0))
itemList3.pack(side=LEFT, padx=(0,0))
itemList4.pack(side=LEFT, padx=(0,0))
itemList5.pack(side=LEFT, padx=(0,0), anchor=N)
return self return self

View File

@@ -10,22 +10,27 @@ def dungeon_page(parent):
# Dungeon Shuffle options # Dungeon Shuffle options
self.widgets = {} self.widgets = {}
# Dungeon Shuffle option sections
self.frames = {}
self.frames["keysanity"] = Frame(self)
self.frames["keysanity"].pack(anchor=W)
## Dungeon Item Shuffle ## Dungeon Item Shuffle
mcsbshuffleFrame = Frame(self) mscbLabel = Label(self.frames["keysanity"], text="Shuffle: ")
mcsbshuffleFrame.pack(anchor=W)
mscbLabel = Label(mcsbshuffleFrame, text="Shuffle: ")
mscbLabel.pack(side=LEFT) mscbLabel.pack(side=LEFT)
with open(os.path.join("resources","app","gui","randomize","dungeon","keysanity.json")) as keysanityItems: with open(os.path.join("resources","app","gui","randomize","dungeon","keysanity.json")) as keysanityItems:
myDict = json.load(keysanityItems) myDict = json.load(keysanityItems)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, mcsbshuffleFrame) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["keysanity"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(side=LEFT) self.widgets[key].pack(side=LEFT)
self.frames["widgets"] = Frame(self)
self.frames["widgets"].pack(anchor=W)
with open(os.path.join("resources","app","gui","randomize","dungeon","widgets.json")) as dungeonWidgets: with open(os.path.join("resources","app","gui","randomize","dungeon","widgets.json")) as dungeonWidgets:
myDict = json.load(dungeonWidgets) myDict = json.load(dungeonWidgets)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, self) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["widgets"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=W) self.widgets[key].pack(anchor=W)

View File

@@ -11,9 +11,15 @@ def enemizer_page(parent,settings):
# Enemizer options # Enemizer options
self.widgets = {} self.widgets = {}
# Enemizer option sections
self.frames = {}
self.frames["checkboxes"] = Frame(self)
self.frames["checkboxes"].pack(anchor=W)
with open(os.path.join("resources","app","gui","randomize","enemizer","checkboxes.json")) as checkboxes: with open(os.path.join("resources","app","gui","randomize","enemizer","checkboxes.json")) as checkboxes:
myDict = json.load(checkboxes) myDict = json.load(checkboxes)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, self) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["checkboxes"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=W) self.widgets[key].pack(anchor=W)
@@ -35,23 +41,23 @@ def enemizer_page(parent,settings):
settings["enemizercli"] = path settings["enemizercli"] = path
enemizerCLIbrowseButton = Button(enemizerPathFrame, text='...', command=EnemizerSelectPath) enemizerCLIbrowseButton = Button(enemizerPathFrame, text='...', command=EnemizerSelectPath)
enemizerCLIbrowseButton.pack(side=LEFT) enemizerCLIbrowseButton.pack(side=LEFT)
enemizerPathFrame.pack(fill=X, expand=True) enemizerPathFrame.pack(fill=X)
leftEnemizerFrame = Frame(self) self.frames["leftEnemizerFrame"] = Frame(self)
rightEnemizerFrame = Frame(self) self.frames["rightEnemizerFrame"] = Frame(self)
leftEnemizerFrame.pack(side=LEFT, anchor=N) self.frames["leftEnemizerFrame"].pack(side=LEFT, anchor=N)
rightEnemizerFrame.pack(side=RIGHT, anchor=N) self.frames["rightEnemizerFrame"].pack(side=RIGHT, anchor=N)
with open(os.path.join("resources","app","gui","randomize","enemizer","leftEnemizerFrame.json")) as leftEnemizerFrameItems: with open(os.path.join("resources","app","gui","randomize","enemizer","leftEnemizerFrame.json")) as leftEnemizerFrameItems:
myDict = json.load(leftEnemizerFrameItems) myDict = json.load(leftEnemizerFrameItems)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, leftEnemizerFrame) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["leftEnemizerFrame"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=E) self.widgets[key].pack(anchor=E)
with open(os.path.join("resources","app","gui","randomize","enemizer","rightEnemizerFrame.json")) as rightEnemizerFrameItems: with open(os.path.join("resources","app","gui","randomize","enemizer","rightEnemizerFrame.json")) as rightEnemizerFrameItems:
myDict = json.load(rightEnemizerFrameItems) myDict = json.load(rightEnemizerFrameItems)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, rightEnemizerFrame) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["rightEnemizerFrame"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=E) self.widgets[key].pack(anchor=E)

View File

@@ -10,9 +10,14 @@ def entrando_page(parent):
# Entrance Randomizer options # Entrance Randomizer options
self.widgets = {} self.widgets = {}
# Entrance Randomizer option sections
self.frames = {}
self.frames["widgets"] = Frame(self)
self.frames["widgets"].pack(anchor=W)
with open(os.path.join("resources","app","gui","randomize","entrando","widgets.json")) as myWidgets: with open(os.path.join("resources","app","gui","randomize","entrando","widgets.json")) as myWidgets:
myDict = json.load(myWidgets) myDict = json.load(myWidgets)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, self) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["widgets"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=W) self.widgets[key].pack(anchor=W)

View File

@@ -12,27 +12,32 @@ def gameoptions_page(top, parent):
# Game Options options # Game Options options
self.widgets = {} self.widgets = {}
# Game Options option sections
self.frames = {}
self.frames["checkboxes"] = Frame(self)
self.frames["checkboxes"].pack(anchor=W)
with open(os.path.join("resources","app","gui","randomize","gameoptions","checkboxes.json")) as checkboxes: with open(os.path.join("resources","app","gui","randomize","gameoptions","checkboxes.json")) as checkboxes:
myDict = json.load(checkboxes) myDict = json.load(checkboxes)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, self) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["checkboxes"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=W) self.widgets[key].pack(anchor=W)
leftRomOptionsFrame = Frame(self) self.frames["leftRomOptionsFrame"] = Frame(self)
rightRomOptionsFrame = Frame(self) self.frames["rightRomOptionsFrame"] = Frame(self)
leftRomOptionsFrame.pack(side=LEFT) self.frames["leftRomOptionsFrame"].pack(side=LEFT)
rightRomOptionsFrame.pack(side=RIGHT) self.frames["rightRomOptionsFrame"].pack(side=RIGHT)
with open(os.path.join("resources","app","gui","randomize","gameoptions","leftRomOptionsFrame.json")) as leftRomOptionsFrameItems: with open(os.path.join("resources","app","gui","randomize","gameoptions","leftRomOptionsFrame.json")) as leftRomOptionsFrameItems:
myDict = json.load(leftRomOptionsFrameItems) myDict = json.load(leftRomOptionsFrameItems)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, leftRomOptionsFrame) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["leftRomOptionsFrame"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=E) self.widgets[key].pack(anchor=E)
## Sprite selection ## Sprite selection
spriteDialogFrame = Frame(leftRomOptionsFrame) spriteDialogFrame = Frame(self.frames["leftRomOptionsFrame"])
baseSpriteLabel = Label(spriteDialogFrame, text='Sprite:') baseSpriteLabel = Label(spriteDialogFrame, text='Sprite:')
self.widgets["sprite"] = {} self.widgets["sprite"] = {}
@@ -59,7 +64,7 @@ def gameoptions_page(top, parent):
with open(os.path.join("resources","app","gui","randomize","gameoptions","rightRomOptionsFrame.json")) as rightRomOptionsFrameItems: with open(os.path.join("resources","app","gui","randomize","gameoptions","rightRomOptionsFrame.json")) as rightRomOptionsFrameItems:
myDict = json.load(rightRomOptionsFrameItems) myDict = json.load(rightRomOptionsFrameItems)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, rightRomOptionsFrame) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["rightRomOptionsFrame"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=E) self.widgets[key].pack(anchor=E)

View File

@@ -11,15 +11,22 @@ def generation_page(parent,settings):
# Generation Setup options # Generation Setup options
self.widgets = {} self.widgets = {}
# Generation Setup option sections
self.frames = {}
self.frames["checkboxes"] = Frame(self)
self.frames["checkboxes"].pack(anchor=W)
with open(os.path.join("resources","app","gui","randomize","generation","checkboxes.json")) as checkboxes: with open(os.path.join("resources","app","gui","randomize","generation","checkboxes.json")) as checkboxes:
myDict = json.load(checkboxes) myDict = json.load(checkboxes)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, self) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["checkboxes"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=W) self.widgets[key].pack(anchor=W)
self.frames["baserom"] = Frame(self)
self.frames["baserom"].pack(anchor=W, fill=X)
## Locate base ROM ## Locate base ROM
baseRomFrame = Frame(self) baseRomFrame = Frame(self.frames["baserom"])
baseRomLabel = Label(baseRomFrame, text='Base Rom: ') baseRomLabel = Label(baseRomFrame, text='Base Rom: ')
self.romVar = StringVar() self.romVar = StringVar()
def saveBaseRom(caller,_,mode): def saveBaseRom(caller,_,mode):
@@ -36,6 +43,6 @@ def generation_page(parent,settings):
baseRomLabel.pack(side=LEFT) baseRomLabel.pack(side=LEFT)
romEntry.pack(side=LEFT, fill=X, expand=True) romEntry.pack(side=LEFT, fill=X, expand=True)
romSelectButton.pack(side=LEFT) romSelectButton.pack(side=LEFT)
baseRomFrame.pack(fill=X, expand=True) baseRomFrame.pack(fill=X)
return self,settings return self,settings

View File

@@ -2,7 +2,7 @@ from tkinter import ttk, IntVar, StringVar, Checkbutton, Frame, Label, OptionMen
import gui.widgets as widgets import gui.widgets as widgets
import json import json
import os import os
def item_page(parent): def item_page(parent):
# Item Randomizer # Item Randomizer
self = ttk.Frame(parent) self = ttk.Frame(parent)
@@ -10,28 +10,33 @@ def item_page(parent):
# Item Randomizer options # Item Randomizer options
self.widgets = {} self.widgets = {}
# Item Randomizer option sections
self.frames = {}
self.frames["checkboxes"] = Frame(self)
self.frames["checkboxes"].pack(anchor=W)
with open(os.path.join("resources","app","gui","randomize","item","checkboxes.json")) as checkboxes: with open(os.path.join("resources","app","gui","randomize","item","checkboxes.json")) as checkboxes:
myDict = json.load(checkboxes) myDict = json.load(checkboxes)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, self) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["checkboxes"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=W) self.widgets[key].pack(anchor=W)
leftItemFrame = Frame(self) self.frames["leftItemFrame"] = Frame(self)
rightItemFrame = Frame(self) self.frames["rightItemFrame"] = Frame(self)
leftItemFrame.pack(side=LEFT) self.frames["leftItemFrame"].pack(side=LEFT)
rightItemFrame.pack(side=RIGHT) self.frames["rightItemFrame"].pack(side=RIGHT)
with open(os.path.join("resources","app","gui","randomize","item","leftItemFrame.json")) as leftItemFrameItems: with open(os.path.join("resources","app","gui","randomize","item","leftItemFrame.json")) as leftItemFrameItems:
myDict = json.load(leftItemFrameItems) myDict = json.load(leftItemFrameItems)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, leftItemFrame) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["leftItemFrame"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=E) self.widgets[key].pack(anchor=E)
with open(os.path.join("resources","app","gui","randomize","item","rightItemFrame.json")) as rightItemFrameItems: with open(os.path.join("resources","app","gui","randomize","item","rightItemFrame.json")) as rightItemFrameItems:
myDict = json.load(rightItemFrameItems) myDict = json.load(rightItemFrameItems)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, rightItemFrame) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["rightItemFrame"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(anchor=E) self.widgets[key].pack(anchor=E)

View File

@@ -10,16 +10,21 @@ def multiworld_page(parent,settings):
# Multiworld options # Multiworld options
self.widgets = {} self.widgets = {}
# Multiworld option sections
self.frames = {}
self.frames["widgets"] = Frame(self)
self.frames["widgets"].pack(anchor=W, fill=X)
with open(os.path.join("resources","app","gui","randomize","multiworld","widgets.json")) as multiworldItems: with open(os.path.join("resources","app","gui","randomize","multiworld","widgets.json")) as multiworldItems:
myDict = json.load(multiworldItems) myDict = json.load(multiworldItems)
dictWidgets = widgets.make_widgets_from_dict(self, myDict, self) dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["widgets"])
for key in dictWidgets: for key in dictWidgets:
self.widgets[key] = dictWidgets[key] self.widgets[key] = dictWidgets[key]
self.widgets[key].pack(side=LEFT, anchor=N) self.widgets[key].pack(side=LEFT, anchor=N)
## List of Player Names ## List of Player Names
key = "names" key = "names"
self.widgets[key] = Frame(self) self.widgets[key] = Frame(self.frames["widgets"])
self.widgets[key].label = Label(self.widgets[key], text='Player names') self.widgets[key].label = Label(self.widgets[key], text='Player names')
self.widgets[key].storageVar = StringVar(value=settings["names"]) self.widgets[key].storageVar = StringVar(value=settings["names"])
def saveMultiNames(caller,_,mode): def saveMultiNames(caller,_,mode):