diff --git a/gui/randomize/gameoptions.py b/gui/randomize/gameoptions.py index ecd3705d..1785f38d 100644 --- a/gui/randomize/gameoptions.py +++ b/gui/randomize/gameoptions.py @@ -11,81 +11,82 @@ def gameoptions_page(top, parent): # Game Options options self.widgets = {} - ## Hints: Useful/Not useful - key = "hints" - self.widgets[key] = widgets.make_widget( - self, - "checkbox", - self, - "Include Helpful Hints", - None - ) - self.widgets[key].pack(anchor=W) - - ## Disable BGM - key = "nobgm" - self.widgets[key] = widgets.make_widget( - self, - "checkbox", - self, - "Disable Music & MSU-1", - None - ) - self.widgets[key].pack(anchor=W) - - ## L/R Quickswap - key = "quickswap" - self.widgets[key] = widgets.make_widget( - self, - "checkbox", - self, - "L/R Quickswapping", - None - ) - self.widgets[key].pack(anchor=W) + myDict = { + ## Hints: Useful/Not useful + "hints": { + "type": "checkbox", + "label": { + "text": "Include Helpful Hints" + } + }, + ## Disable BGM + "nobgm": { + "type": "checkbox", + "label": { + "text": "Disable Music & MSU-1" + } + }, + ## L/R Quickswap + "quickswap": { + "type": "checkbox", + "label": { + "text": "L/R Quickswapping" + } + } + } + dictWidgets = widgets.make_widgets_from_dict(self, myDict, self) + for key in dictWidgets: + self.widgets[key] = dictWidgets[key] + self.widgets[key].pack(anchor=W) leftRomOptionsFrame = Frame(self) rightRomOptionsFrame = Frame(self) leftRomOptionsFrame.pack(side=LEFT) rightRomOptionsFrame.pack(side=RIGHT) - ## Heart Color - key = "heartcolor" - self.widgets[key] = widgets.make_widget( - self, - "selectbox", - leftRomOptionsFrame, - "Heart Color", - None, - {"label": {"side": LEFT}, "selectbox": {"side": RIGHT}}, - { - "Red": "red", - "Blue": "blue", - "Green": "green", - "Yellow": "yellow", - "Random": "random" + myDict = { + ## Heart Color + "heartcolor": { + "type": "selectbox", + "label": { + "text": "Heart Color" + }, + "packAttrs": { + "label": { "side": LEFT }, + "selectbox": { "side": RIGHT } + }, + "options": { + "Red": "red", + "Blue": "blue", + "Green": "green", + "Yellow": "yellow", + "Random": "random" + } + }, + ## Heart Beep speed + "heartbeep": { + "type": "selectbox", + "label": { + "text": "Heart Beep sound rate" + }, + "packAttrs": { + "label": { "side": LEFT }, + "selectbox": { "side": RIGHT}, + "default": "Normal" + }, + "options": { + "Double": "double", + "Normal": "normal", + "Half": "half", + "Quarter": "quarter", + "Off": "off" + } } - ) - self.widgets[key].pack(anchor=E) - - ## Heart Beep Speed - key = "heartbeep" - self.widgets[key] = widgets.make_widget( - self, - "selectbox", - leftRomOptionsFrame, - "Heart Beep sound rate", - None, - {"label": {"side": LEFT}, "selectbox": {"side": RIGHT}, "default": "Normal"}, - { - "Double": "double", - "Normal": "normal", - "Half": "half", - "Quarter": "quarter", - "Off": "off" - } - ) - self.widgets[key].pack(anchor=W) + } + dictWidgets = widgets.make_widgets_from_dict(self, myDict, leftRomOptionsFrame) + for key in dictWidgets: + self.widgets[key] = dictWidgets[key] + self.widgets[key].pack(anchor=E) ## Sprite selection spriteDialogFrame = Frame(leftRomOptionsFrame) @@ -113,59 +114,64 @@ def gameoptions_page(top, parent): spriteSelectButton.pack(side=LEFT) spriteDialogFrame.pack(anchor=E) - ## Menu Speed - key = "menuspeed" - self.widgets[key] = widgets.make_widget( - self, - "selectbox", - rightRomOptionsFrame, - "Menu Speed", - None, - {"label": {"side": LEFT}, "selectbox": {"side": RIGHT}, "default": "Normal"}, - { - "Instant": "instant", - "Quadruple": "quadruple", - "Triple": "triple", - "Double": "double", - "Normal": "normal", - "Half": "half" + myDict = { + ## Menu Speed + "menuspeed": { + "type": "selectbox", + "label": { + "text": "Menu Speed" + }, + "packAttrs": { + "label": { "side": LEFT }, + "selectbox": { "side": RIGHT }, + "default": "Normal" + }, + "options": { + "Instant": "instant", + "Quadruple": "quadruple", + "Triple": "triple", + "Double": "double", + "Normal": "normal", + "Half": "half" + } + }, + ## Overworld Palettes (not Enemizer) + "owpalettes": { + "type": "selectbox", + "label": { + "text": "Overworld Palettes" + }, + "packAttrs": { + "label": { "side": LEFT }, + "selectbox": { "side": RIGHT } + }, + "options": { + "Default": "default", + "Random": "random", + "Blackout": "blackout" + } + }, + ## Underworld Palettes (not Enemizer) + "uwpalettes": { + "type": "selectbox", + "label": { + "text": "Underworld Palettes" + }, + "packAttrs": { + "label": { "side": LEFT }, + "selectbox": { "side": RIGHT } + }, + "options": { + "Default": "default", + "Random": "random", + "Blackout": "blackout" + } } - ) - self.widgets[key].pack(anchor=E) - - ## Overworld Palettes (not Enemizer) - key = "owpalettes" - self.widgets[key] = widgets.make_widget( - self, - "selectbox", - rightRomOptionsFrame, - "Overworld Palettes", - None, - {"label": {"side": LEFT}, "selectbox": {"side": RIGHT}}, - { - "Default": "default", - "Random": "random", - "Blackout": "blackout" - } - ) - self.widgets[key].pack(anchor=E) - - ## Underworld Palettes (not Enemizer) - key = "uwpalettes" - self.widgets[key] = widgets.make_widget( - self, - "selectbox", - rightRomOptionsFrame, - "Underworld Palettes", - None, - {"label": {"side": LEFT}, "selectbox": {"side": RIGHT}}, - { - "Default": "default", - "Random": "random", - "Blackout": "blackout" - } - ) - self.widgets[key].pack(anchor=E) + } + dictWidgets = widgets.make_widgets_from_dict(self, myDict, rightRomOptionsFrame) + for key in dictWidgets: + self.widgets[key] = dictWidgets[key] + self.widgets[key].pack(anchor=E) return self