Skip to content

Commit

Permalink
oop baby
Browse files Browse the repository at this point in the history
  • Loading branch information
mclacore committed Jul 22, 2024
1 parent d985348 commit a93173d
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 11 deletions.
32 changes: 32 additions & 0 deletions app.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
from tkinter import Tk
from password import PasswordGenerator
from menu import MenuBar
from window import Window


class Application:
def __init__(self):
self.root = Tk()
self.password_generator = PasswordGenerator()
self.menu_bar = MenuBar()
self.window = Window(
self.root,
password_generator=self.password_generator,
menu_bar=self.menu_bar,
restart_callback=self.restart
)


def run(self):
self.window.run()


def restart(self):
self.root.destroy()
self.__init__()
self.run()


if __name__ == '__main__':
app = Application()
app.run()
15 changes: 4 additions & 11 deletions window.py
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
"""Adds GUI to password generator"""
from tkinter import Tk, Label, Button, Scale, Checkbutton, IntVar, HORIZONTAL
from menu import MenuBar
from password import PasswordGenerator


class Window:
def __init__(self, root, title="Password Generator", geometry="300x300", password_generator=None, menu_bar=None):
def __init__(self, root, title="Password Generator", geometry="300x300", password_generator=None, menu_bar=None, restart_callback=None):
self.root = root
self.root.title(title)
self.root.geometry(geometry)
self.password_generator = password_generator
self.menu_bar = menu_bar
self.restart_callback = restart_callback

self.init_menu()

Expand Down Expand Up @@ -39,9 +38,8 @@ def init_menu(self):


def restart_app(self):
self.root.destroy()
self.__init__(root)
self.window.run()
if self.restart_callback:
self.restart_callback()


def pass_generated(self):
Expand Down Expand Up @@ -73,8 +71,3 @@ def pass_generated(self):
def run(self):
self.root.mainloop()


if __name__ == "__main__":
root = Tk()
app = Window(root, password_generator=PasswordGenerator(), menu_bar=MenuBar())
app.run()

0 comments on commit a93173d

Please sign in to comment.