Defaults from settings file, then CLI, then canned defaults Fix Adjust settings Fix Custom Item Array settings Create error message for Enemizer Not Found
46 lines
1.6 KiB
Python
46 lines
1.6 KiB
Python
import os
|
|
from tkinter import ttk, filedialog, IntVar, StringVar, Button, Checkbutton, Entry, Frame, Label, E, W, LEFT, RIGHT, X
|
|
import gui.widgets as widgets
|
|
import json
|
|
import os
|
|
|
|
def generation_page(parent,settings):
|
|
# Generation Setup
|
|
self = ttk.Frame(parent)
|
|
|
|
# Generation Setup options
|
|
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:
|
|
myDict = json.load(checkboxes)
|
|
dictWidgets = widgets.make_widgets_from_dict(self, myDict, self.frames["checkboxes"])
|
|
for key in dictWidgets:
|
|
self.widgets[key] = dictWidgets[key]
|
|
self.widgets[key].pack(anchor=W)
|
|
|
|
self.frames["baserom"] = Frame(self)
|
|
self.frames["baserom"].pack(anchor=W, fill=X)
|
|
## Locate base ROM
|
|
baseRomFrame = Frame(self.frames["baserom"])
|
|
baseRomLabel = Label(baseRomFrame, text='Base Rom: ')
|
|
self.romVar = StringVar()
|
|
romEntry = Entry(baseRomFrame, textvariable=self.romVar)
|
|
self.romVar.set(settings["rom"])
|
|
|
|
def RomSelect():
|
|
rom = filedialog.askopenfilename(filetypes=[("Rom Files", (".sfc", ".smc")), ("All Files", "*")], initialdir=os.path.join("."))
|
|
self.romVar.set(rom)
|
|
romSelectButton = Button(baseRomFrame, text='Select Rom', command=RomSelect)
|
|
|
|
baseRomLabel.pack(side=LEFT)
|
|
romEntry.pack(side=LEFT, fill=X, expand=True)
|
|
romSelectButton.pack(side=LEFT)
|
|
baseRomFrame.pack(fill=X)
|
|
|
|
return self,settings
|