summaryrefslogtreecommitdiff
path: root/src/gui
diff options
context:
space:
mode:
authorDebulois <quentin@debulois.fr>2022-04-20 13:17:36 +0200
committerDebulois <quentin@debulois.fr>2022-04-20 13:17:36 +0200
commit4c4f70bf6eb88a419add86e182d3080674196433 (patch)
treede407cee641f168c5ac325aa6a8b695ee04a429b /src/gui
parent41243ec2137bac39225231c0834f9d611fe94728 (diff)
Mis en place de la structure orientée objet
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/__init__.py0
-rw-r--r--src/gui/aPropos.py14
-rw-r--r--src/gui/home.py24
-rw-r--r--src/gui/login.py42
-rw-r--r--src/gui/menu.py17
-rw-r--r--src/gui/ressources/icon.icobin0 -> 41662 bytes
6 files changed, 97 insertions, 0 deletions
diff --git a/src/gui/__init__.py b/src/gui/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/src/gui/__init__.py
diff --git a/src/gui/aPropos.py b/src/gui/aPropos.py
new file mode 100644
index 0000000..49cb663
--- /dev/null
+++ b/src/gui/aPropos.py
@@ -0,0 +1,14 @@
+
+from PyQt5.QtWidgets import QMessageBox
+
+
+def a_propos(mainWindow):
+ QMessageBox.information(
+ mainWindow,
+ "A propos",
+ "Logiciel pour mon dossier professionnel.\
+ <br>Version: %s\
+ <br>Auteur: Debulois Quentin\
+ <br>Code source: \
+ <a href='https://git.debulois.fr/'>git.debulois.fr/</a>" % mainWindow.VERSION
+ )
diff --git a/src/gui/home.py b/src/gui/home.py
new file mode 100644
index 0000000..554d561
--- /dev/null
+++ b/src/gui/home.py
@@ -0,0 +1,24 @@
+
+from PyQt5 import QtWidgets
+from src.gui import login
+
+def home_page(mainWindow):
+ label1 = QtWidgets.QLabel("Home page")
+ btnConnexion = QtWidgets.QPushButton("Connexion")
+ btnConnexion.clicked.connect(lambda: login.login_page(mainWindow))
+
+ inputRecherche = QtWidgets.QLineEdit("Nom d'un pro")
+ comboRecherche = QtWidgets.QComboBox()
+
+ layoutMain = QtWidgets.QVBoxLayout()
+
+ layoutMain.addWidget(btnConnexion)
+ layoutMain.addWidget(label1)
+ layoutMain.addWidget(inputRecherche)
+ layoutMain.addWidget(comboRecherche)
+
+ if hasattr(mainWindow, "mainWidget"):
+ mainWindow.mainWidget.deleteLater()
+ mainWindow.mainWidget = QtWidgets.QWidget()
+ mainWindow.mainWidget.setLayout(layoutMain)
+ mainWindow.setCentralWidget(mainWindow.mainWidget)
diff --git a/src/gui/login.py b/src/gui/login.py
new file mode 100644
index 0000000..601cd18
--- /dev/null
+++ b/src/gui/login.py
@@ -0,0 +1,42 @@
+
+from PyQt5 import QtWidgets
+from src.core import user
+from src.gui import home
+
+
+def login_page(mainWindow):
+ btnAccueil = QtWidgets.QPushButton("Accueil")
+ btnAccueil.clicked.connect(lambda: home.home_page(mainWindow))
+ leditMail = QtWidgets.QLineEdit("Email")
+ leditPassword = QtWidgets.QLineEdit("Password")
+ btnConnexion = QtWidgets.QPushButton("Connexion")
+ btnConnexion.clicked.connect(
+ lambda: user.login(
+ mainWindow,
+ leditMail.text(),
+ leditPassword.text()
+ )
+ )
+
+ layoutMain = QtWidgets.QVBoxLayout()
+ layoutNavigation = QtWidgets.QHBoxLayout()
+ layoutPassword = QtWidgets.QHBoxLayout()
+ layoutPasswordWidgets = QtWidgets.QVBoxLayout()
+
+ layoutMain.addLayout(layoutNavigation)
+ layoutNavigation.addWidget(btnAccueil)
+ layoutNavigation.addStretch()
+
+ layoutMain.addLayout(layoutPassword)
+ layoutPassword.addStretch()
+ layoutPassword.addLayout(layoutPasswordWidgets)
+ layoutPassword.addStretch()
+
+ layoutPasswordWidgets.addWidget(leditMail)
+ layoutPasswordWidgets.addWidget(leditPassword)
+ layoutPasswordWidgets.addWidget(btnConnexion)
+
+ mainWindow.mainWidget.deleteLater()
+ mainWindow.mainWidget = QtWidgets.QWidget()
+ mainWindow.mainWidget.setLayout(layoutMain)
+ mainWindow.setCentralWidget(mainWindow.mainWidget) \ No newline at end of file
diff --git a/src/gui/menu.py b/src/gui/menu.py
new file mode 100644
index 0000000..90dffcf
--- /dev/null
+++ b/src/gui/menu.py
@@ -0,0 +1,17 @@
+
+from os.path import join
+from pathlib import Path
+from PyQt5.QtWidgets import QAction
+from PyQt5.QtGui import QIcon
+from src.gui import aPropos
+
+def init_menu(mainWindow):
+ logo = join(Path(__file__).parent, "ressources", "icon.ico")
+ print(logo)
+ mainWindow.setWindowIcon(QIcon(logo))
+ menu = mainWindow.menuBar()
+ menuOptions = menu.addMenu("Options")
+ btnApropos = QAction("A propos", mainWindow)
+ btnApropos.triggered.connect(lambda: aPropos.a_propos(mainWindow))
+ menuOptions.addAction(btnApropos)
+ mainWindow.setWindowTitle("Alphajob")
diff --git a/src/gui/ressources/icon.ico b/src/gui/ressources/icon.ico
new file mode 100644
index 0000000..7c550a3
--- /dev/null
+++ b/src/gui/ressources/icon.ico
Binary files differ