Skip to content

Commit

Permalink
Improved UI layout and centering
Browse files Browse the repository at this point in the history
  • Loading branch information
DougReynolds committed Dec 8, 2023
1 parent 8322fca commit fc4dc8d
Showing 1 changed file with 17 additions and 18 deletions.
35 changes: 17 additions & 18 deletions ImageProcessorGUI.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ def __init__(self, root):

# Placeholder for logo image
self.logo_image = tk.PhotoImage(file="./assets/astroAF_logo2.png")

# Variables for storing user input
self.input_image_var = tk.StringVar()
self.output_image_var = tk.StringVar()
Expand All @@ -28,18 +28,23 @@ def __init__(self, root):
self.blur_multiplier_var = tk.DoubleVar()
self.rotation_angle_var = tk.DoubleVar()

# Create and pack widgets
# Create and pack widgets
self.create_widgets()

# Placeholder images for previews
self.input_image_preview = ImageTk.PhotoImage(Image.new("RGB", (600, 600), "gray"))
self.processed_image_preview = ImageTk.PhotoImage(Image.new("RGB", (600, 600), "gray"))

# Image previews
self.input_image_label = tk.Label(self.root, image=self.input_image_preview)
self.input_image_label.grid(row=12, column=1, padx=10, pady=10)
self.processed_image_label = tk.Label(self.root, image=self.processed_image_preview, cursor="hand2")
self.processed_image_label.grid(row=12, column=2, padx=10, pady=10)
# Image previews frame
self.image_previews_frame = tk.Frame(self.root, bg="black")
self.image_previews_frame.grid(row=12, column=0, columnspan=4, padx=10, pady=10, sticky="nsew")
self.root.grid_rowconfigure(12, weight=1) # Allow the row to expand vertically
self.root.grid_columnconfigure(0, weight=1) # Allow the column to expand horizontally

self.input_image_label = tk.Label(self.image_previews_frame, image=self.input_image_preview)
self.input_image_label.grid(row=0, column=0, padx=10, pady=10)
self.processed_image_label = tk.Label(self.image_previews_frame, image=self.processed_image_preview, cursor="hand2")
self.processed_image_label.grid(row=0, column=1, padx=10, pady=10)
self.processed_image_label.bind("<Button-1>", self.open_processed_image)

def create_widgets(self):
Expand Down Expand Up @@ -142,17 +147,6 @@ def process_image(self):
# Update processed image preview
self.update_processed_image_preview(processed_image)

def update_input_image_preview(self, file_path):
try:
img = Image.open(file_path)
img.thumbnail((300, 200))
img = ImageTk.PhotoImage(img)
self.input_image_preview = img
self.input_image_label.configure(image=self.input_image_preview)
self.input_image_label.image = self.input_image_preview
except Exception as e:
print(f"Error updating input image preview: {e}")

def update_input_image_preview(self, file_path):
try:
img = Image.open(file_path)
Expand Down Expand Up @@ -188,3 +182,8 @@ def open_processed_image(self, event):
subprocess.run(["open", output_image_path], check=True)
except Exception as e:
print(f"Error opening processed image: {e}")

if __name__ == "__main__":
root = tk.Tk()
app = ImageProcessorGUI(root)
root.mainloop()

0 comments on commit fc4dc8d

Please sign in to comment.