From db1df0c0413949785dc5fa59a887bac00cf11265 Mon Sep 17 00:00:00 2001 From: blendoit Date: Sun, 6 Oct 2019 19:16:04 -0700 Subject: attempt component tree --- gui.py | 93 +++++++++--------------------------------------------------------- 1 file changed, 12 insertions(+), 81 deletions(-) (limited to 'gui.py') diff --git a/gui.py b/gui.py index 2eea281..04250f1 100644 --- a/gui.py +++ b/gui.py @@ -1,81 +1,12 @@ -from tools import creator, evaluator, generator -# import creator -# import evaluator -# import generator -import tkinter as tk -import tkinter.ttk as ttk - -from matplotlib.backends.backend_tkagg import ( - FigureCanvasTkAgg, NavigationToolbar2Tk) - - -class MainWindow(tk.Frame): - """Main editor window.""" - - def __init__(self, *args, **kwargs): - tk.Frame.__init__(self, *args, **kwargs) - root = tk.Tk() - root.wm_title('MAE 154B - Airfoil Design, Evaluation, Optimization') - - # self.button = tk.Button(self, text="Create new window", - # command=self.create_window) - # self.button.pack(side="top") - frame_1 = ttk.Frame(root) - l_naca, e_naca = new_field(frame_1, 'naca') - l_chord, e_chord = new_field(frame_1, 'chord') - l_semi_span, e_semi_span = new_field(frame_1, 'semi_span') - af = generator.default_airfoil() - # Graph window - frame_2 = ttk.Frame(root) - fig, ax = creator.plot_geom(af, False) - plot = FigureCanvasTkAgg(fig, frame_2) - # plot.draw() - toolbar = NavigationToolbar2Tk(plot, frame_2) - # toolbar.update() - - l_naca.grid(row=0, column=0) - e_naca.grid(row=0, column=1, padx=4) - # b_naca.grid(row=0, column=2) - l_chord.grid(row=1, column=0) - e_chord.grid(row=1, column=1, padx=4) - l_semi_span.grid(row=2, column=0, padx=4) - e_semi_span.grid(row=2, column=1, padx=4) - frame_1.pack(side=tk.LEFT) - # Graph window - plot.get_tk_widget().pack(expand=1, fill=tk.BOTH) - toolbar.pack() - frame_2.pack(side=tk.LEFT) - - def create_window(self): - self.counter += 1 - window = tk.Toplevel(self) - window.wm_title("Window #%s" % self.counter) - label = tk.Label(window, text="This is window #%s" % self.counter) - label.pack(side="top", fill="both", expand=True, padx=100, pady=100) - - -def new_field(parent, name): - """Add a new user input field.""" - - label = ttk.Label(parent, text=name) - entry = ttk.Entry(parent) - return label, entry - - -def set_naca(name): - naca_num = name.get() - print(naca_num) - - -def set_chord(name): - chord = name.get() - print(chord) - - -def set_semi_span(name): - semi_span = name.get() - print(semi_span) - - -# plot.get_tk_widget().pack() -MainWindow().mainloop() +from tkinter import ttk # Normal Tkinter.* widgets are not themed! +from ttkthemes import ThemedTk + +window = ThemedTk(theme="equilux") +frame1 = ttk.Frame(window) +but1 = ttk.Button(frame1, text="Quit", command=window.destroy).pack() +frame2 = ttk.Frame(window) +but2 = ttk.Button(frame2, text="Quit", command=window.destroy).pack() +but3 = ttk.Button(frame2, text="Quit", command=window.destroy).pack() +frame1.pack() +frame2.pack() +window.mainloop() -- cgit v1.2.3