57 lines
1.9 KiB
Python
57 lines
1.9 KiB
Python
|
import team
|
||
|
import scenario
|
||
|
import terrain
|
||
|
from tkinter import *
|
||
|
from tkinter import ttk
|
||
|
|
||
|
# for child in container.winfo_children():
|
||
|
# child.grid_configure(padx=4, pady=5)
|
||
|
|
||
|
Screen = (team.TeamsPage, team.EditTeamPage, terrain.TerrainsPage, scenario.ScenarioPage)
|
||
|
|
||
|
class App(Tk):
|
||
|
def __init__(self, *args, **kwargs):
|
||
|
Tk.__init__(self, *args, **kwargs)
|
||
|
Tk.wm_title(self, "AoS Worlds Pairing Assistant")
|
||
|
Tk.option_add(self, "*tearOff", False)
|
||
|
|
||
|
container = ttk.Frame(self, padding="100 100 100 100")
|
||
|
container.pack()
|
||
|
container.columnconfigure(0, minsize=500, weight=1)
|
||
|
container.rowconfigure(0, minsize=300, weight=1)
|
||
|
|
||
|
self.frames = {}
|
||
|
|
||
|
for F in Screen:
|
||
|
frame = F(container, self)
|
||
|
self.frames[F] = frame
|
||
|
frame.grid(column=0, row=0, sticky=(N, W, E, S))
|
||
|
for child in frame.winfo_children():
|
||
|
child.grid_configure(padx=4, pady=5)
|
||
|
|
||
|
self.makeMenu()
|
||
|
self.showFrame(team.TeamsPage)
|
||
|
|
||
|
def makeMenu(self):
|
||
|
menubar = Menu(self)
|
||
|
|
||
|
menuScenarios = Menu(menubar)
|
||
|
menubar.add_cascade(menu=menuScenarios, label="Scenarios")
|
||
|
menuScenarios.add_command(label="New")#, command=scenario.getScreen)
|
||
|
menuScenarios.add_command(label="New from CSV")#, command=scenario.getScreen)
|
||
|
menuScenarios.add_command(label="Load")#, command=scenario.getScreen)
|
||
|
|
||
|
menuConfig = Menu(menubar)
|
||
|
menubar.add_cascade(menu=menuConfig, label="Configuration")
|
||
|
menuConfig.add_command(label="Teams", command=lambda: self.showFrame(team.TeamsPage))
|
||
|
menuConfig.add_command(label="Terrains", command=lambda: self.showFrame(terrain.TerrainsPage))
|
||
|
|
||
|
self['menu'] = menubar
|
||
|
|
||
|
def showFrame(self, screen):
|
||
|
frame = self.frames[screen]
|
||
|
frame.tkraise()
|
||
|
|
||
|
app = App()
|
||
|
app.mainloop()
|