diff --git a/resources/app/gui/lang/en.json b/resources/app/gui/lang/en.json index 86786378..07a6641f 100644 --- a/resources/app/gui/lang/en.json +++ b/resources/app/gui/lang/en.json @@ -39,8 +39,8 @@ "adjust.sprite.unchanged": "(unchanged)", "adjust.rom": "Rom to adjust: ", - "adjust.rom.filetypes": "Rom Files", - "adjust.rom.opendialog": "Select Rom", + "adjust.rom.romfiles": "Rom Files", + "adjust.rom.button": "Select Rom", "adjust.rom.go": "Adjust Rom", "adjust.rom.dialog.error": "Error while patching", "adjust.rom.dialog.success": "Success", @@ -165,8 +165,9 @@ "randomizer.generation.saveonexit.never": "Never", "randomizer.generation.rom": "Base Rom: ", - "randomizer.generation.rom.filetypes": "Rom Files", - "randomizer.generation.rom.opendialog": "Select Rom", + "randomizer.generation.rom.button": "Select Rom", + "randomizer.generation.rom.dialog.romfiles": "Rom Files", + "randomizer.generation.rom.dialog.allfiles": "All Files", "randomizer.item.retro": "Retro mode (universal keys)", diff --git a/source/classes/BabelFish.py b/source/classes/BabelFish.py index 81d24acc..3be79c09 100644 --- a/source/classes/BabelFish.py +++ b/source/classes/BabelFish.py @@ -60,10 +60,10 @@ class BabelFish(): display_text += '.' # display_text += key # Exits - if "exit" in key: + if "exit" in key and "gui" not in domain: key = key.replace("exit","") specials["exit"] = True - if "Exit" in key: + if "Exit" in key and "gui" not in domain: key = key.replace("Exit","") specials["exit"] = True # Locations @@ -80,10 +80,10 @@ class BabelFish(): display_text += '.' display_text += subkey # Exits - if "exit" in subkey: + if "exit" in subkey and "gui" not in domain: subkey = subkey.replace("exit","") specials["exit"] = True - if "Exit" in subkey: + if "Exit" in subkey and "gui" not in domain: subkey = subkey.replace("Exit","") specials["exit"] = True # Locations diff --git a/source/gui/loadcliargs.py b/source/gui/loadcliargs.py index 8e7be63d..c8ac481f 100644 --- a/source/gui/loadcliargs.py +++ b/source/gui/loadcliargs.py @@ -58,17 +58,28 @@ def loadcliargs(gui, args, settings=None): subpage = "enemizer" widget = "enemizercli" setting = "enemizercli" + # set storagevar gui.pages[mainpage].pages[subpage].widgets[widget].storageVar.set(args[setting]) + # set textbox/frame label label = fish.translate("gui","gui",mainpage + '.' + subpage + '.' + widget) gui.pages[mainpage].pages[subpage].widgets[widget].pieces["frame"].label.configure(text=label) + # set get from web label label = fish.translate("gui","gui",mainpage + '.' + subpage + '.' + widget + ".online") gui.pages[mainpage].pages[subpage].widgets[widget].pieces["online"].label.configure(text=label) # Get baserom path mainpage = "randomizer" subpage = "generation" + widget = "rom" setting = "rom" - gui.pages[mainpage].pages[subpage].romVar.set(args[setting]) + # set storagevar + gui.pages[mainpage].pages[subpage].widgets[widget].storageVar.set(args[setting]) + # set textbox/frame label + label = fish.translate("gui","gui",mainpage + '.' + subpage + '.' + widget) + gui.pages[mainpage].pages[subpage].widgets[widget].pieces["frame"].label.configure(text=label) + # set button label + label = fish.translate("gui","gui",mainpage + '.' + subpage + '.' + widget + ".button") + gui.pages[mainpage].pages[subpage].widgets[widget].pieces["button"].configure(text=label) # Get Multiworld Worlds count mainpage = "randomizer" diff --git a/source/gui/randomize/generation.py b/source/gui/randomize/generation.py index 376fc564..47c221d0 100644 --- a/source/gui/randomize/generation.py +++ b/source/gui/randomize/generation.py @@ -2,6 +2,7 @@ from tkinter import ttk, filedialog, StringVar, Button, Entry, Frame, Label, E, import source.gui.widgets as widgets import json import os +from source.classes.Empty import Empty def generation_page(parent,settings): # Generation Setup @@ -28,20 +29,24 @@ def generation_page(parent,settings): self.frames["baserom"].pack(anchor=W, fill=X) ## Locate base ROM # This one's more-complicated, build it and stuff it - 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"]) + widget = "rom" + self.widgets[widget] = Empty() + self.widgets[widget].pieces = {} + self.widgets[widget].pieces["frame"] = Frame(self.frames["baserom"]) + self.widgets[widget].pieces["frame"].label = Label(self.widgets[widget].pieces["frame"], text='Base Rom: ') + self.widgets[widget].storageVar = StringVar() + self.widgets[widget].pieces["textbox"] = Entry(self.widgets[widget].pieces["frame"], textvariable=self.widgets[widget].storageVar) + self.widgets[widget].storageVar.set(settings["rom"]) + # FIXME: Translate these 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) + self.widgets[widget].storageVar.set(rom) + self.widgets[widget].pieces["button"] = Button(self.widgets[widget].pieces["frame"], 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) + self.widgets[widget].pieces["frame"].label.pack(side=LEFT) + self.widgets[widget].pieces["textbox"].pack(side=LEFT, fill=X, expand=True) + self.widgets[widget].pieces["button"].pack(side=LEFT) + self.widgets[widget].pieces["frame"].pack(fill=X) return self,settings