From 663ed3442a006b5310801c5acba952c8c303605b Mon Sep 17 00:00:00 2001 From: "Mike A. Trethewey" Date: Mon, 17 Feb 2020 00:10:02 -0800 Subject: [PATCH] JSONify Entrando options --- gui/randomize/entrando.py | 53 +++---------------- .../app/gui/randomize/entrando/widgets.json | 38 +++++++++++++ 2 files changed, 46 insertions(+), 45 deletions(-) create mode 100644 resources/app/gui/randomize/entrando/widgets.json diff --git a/gui/randomize/entrando.py b/gui/randomize/entrando.py index 9c2db78f..59a7152e 100644 --- a/gui/randomize/entrando.py +++ b/gui/randomize/entrando.py @@ -1,5 +1,7 @@ from tkinter import ttk, IntVar, StringVar, Checkbutton, Frame, Label, OptionMenu, E, W, LEFT, RIGHT import gui.widgets as widgets +import json +import os def entrando_page(parent): # Entrance Randomizer @@ -8,50 +10,11 @@ def entrando_page(parent): # Entrance Randomizer options self.widgets = {} - myDict = { - ## Pyramid pre-opened - "openpyramid": { - "type": "checkbox", - "label": { - "text": "Pre-open Pyramid Hole" - } - }, - ## Shuffle Ganon - "shuffleganon": { - "type": "checkbox", - "label": { - "text": "Include Ganon's Tower and Pyramid Hole in shuffle pool" - } - }, - ## Entrance Shuffle - "entranceshuffle": { - "type": "selectbox", - "label": { - "text": "Entrance Shuffle" - }, - "packAttrs": { - "label": { "side": LEFT }, - "selectbox": { "side": RIGHT } - }, - "options": { - "Vanilla": "vanilla", - "Simple": "simple", - "Restricted": "restricted", - "Full": "full", - "Crossed": "crossed", - "Insanity": "insanity", - "Restricted (Legacy)": "restricted_legacy", - "Full (Legacy)": "full_legacy", - "Madness (Legacy)": "madness_legacy", - "Insanity (Legacy)": "insanity_legacy", - "Dungeons + Full": "dungeonsfull", - "Dungeons + Simple": "dungeonssimple" - } - } - } - dictWidgets = widgets.make_widgets_from_dict(self, myDict, self) - for key in dictWidgets: - self.widgets[key] = dictWidgets[key] - self.widgets[key].pack(anchor=W) + with open(os.path.join("resources","app","gui","randomize","entrando","widgets.json")) as myWidgets: + myDict = json.load(myWidgets) + dictWidgets = widgets.make_widgets_from_dict(self, myDict, self) + for key in dictWidgets: + self.widgets[key] = dictWidgets[key] + self.widgets[key].pack(anchor=W) return self diff --git a/resources/app/gui/randomize/entrando/widgets.json b/resources/app/gui/randomize/entrando/widgets.json new file mode 100644 index 00000000..ceb04d45 --- /dev/null +++ b/resources/app/gui/randomize/entrando/widgets.json @@ -0,0 +1,38 @@ +{ + "openpyramid": { + "type": "checkbox", + "label": { + "text": "Pre-open Pyramid Hole" + } + }, + "shuffleganon": { + "type": "checkbox", + "label": { + "text": "Include Ganon's Tower and Pyramid Hole in shuffle pool" + } + }, + "entranceshuffle": { + "type": "selectbox", + "label": { + "text": "Entrance Shuffle" + }, + "packAttrs": { + "label": { "side": "left" }, + "selectbox": { "side": "right" } + }, + "options": { + "Vanilla": "vanilla", + "Simple": "simple", + "Restricted": "restricted", + "Full": "full", + "Crossed": "crossed", + "Insanity": "insanity", + "Restricted (Legacy)": "restricted_legacy", + "Full (Legacy)": "full_legacy", + "Madness (Legacy)": "madness_legacy", + "Insanity (Legacy)": "insanity_legacy", + "Dungeons + Full": "dungeonsfull", + "Dungeons + Simple": "dungeonssimple" + } + } +}