From 21e97f536283c00ff993ee3fd59ecadcf676338f Mon Sep 17 00:00:00 2001 From: sidya82 Date: Fri, 5 Dec 2014 15:54:04 +0100 Subject: [PATCH 1/8] some class --- README.md | 2 ++ src/Launchme.py | 6 ++++++ src/c/Acces.py | 25 +++++++++++++++++++++++++ src/c/Teleporteur.py | 12 ++++++++++++ src/c/test/TestAcces.py | 7 +++++++ src/c/test/TestTeleporteur.py | 5 +++++ src/m/Parking.py | 17 +++++++++++++++++ src/m/Place.py | 13 +++++++++++++ src/m/test/TestParking.py | 4 ++++ src/m/{camera.py => test/TestPlace.py} | 2 +- src/m/test/testCamera.py | 12 ------------ src/v/Borne.py | 20 ++++++++++++++++++++ src/v/Camera.py | 7 +++++++ src/v/Panneau.py | 8 ++++++++ src/v/test/TestBorne.py | 1 + src/v/test/TestCamera.py | 14 ++++++++++++++ src/v/test/TestPanneau.py | 4 ++++ src/v/test/__init__.py | 1 + 18 files changed, 147 insertions(+), 13 deletions(-) create mode 100644 src/Launchme.py create mode 100644 src/c/Acces.py create mode 100644 src/c/Teleporteur.py create mode 100644 src/c/test/TestAcces.py create mode 100644 src/c/test/TestTeleporteur.py create mode 100644 src/m/Parking.py create mode 100644 src/m/Place.py create mode 100644 src/m/test/TestParking.py rename src/m/{camera.py => test/TestPlace.py} (64%) delete mode 100644 src/m/test/testCamera.py create mode 100644 src/v/Borne.py create mode 100644 src/v/Camera.py create mode 100644 src/v/Panneau.py create mode 100644 src/v/test/TestBorne.py create mode 100644 src/v/test/TestCamera.py create mode 100644 src/v/test/TestPanneau.py create mode 100644 src/v/test/__init__.py diff --git a/README.md b/README.md index c0a32fa..1c4d9d8 100644 --- a/README.md +++ b/README.md @@ -2,3 +2,5 @@ gestionParking ============== Projet python l3 Miashs : gestion des places du parking DreamPark + + diff --git a/src/Launchme.py b/src/Launchme.py new file mode 100644 index 0000000..949171d --- /dev/null +++ b/src/Launchme.py @@ -0,0 +1,6 @@ +from src.c.Acces import Acces + +__author__ = 'sidya' + +if __name__ == "__main__": + acces = Acces() \ No newline at end of file diff --git a/src/c/Acces.py b/src/c/Acces.py new file mode 100644 index 0000000..2027d3d --- /dev/null +++ b/src/c/Acces.py @@ -0,0 +1,25 @@ +from src.v import Panneau, Borne, Camera +from src.c import Teleporteur +from src.m import Parking, Place + + +__author__ = 'sidya' + + +class Acces: + def __init__(self): + self.__borne = Borne() + self.__panneau = Panneau() + self.__parkings = {} + self.__camera = Camera() + self.__teleporteur = Teleporteur() + self.__clients = {} + + def actionnerCamera(self, client): + pass + + def actionnerPanneau(self): + pass + + def lancerProcedureImmatr(self, voiture): + pass \ No newline at end of file diff --git a/src/c/Teleporteur.py b/src/c/Teleporteur.py new file mode 100644 index 0000000..bd83514 --- /dev/null +++ b/src/c/Teleporteur.py @@ -0,0 +1,12 @@ +__author__ = 'sidya' + + +class Teleporteur : + def __init__(self): + pass + + def teleporterVoiture(self, voiture, place): + pass + + def teleporterVoirureSuperAbonne(self, voiture): + pass diff --git a/src/c/test/TestAcces.py b/src/c/test/TestAcces.py new file mode 100644 index 0000000..0a304c1 --- /dev/null +++ b/src/c/test/TestAcces.py @@ -0,0 +1,7 @@ +__author__ = 'sidya' + +from nose.tools import assert_equal + + +class TestAcces: + pass \ No newline at end of file diff --git a/src/c/test/TestTeleporteur.py b/src/c/test/TestTeleporteur.py new file mode 100644 index 0000000..75c204e --- /dev/null +++ b/src/c/test/TestTeleporteur.py @@ -0,0 +1,5 @@ +__author__ = 'sidya' + + +class TestTeleporteur : + pass diff --git a/src/m/Parking.py b/src/m/Parking.py new file mode 100644 index 0000000..015b4de --- /dev/null +++ b/src/m/Parking.py @@ -0,0 +1,17 @@ +__author__ = 'sidya' + + +class Parking : + def __init__(self, placesParNiv, nbNiv): + self.__nbPlacesParNiveau = placesParNiv + self.__prix = 10 + self.__nbNiveaux = nbNiv + + def recherchePlace(self,voiture): + pass + + def nbPlacesLibresParNiveau(self, niveau): + pass + + def addAbonnement(self, Abonnement): + pass diff --git a/src/m/Place.py b/src/m/Place.py new file mode 100644 index 0000000..5de5c05 --- /dev/null +++ b/src/m/Place.py @@ -0,0 +1,13 @@ +__author__ = 'sidya' + + +class Place : + def __init__(self,numero,niveau,longueur,hauteur): + self.__numero = numero + self.__niveau = niveau + self.__longueur = longueur + self.__estLibre = True + self.__hauteur = hauteur + + def addPlacement(self, placement): + pass diff --git a/src/m/test/TestParking.py b/src/m/test/TestParking.py new file mode 100644 index 0000000..86b4c5e --- /dev/null +++ b/src/m/test/TestParking.py @@ -0,0 +1,4 @@ +__author__ = 'sidya' + +class TestParking : + pass diff --git a/src/m/camera.py b/src/m/test/TestPlace.py similarity index 64% rename from src/m/camera.py rename to src/m/test/TestPlace.py index 78fdf93..2d30ccf 100644 --- a/src/m/camera.py +++ b/src/m/test/TestPlace.py @@ -1,5 +1,5 @@ __author__ = 'sidya' -class Camera: +class TestPlace : pass diff --git a/src/m/test/testCamera.py b/src/m/test/testCamera.py deleted file mode 100644 index e2d0593..0000000 --- a/src/m/test/testCamera.py +++ /dev/null @@ -1,12 +0,0 @@ -from src.m.camera import Camera - -__author__ = 'sidya' - -import nose -class testCamera : - def run(self): - pass - - def testTailleMax(self): - c = Camera() - assert (c.capturerHauteur()>1.5) diff --git a/src/v/Borne.py b/src/v/Borne.py new file mode 100644 index 0000000..678ccc3 --- /dev/null +++ b/src/v/Borne.py @@ -0,0 +1,20 @@ +__author__ = 'sidya' + +class Borne: + def __init__(self): + pass + + def delivrerTicket(self, client): + pass + + def proposerService(self): + pass + + def proposerAbonnement(self): + pass + + def recupererInfosCarte(self): + pass + + def proposerTypePaiement(self): + pass \ No newline at end of file diff --git a/src/v/Camera.py b/src/v/Camera.py new file mode 100644 index 0000000..f6de542 --- /dev/null +++ b/src/v/Camera.py @@ -0,0 +1,7 @@ +__author__ = 'sidya' + + +class Camera: + def __init__(self): + pass + diff --git a/src/v/Panneau.py b/src/v/Panneau.py new file mode 100644 index 0000000..17108ae --- /dev/null +++ b/src/v/Panneau.py @@ -0,0 +1,8 @@ +__author__ = 'sidya' + +class Panneau: + def __init__(self): + pass + + def afficherNbPlaceDisponible(self, parking): + pass \ No newline at end of file diff --git a/src/v/test/TestBorne.py b/src/v/test/TestBorne.py new file mode 100644 index 0000000..934a683 --- /dev/null +++ b/src/v/test/TestBorne.py @@ -0,0 +1 @@ +__author__ = 'sidya' diff --git a/src/v/test/TestCamera.py b/src/v/test/TestCamera.py new file mode 100644 index 0000000..9c81c7d --- /dev/null +++ b/src/v/test/TestCamera.py @@ -0,0 +1,14 @@ +from src.m.camera import Camera + +__author__ = 'sidya' + +from nose.tools import assert_equal +from nose.tools import assert_not_equal +from nose.tools import assert_raises +from nose.tools import raises + + +class testCamera: + def test_TailleMax(self): + c = Camera() + assert_equal(c.capturerHauteur()<2.5) diff --git a/src/v/test/TestPanneau.py b/src/v/test/TestPanneau.py new file mode 100644 index 0000000..5611373 --- /dev/null +++ b/src/v/test/TestPanneau.py @@ -0,0 +1,4 @@ +__author__ = 'sidya' + +class TestPanneau: + pass \ No newline at end of file diff --git a/src/v/test/__init__.py b/src/v/test/__init__.py new file mode 100644 index 0000000..934a683 --- /dev/null +++ b/src/v/test/__init__.py @@ -0,0 +1 @@ +__author__ = 'sidya' From 9f056cb247c1924dc70dc002e853b5f2df654ef7 Mon Sep 17 00:00:00 2001 From: sidya82 Date: Wed, 10 Dec 2014 16:27:38 +0100 Subject: [PATCH 2/8] ui --- ui/borne.ui | 178 +++++++++++++++++++++++++++++++++++ ui/main.ui | 261 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 439 insertions(+) create mode 100644 ui/borne.ui create mode 100644 ui/main.ui diff --git a/ui/borne.ui b/ui/borne.ui new file mode 100644 index 0000000..53ab449 --- /dev/null +++ b/ui/borne.ui @@ -0,0 +1,178 @@ + + + Form + + + + 0 + 0 + 400 + 412 + + + + Form + + + + + 90 + 40 + 211 + 27 + + + + Detection Arrivee Voiture + + + + + + 20 + 80 + 351 + 31 + + + + + + + 170 + 10 + 151 + 20 + + + + NomParking + + + + + + 60 + 300 + 272 + 85 + + + + + + + + + Carte Membre ID + + + + + + + + + + Valider + + + + + + + + + + + Non membre + + + + + + + Valider + + + + + + + PayerAvecCarte + + + + + + + + + + + 70 + 130 + 261 + 91 + + + + + + + + + < + + + + + + + Annuler + + + + + + + + + + + > + + + + + + + Valider + + + + + + + + pushButton + label + lineEdit + pushButton_2 + pushButton_3 + label_2 + lcdNumber + + label_2 + pushButton_3 + pushButton_4 + + pushButton_7 + pushButton_8 + pushButton_9 + pushButton_10 + label_4 + + + + diff --git a/ui/main.ui b/ui/main.ui new file mode 100644 index 0000000..f31fd83 --- /dev/null +++ b/ui/main.ui @@ -0,0 +1,261 @@ + + + MainWindow + + + + 0 + 0 + 522 + 412 + + + + MainWindow + + + + + + 0 + 0 + 561 + 441 + + + + 0 + + + + Activite + + + + + 40 + 10 + 61 + 15 + + + + Activité : + + + + + + 30 + 40 + 421 + 241 + + + + + + + Parkings + + + + + 100 + 80 + 311 + 151 + + + + + + + Nom : + + + + + + + Niveau : + + + + + + + + + + + + + Place / niveau : + + + + + + + + + + Place disponible : + + + + + + + + + + Place Reserve Super Abo : + + + + + + + + + + + + 140 + 270 + 101 + 27 + + + + Creer/Modifier + + + + + + 100 + 40 + 321 + 27 + + + + + + + 290 + 270 + 81 + 27 + + + + Supprimer + + + label_2 + lineEdit + label_6 + label_5 + lineEdit_3 + label_4 + lineEdit_4 + lineEdit_5 + label_3 + lineEdit_2 + formLayoutWidget + pushButton_2 + comboBox + pushButton + + + + Membres + + + + + 50 + 40 + 431 + 201 + + + + + + + + + + 0 + 0 + 522 + 25 + + + + + Fichier + + + + + + + + Quitter + + + + + A propos + + + + + + + + + + Charger + + + + + Sauvegarder + + + + + Afficher + + + + + Nouveau + + + + + Rechercher + + + + + Liste + + + + + Ajouter + + + + + + From 41cda914d74d43692668bedc6117609a5a2a60b8 Mon Sep 17 00:00:00 2001 From: sidya82 Date: Wed, 10 Dec 2014 17:55:13 +0100 Subject: [PATCH 3/8] log --- src/c/log/__init__.py | 1 + src/c/log/log.py | 91 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 src/c/log/__init__.py create mode 100644 src/c/log/log.py diff --git a/src/c/log/__init__.py b/src/c/log/__init__.py new file mode 100644 index 0000000..934a683 --- /dev/null +++ b/src/c/log/__init__.py @@ -0,0 +1 @@ +__author__ = 'sidya' diff --git a/src/c/log/log.py b/src/c/log/log.py new file mode 100644 index 0000000..4cb209e --- /dev/null +++ b/src/c/log/log.py @@ -0,0 +1,91 @@ +__author__ = 'sidya' + +import logging +from logging.handlers import RotatingFileHandler +class bcolors: + """ + Define constant color value for different level + """ + DEBUG = '\033[94m' + INFO = '\033[95m' + WARNING = '\033[93m' + FAIL = '\033[91m' + ENDC = '\033[0m' + +class lvl: + """ + Define constant value for level log + """ + NOTSET = 0 + DEBUG = 10 + INFO = 20 + WARNING = 30 + FAIL = 40 + +class SingleLevelFilter(logging.Filter): + """Filter for one level""" + def __init__(self, passlevel, reject): + """ + Constructor + passlevel : level to filter + reject : true on reject state + """ + self.passlevel = passlevel + self.reject = reject + def filter(self, record): + if self.reject: + return (record.levelno != self.passlevel) + else: + return (record.levelno == self.passlevel) + +class Log(object): + """ + Log Manager + """ + def __init__(self) : + """ + Define 3 differents log : + activity.log -> all activity + warning.log -> only warning + error.log -> error + Write all message on terminal too + """ + logging.addLevelName(lvl.SUCCESS, "SUCCESS") + self.logger = logging.getLogger() + self.logger.setLevel(logging.DEBUG) + formatter = logging.Formatter('%(asctime)-15s :: %(levelname)s :: %(message)s') + file_handler = RotatingFileHandler('log/activity.log', 'a', 1000000, 1) + file_handler.setLevel(logging.DEBUG) + file_handler.setFormatter(formatter) + self.logger.addHandler(file_handler) + file_handler_warning = RotatingFileHandler('log/warning.log', 'a', 1000000, 1) + f1 = SingleLevelFilter(logging.WARNING, False) + file_handler_warning.addFilter(f1) + file_handler_warning.setFormatter(formatter) + self.logger.addHandler(file_handler_warning) + file_handler_error = RotatingFileHandler('log/error.log', 'a', 1000000, 1) + file_handler_error.setLevel(logging.ERROR) + file_handler_error.setFormatter(formatter) + self.logger.addHandler(file_handler_error) + steam_handler = logging.StreamHandler() + steam_handler.setLevel(logging.NOTSET) + self.logger.addHandler(steam_handler) + + +def printL(self,pMsg,pLvl): + """ + Add color and write in log with an define level + pMsg : message to write in log + pLvl : level of log message + """ + if pLvl == lvl.DEBUG : + pMsg = bcolors.DEBUG + str(pMsg) + bcolors.ENDC + elif pLvl == lvl.INFO : + pMsg = bcolors.INFO + str(pMsg) + bcolors.ENDC + elif pLvl == lvl.SUCCESS : + pMsg = bcolors.SUCCESS + str(pMsg) + bcolors.ENDC + elif pLvl == lvl.WARNING : + pMsg = bcolors.WARNING + str(pMsg) + bcolors.ENDC + elif pLvl == lvl.FAIL : + pMsg = bcolors.FAIL + str(pMsg) + bcolors.ENDC + self.logger.log(pLvl,pMsg) \ No newline at end of file From 5d616fd92017396312f4e9a7b84c5f11246d452a Mon Sep 17 00:00:00 2001 From: sidya82 Date: Mon, 22 Dec 2014 19:02:08 +0100 Subject: [PATCH 4/8] New changelist --- src/Launchme.py | 6 +- src/c/Acces.py | 4 -- src/c/Main.py | 41 +++++++++++ src/v/MainWindow.py | 168 ++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 213 insertions(+), 6 deletions(-) create mode 100644 src/c/Main.py create mode 100644 src/v/MainWindow.py diff --git a/src/Launchme.py b/src/Launchme.py index 949171d..c8eb4a2 100644 --- a/src/Launchme.py +++ b/src/Launchme.py @@ -1,6 +1,8 @@ -from src.c.Acces import Acces +from src.c.Main import Main __author__ = 'sidya' if __name__ == "__main__": - acces = Acces() \ No newline at end of file + #lancement du controleur principal + main = Main() + diff --git a/src/c/Acces.py b/src/c/Acces.py index 2027d3d..b16794b 100644 --- a/src/c/Acces.py +++ b/src/c/Acces.py @@ -8,11 +8,7 @@ __author__ = 'sidya' class Acces: def __init__(self): - self.__borne = Borne() - self.__panneau = Panneau() self.__parkings = {} - self.__camera = Camera() - self.__teleporteur = Teleporteur() self.__clients = {} def actionnerCamera(self, client): diff --git a/src/c/Main.py b/src/c/Main.py new file mode 100644 index 0000000..bdb57fc --- /dev/null +++ b/src/c/Main.py @@ -0,0 +1,41 @@ +from PyQt4 import QtGui +import sys +from src.v.MainWindow import Ui_MainWindow +from src.c.log.log import Log + +__author__ = 'sidya' + + +class Main: + def __init__(self): + #Init des logs + self.log = Log() + + app = QtGui.QApplication(sys.argv) + self.view = QtGui.QMainWindow() + self.ui = Ui_MainWindow() + self.ui.setupUi(self.view) + + #Chargement activité + self.loadLastActivity() + + + self.view.show() + sys.exit(app.exec_()) + + + def activity(self,msg,lvl): + self.log.printL(msg,10) + self.ui.addItemActivite(self.activite.readlines()[-1]) + + def loadLastActivity(self): + try: + self.activite = open("log/activity.log", "r") + except IOError : + self.activite = open("log/activity.log", "w") + self.activite.close() + self.activite = open("log/activity.log", "r") + + liste = self.activite.readlines() + for l in [l[:-1] for l in liste[-11:-1]]: + self.ui.addItemActivite(l) diff --git a/src/v/MainWindow.py b/src/v/MainWindow.py new file mode 100644 index 0000000..de4ec19 --- /dev/null +++ b/src/v/MainWindow.py @@ -0,0 +1,168 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'main.ui' +# +# Created: Wed Dec 10 16:36:07 2014 +# by: PyQt4 UI code generator 4.11.3 +# +# WARNING! All changes made in this file will be lost! + +from PyQt4 import QtCore, QtGui +from PyQt4.QtGui import QListWidgetItem + +try: + _fromUtf8 = QtCore.QString.fromUtf8 +except AttributeError: + def _fromUtf8(s): + return s + +try: + _encoding = QtGui.QApplication.UnicodeUTF8 + def _translate(context, text, disambig): + return QtGui.QApplication.translate(context, text, disambig, _encoding) +except AttributeError: + def _translate(context, text, disambig): + return QtGui.QApplication.translate(context, text, disambig) + +class Ui_MainWindow(object): + def setupUi(self, MainWindow): + MainWindow.setObjectName(_fromUtf8("MainWindow")) + MainWindow.resize(522, 412) + self.centralwidget = QtGui.QWidget(MainWindow) + self.centralwidget.setObjectName(_fromUtf8("centralwidget")) + self.tabWidget = QtGui.QTabWidget(self.centralwidget) + self.tabWidget.setGeometry(QtCore.QRect(0, 0, 561, 441)) + self.tabWidget.setObjectName(_fromUtf8("tabWidget")) + self.tab = QtGui.QWidget() + self.tab.setObjectName(_fromUtf8("tab")) + self.label = QtGui.QLabel(self.tab) + self.label.setGeometry(QtCore.QRect(40, 10, 61, 15)) + self.label.setObjectName(_fromUtf8("label")) + self.log = QtGui.QListWidget(self.tab) + self.log.setGeometry(QtCore.QRect(30, 40, 421, 241)) + self.log.setObjectName(_fromUtf8("log")) + self.tabWidget.addTab(self.tab, _fromUtf8("")) + self.tab_2 = QtGui.QWidget() + self.tab_2.setObjectName(_fromUtf8("tab_2")) + self.formLayoutWidget = QtGui.QWidget(self.tab_2) + self.formLayoutWidget.setGeometry(QtCore.QRect(100, 80, 311, 151)) + self.formLayoutWidget.setObjectName(_fromUtf8("formLayoutWidget")) + self.formLayout_3 = QtGui.QFormLayout(self.formLayoutWidget) + self.formLayout_3.setMargin(0) + self.formLayout_3.setObjectName(_fromUtf8("formLayout_3")) + self.label_13 = QtGui.QLabel(self.formLayoutWidget) + self.label_13.setObjectName(_fromUtf8("label_13")) + self.formLayout_3.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_13) + self.label_14 = QtGui.QLabel(self.formLayoutWidget) + self.label_14.setObjectName(_fromUtf8("label_14")) + self.formLayout_3.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_14) + self.lineEdit_11 = QtGui.QLineEdit(self.formLayoutWidget) + self.lineEdit_11.setObjectName(_fromUtf8("lineEdit_11")) + self.formLayout_3.setWidget(0, QtGui.QFormLayout.FieldRole, self.lineEdit_11) + self.lineEdit_12 = QtGui.QLineEdit(self.formLayoutWidget) + self.lineEdit_12.setObjectName(_fromUtf8("lineEdit_12")) + self.formLayout_3.setWidget(1, QtGui.QFormLayout.FieldRole, self.lineEdit_12) + self.label_15 = QtGui.QLabel(self.formLayoutWidget) + self.label_15.setObjectName(_fromUtf8("label_15")) + self.formLayout_3.setWidget(2, QtGui.QFormLayout.LabelRole, self.label_15) + self.lineEdit_13 = QtGui.QLineEdit(self.formLayoutWidget) + self.lineEdit_13.setObjectName(_fromUtf8("lineEdit_13")) + self.formLayout_3.setWidget(2, QtGui.QFormLayout.FieldRole, self.lineEdit_13) + self.label_16 = QtGui.QLabel(self.formLayoutWidget) + self.label_16.setObjectName(_fromUtf8("label_16")) + self.formLayout_3.setWidget(3, QtGui.QFormLayout.LabelRole, self.label_16) + self.lineEdit_14 = QtGui.QLineEdit(self.formLayoutWidget) + self.lineEdit_14.setObjectName(_fromUtf8("lineEdit_14")) + self.formLayout_3.setWidget(3, QtGui.QFormLayout.FieldRole, self.lineEdit_14) + self.label_17 = QtGui.QLabel(self.formLayoutWidget) + self.label_17.setObjectName(_fromUtf8("label_17")) + self.formLayout_3.setWidget(4, QtGui.QFormLayout.LabelRole, self.label_17) + self.lineEdit_15 = QtGui.QLineEdit(self.formLayoutWidget) + self.lineEdit_15.setObjectName(_fromUtf8("lineEdit_15")) + self.formLayout_3.setWidget(4, QtGui.QFormLayout.FieldRole, self.lineEdit_15) + self.pushButton_2 = QtGui.QPushButton(self.tab_2) + self.pushButton_2.setGeometry(QtCore.QRect(140, 270, 101, 27)) + self.pushButton_2.setObjectName(_fromUtf8("pushButton_2")) + self.comboBox = QtGui.QComboBox(self.tab_2) + self.comboBox.setGeometry(QtCore.QRect(100, 40, 321, 27)) + self.comboBox.setObjectName(_fromUtf8("comboBox")) + self.pushButton = QtGui.QPushButton(self.tab_2) + self.pushButton.setGeometry(QtCore.QRect(290, 270, 81, 27)) + self.pushButton.setObjectName(_fromUtf8("pushButton")) + self.tabWidget.addTab(self.tab_2, _fromUtf8("")) + self.tab_5 = QtGui.QWidget() + self.tab_5.setObjectName(_fromUtf8("tab_5")) + self.tableView = QtGui.QTableView(self.tab_5) + self.tableView.setGeometry(QtCore.QRect(50, 40, 431, 201)) + self.tableView.setObjectName(_fromUtf8("tableView")) + self.tabWidget.addTab(self.tab_5, _fromUtf8("")) + MainWindow.setCentralWidget(self.centralwidget) + self.menubar = QtGui.QMenuBar(MainWindow) + self.menubar.setGeometry(QtCore.QRect(0, 0, 522, 25)) + self.menubar.setObjectName(_fromUtf8("menubar")) + self.menuBorne = QtGui.QMenu(self.menubar) + self.menuBorne.setObjectName(_fromUtf8("menuBorne")) + self.menuBornes = QtGui.QMenu(self.menubar) + self.menuBornes.setObjectName(_fromUtf8("menuBornes")) + self.menuA_propos = QtGui.QMenu(self.menubar) + self.menuA_propos.setObjectName(_fromUtf8("menuA_propos")) + MainWindow.setMenuBar(self.menubar) + self.statusbar = QtGui.QStatusBar(MainWindow) + self.statusbar.setObjectName(_fromUtf8("statusbar")) + MainWindow.setStatusBar(self.statusbar) + self.actionCharger = QtGui.QAction(MainWindow) + self.actionCharger.setObjectName(_fromUtf8("actionCharger")) + self.actionSauvegarder = QtGui.QAction(MainWindow) + self.actionSauvegarder.setObjectName(_fromUtf8("actionSauvegarder")) + self.actionAfficher = QtGui.QAction(MainWindow) + self.actionAfficher.setObjectName(_fromUtf8("actionAfficher")) + self.actionNouveau = QtGui.QAction(MainWindow) + self.actionNouveau.setObjectName(_fromUtf8("actionNouveau")) + self.actionRechercher = QtGui.QAction(MainWindow) + self.actionRechercher.setObjectName(_fromUtf8("actionRechercher")) + self.actionListe = QtGui.QAction(MainWindow) + self.actionListe.setObjectName(_fromUtf8("actionListe")) + self.actionAjouter = QtGui.QAction(MainWindow) + self.actionAjouter.setObjectName(_fromUtf8("actionAjouter")) + self.menuBorne.addSeparator() + self.menuBorne.addAction(self.actionCharger) + self.menuBorne.addAction(self.actionSauvegarder) + self.menubar.addAction(self.menuBorne.menuAction()) + self.menubar.addAction(self.menuBornes.menuAction()) + self.menubar.addAction(self.menuA_propos.menuAction()) + + self.retranslateUi(MainWindow) + self.tabWidget.setCurrentIndex(0) + QtCore.QMetaObject.connectSlotsByName(MainWindow) + + + + def retranslateUi(self, MainWindow): + MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow", None)) + self.label.setText(_translate("MainWindow", "Activité :", None)) + self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("MainWindow", "Activite", None)) + self.label_13.setText(_translate("MainWindow", "Nom :", None)) + self.label_14.setText(_translate("MainWindow", "Niveau :", None)) + self.label_15.setText(_translate("MainWindow", "Place / niveau :", None)) + self.label_16.setText(_translate("MainWindow", "Place disponible :", None)) + self.label_17.setText(_translate("MainWindow", "Place Reserve Super Abo : ", None)) + self.pushButton_2.setText(_translate("MainWindow", "Creer/Modifier", None)) + self.pushButton.setText(_translate("MainWindow", "Supprimer", None)) + self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("MainWindow", "Parkings", None)) + self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_5), _translate("MainWindow", "Membres", None)) + self.menuBorne.setTitle(_translate("MainWindow", "Fichier", None)) + self.menuBornes.setTitle(_translate("MainWindow", "Quitter", None)) + self.menuA_propos.setTitle(_translate("MainWindow", "A propos", None)) + self.actionCharger.setText(_translate("MainWindow", "Charger", None)) + self.actionSauvegarder.setText(_translate("MainWindow", "Sauvegarder", None)) + self.actionAfficher.setText(_translate("MainWindow", "Afficher", None)) + self.actionNouveau.setText(_translate("MainWindow", "Nouveau", None)) + self.actionRechercher.setText(_translate("MainWindow", "Rechercher", None)) + self.actionListe.setText(_translate("MainWindow", "Liste", None)) + self.actionAjouter.setText(_translate("MainWindow", "Ajouter", None)) + + + + ################################NOT GENERATED#################################################### + def addItemActivite(self, line) : + self.log.addItem(line) From 6e19ca602ffaa9b4d0078ef91a0a8f672120de7e Mon Sep 17 00:00:00 2001 From: sidya82 Date: Mon, 22 Dec 2014 23:18:02 +0100 Subject: [PATCH 5/8] log --- src/c/log/log.py | 46 +++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/src/c/log/log.py b/src/c/log/log.py index 4cb209e..da9bdfe 100644 --- a/src/c/log/log.py +++ b/src/c/log/log.py @@ -6,11 +6,11 @@ class bcolors: """ Define constant color value for different level """ - DEBUG = '\033[94m' - INFO = '\033[95m' - WARNING = '\033[93m' - FAIL = '\033[91m' - ENDC = '\033[0m' + DEBUG = '\033[94m ' + INFO = ' \033[95m ' + WARNING = ' \033[93m ' + FAIL = ' \033[91m ' + ENDC = ' \033[0m ' class lvl: """ @@ -21,6 +21,7 @@ class lvl: INFO = 20 WARNING = 30 FAIL = 40 + CRITICAL = 50 class SingleLevelFilter(logging.Filter): """Filter for one level""" @@ -50,7 +51,6 @@ class Log(object): error.log -> error Write all message on terminal too """ - logging.addLevelName(lvl.SUCCESS, "SUCCESS") self.logger = logging.getLogger() self.logger.setLevel(logging.DEBUG) formatter = logging.Formatter('%(asctime)-15s :: %(levelname)s :: %(message)s') @@ -72,20 +72,20 @@ class Log(object): self.logger.addHandler(steam_handler) -def printL(self,pMsg,pLvl): - """ - Add color and write in log with an define level - pMsg : message to write in log - pLvl : level of log message - """ - if pLvl == lvl.DEBUG : - pMsg = bcolors.DEBUG + str(pMsg) + bcolors.ENDC - elif pLvl == lvl.INFO : - pMsg = bcolors.INFO + str(pMsg) + bcolors.ENDC - elif pLvl == lvl.SUCCESS : - pMsg = bcolors.SUCCESS + str(pMsg) + bcolors.ENDC - elif pLvl == lvl.WARNING : - pMsg = bcolors.WARNING + str(pMsg) + bcolors.ENDC - elif pLvl == lvl.FAIL : - pMsg = bcolors.FAIL + str(pMsg) + bcolors.ENDC - self.logger.log(pLvl,pMsg) \ No newline at end of file + def printL(self,pMsg,pLvl): + """ + Add color and write in log with an define level + pMsg : message to write in log + pLvl : level of log message + """ + if pLvl == lvl.DEBUG : + pMsg = bcolors.DEBUG + str(pMsg) + bcolors.ENDC + elif pLvl == lvl.INFO : + pMsg = bcolors.INFO + str(pMsg) + bcolors.ENDC + elif pLvl == lvl.SUCCESS : + pMsg = bcolors.SUCCESS + str(pMsg) + bcolors.ENDC + elif pLvl == lvl.WARNING : + pMsg = bcolors.WARNING + str(pMsg) + bcolors.ENDC + elif pLvl == lvl.FAIL : + pMsg = bcolors.FAIL + str(pMsg) + bcolors.ENDC + self.logger.log(pLvl,pMsg) \ No newline at end of file From 3f5c766e2fcef5a93ea11a5100864477d09d06ab Mon Sep 17 00:00:00 2001 From: sidya82 Date: Tue, 23 Dec 2014 11:37:14 +0100 Subject: [PATCH 6/8] New changelist --- src/m/Parking.py | 52 +++++++++++++++++++++++++++++++++++++++++------- src/m/Place.py | 45 ++++++++++++++++++++++++++++++++++++++++- 2 files changed, 89 insertions(+), 8 deletions(-) diff --git a/src/m/Parking.py b/src/m/Parking.py index 015b4de..81b03bf 100644 --- a/src/m/Parking.py +++ b/src/m/Parking.py @@ -1,17 +1,55 @@ __author__ = 'sidya' +from src.m.Place import Place, TypePlace, ListeTypePlace -class Parking : - def __init__(self, placesParNiv, nbNiv): - self.__nbPlacesParNiveau = placesParNiv + +class Parking: + """ + Definie un parking + """ + def __init__(self, nbNiv, typePlacesParNiv): + #self.__nbPlacesParNiveau = placesParNiv self.__prix = 10 self.__nbNiveaux = nbNiv + self.__Places = {} + for n in range(0, nbNiv): + l = [] + for t in typePlacesParNiv.liste: + for i in range(0, t.nb): + l.append(Place(i+1, n, t.longueur, t.hauteur)) + self.__Places[n+1] = l - def recherchePlace(self,voiture): - pass + def recherchePlace(self, voiture): + trouve = False + for i in range(0, self.__nbNiveaux): + if trouve : + break + l = [p for p in self.__Places[i].estLibre] + for p in l : + if p.dimValide(voiture.hauteur, voiture.longueur) : + pass + trouve = True + break + return trouve - def nbPlacesLibresParNiveau(self, niveau): - pass + def nbPlacesLibresNiveau(self, niveau): + i = 0 + for p in self.__Places[niveau]: + if p.estLibre: + i += 1 + return i def addAbonnement(self, Abonnement): pass + + def __str__(self): + return "Parking : niveau : " + str(self.__nbNiveaux) + + +if __name__ == "__main__": + l = ListeTypePlace() + l.add(10, 11, 5) + l.add(7, 12, 5) + p = Parking(5, l) + print(p) + print(p.nbPlacesLibresNiveau(1)) \ No newline at end of file diff --git a/src/m/Place.py b/src/m/Place.py index 5de5c05..5d371ed 100644 --- a/src/m/Place.py +++ b/src/m/Place.py @@ -6,8 +6,51 @@ class Place : self.__numero = numero self.__niveau = niveau self.__longueur = longueur - self.__estLibre = True self.__hauteur = hauteur + self.__estLibre = True + self.__estReserver = False + + @property + def estLibre(self): + return self.__estLibre + + @property + def estReserver(self): + return self.__estReserver + + def dimValide(self,h,l): + return h Date: Tue, 23 Dec 2014 19:05:26 +0100 Subject: [PATCH 7/8] New changelist --- src/c/Acces.py | 18 ++--- src/c/Main.py | 19 +++-- src/c/Teleporteur.py | 3 - src/m/Parking.py | 29 +++++--- src/m/Place.py | 73 +++++++++++++++---- src/v/Borne.py | 114 +++++++++++++++++++++++++++++- src/v/Camera.py | 7 +- src/v/MainWindow.py | 54 +++++++------- src/v/Panneau.py | 6 +- src/v/Quitter.py | 163 +++++++++++++++++++++++++++++++++++++++++++ 10 files changed, 411 insertions(+), 75 deletions(-) create mode 100644 src/v/Quitter.py diff --git a/src/c/Acces.py b/src/c/Acces.py index b16794b..840e5b0 100644 --- a/src/c/Acces.py +++ b/src/c/Acces.py @@ -8,14 +8,16 @@ __author__ = 'sidya' class Acces: def __init__(self): - self.__parkings = {} - self.__clients = {} + self.__parking = Parking() + self.__camera = Camera() + self.__borne = Borne() + self.__panneau = Panneau() - def actionnerCamera(self, client): - pass + def actionnerCamera(self): + return self.__camera.donnerVoiture() - def actionnerPanneau(self): - pass + def majPanneau(self): + self.__panneau.afficherNbPlaceDisponible() - def lancerProcedureImmatr(self, voiture): - pass \ No newline at end of file + def lancerProcedureEntree(self,client): + self.__borne.afficher("Inserer votre carte ou valider") diff --git a/src/c/Main.py b/src/c/Main.py index bdb57fc..db456f8 100644 --- a/src/c/Main.py +++ b/src/c/Main.py @@ -1,16 +1,23 @@ -from PyQt4 import QtGui import sys + +from PyQt4 import QtGui + from src.v.MainWindow import Ui_MainWindow from src.c.log.log import Log + __author__ = 'sidya' class Main: def __init__(self): - #Init des logs + # Init des logs self.log = Log() + #Liste Clients et Parking + self.__clients = {} + self.__Parkings = {} + app = QtGui.QApplication(sys.argv) self.view = QtGui.QMainWindow() self.ui = Ui_MainWindow() @@ -18,20 +25,20 @@ class Main: #Chargement activité self.loadLastActivity() - + self.ui.addListeParkings(10) self.view.show() sys.exit(app.exec_()) - def activity(self,msg,lvl): - self.log.printL(msg,10) + def activity(self, msg, lvl): + self.log.printL(msg, lvl) self.ui.addItemActivite(self.activite.readlines()[-1]) def loadLastActivity(self): try: self.activite = open("log/activity.log", "r") - except IOError : + except IOError: self.activite = open("log/activity.log", "w") self.activite.close() self.activite = open("log/activity.log", "r") diff --git a/src/c/Teleporteur.py b/src/c/Teleporteur.py index bd83514..7b663ea 100644 --- a/src/c/Teleporteur.py +++ b/src/c/Teleporteur.py @@ -2,9 +2,6 @@ __author__ = 'sidya' class Teleporteur : - def __init__(self): - pass - def teleporterVoiture(self, voiture, place): pass diff --git a/src/m/Parking.py b/src/m/Parking.py index 81b03bf..a56f605 100644 --- a/src/m/Parking.py +++ b/src/m/Parking.py @@ -1,14 +1,15 @@ __author__ = 'sidya' -from src.m.Place import Place, TypePlace, ListeTypePlace +from src.m.Place import Place, ListeTypePlace class Parking: """ Definie un parking """ - def __init__(self, nbNiv, typePlacesParNiv): - #self.__nbPlacesParNiveau = placesParNiv + def __init__(self, nbNiv, typePlacesParNiv,nom): + self.__nom = nom + self.__nbPlacesParNiveau = typePlacesParNiv.nbPlaceTotal self.__prix = 10 self.__nbNiveaux = nbNiv self.__Places = {} @@ -16,21 +17,21 @@ class Parking: l = [] for t in typePlacesParNiv.liste: for i in range(0, t.nb): - l.append(Place(i+1, n, t.longueur, t.hauteur)) - self.__Places[n+1] = l + l.append(Place(i + 1, n, t.longueur, t.hauteur)) + self.__Places[n ] = l def recherchePlace(self, voiture): - trouve = False + place = None for i in range(0, self.__nbNiveaux): - if trouve : + if place != None: break l = [p for p in self.__Places[i].estLibre] - for p in l : - if p.dimValide(voiture.hauteur, voiture.longueur) : + for p in l: + if p.dimValide(voiture.hauteur, voiture.longueur): pass - trouve = True + place = p break - return trouve + return place def nbPlacesLibresNiveau(self, niveau): i = 0 @@ -39,6 +40,12 @@ class Parking: i += 1 return i + def nbPlacesLibresParking(self): + nbP = 0 + for i in range(0,self.__nbNiveaux) : + nbP += self.nbPlacesLibresNiveau(i) + return nbP + def addAbonnement(self, Abonnement): pass diff --git a/src/m/Place.py b/src/m/Place.py index 5d371ed..6730b1c 100644 --- a/src/m/Place.py +++ b/src/m/Place.py @@ -1,15 +1,21 @@ +import sys +import datetime + __author__ = 'sidya' -class Place : - def __init__(self,numero,niveau,longueur,hauteur): +class Place: + """ + Representation d'une place dans un parking + """ + def __init__(self, numero, niveau, longueur, hauteur): self.__numero = numero self.__niveau = niveau self.__longueur = longueur self.__hauteur = hauteur self.__estLibre = True self.__estReserver = False - + self.__Placement = None @property def estLibre(self): return self.__estLibre @@ -18,15 +24,36 @@ class Place : def estReserver(self): return self.__estReserver - def dimValide(self,h,l): - return h", None)) + self.pushButton_9.setText(_translate("Form", "Valider", None)) + + def delivrerTicket(self, client): pass diff --git a/src/v/Camera.py b/src/v/Camera.py index f6de542..046576c 100644 --- a/src/v/Camera.py +++ b/src/v/Camera.py @@ -2,6 +2,9 @@ __author__ = 'sidya' class Camera: - def __init__(self): - pass + def detecterVoiture(self): + return True + def donnerVoiture(self): + v = Voiture() # need classe voiture \o/ + return v diff --git a/src/v/MainWindow.py b/src/v/MainWindow.py index de4ec19..81a3789 100644 --- a/src/v/MainWindow.py +++ b/src/v/MainWindow.py @@ -2,13 +2,12 @@ # Form implementation generated from reading ui file 'main.ui' # -# Created: Wed Dec 10 16:36:07 2014 +# Created: Tue Dec 23 18:26:40 2014 # by: PyQt4 UI code generator 4.11.3 # # WARNING! All changes made in this file will be lost! from PyQt4 import QtCore, QtGui -from PyQt4.QtGui import QListWidgetItem try: _fromUtf8 = QtCore.QString.fromUtf8 @@ -27,7 +26,7 @@ except AttributeError: class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName(_fromUtf8("MainWindow")) - MainWindow.resize(522, 412) + MainWindow.resize(553, 479) self.centralwidget = QtGui.QWidget(MainWindow) self.centralwidget.setObjectName(_fromUtf8("centralwidget")) self.tabWidget = QtGui.QTabWidget(self.centralwidget) @@ -38,9 +37,9 @@ class Ui_MainWindow(object): self.label = QtGui.QLabel(self.tab) self.label.setGeometry(QtCore.QRect(40, 10, 61, 15)) self.label.setObjectName(_fromUtf8("label")) - self.log = QtGui.QListWidget(self.tab) - self.log.setGeometry(QtCore.QRect(30, 40, 421, 241)) - self.log.setObjectName(_fromUtf8("log")) + self.listWidget = QtGui.QListWidget(self.tab) + self.listWidget.setGeometry(QtCore.QRect(60, 50, 431, 261)) + self.listWidget.setObjectName(_fromUtf8("listWidget")) self.tabWidget.addTab(self.tab, _fromUtf8("")) self.tab_2 = QtGui.QWidget() self.tab_2.setObjectName(_fromUtf8("tab_2")) @@ -92,18 +91,18 @@ class Ui_MainWindow(object): self.tabWidget.addTab(self.tab_2, _fromUtf8("")) self.tab_5 = QtGui.QWidget() self.tab_5.setObjectName(_fromUtf8("tab_5")) - self.tableView = QtGui.QTableView(self.tab_5) - self.tableView.setGeometry(QtCore.QRect(50, 40, 431, 201)) - self.tableView.setObjectName(_fromUtf8("tableView")) + self.tableWidget = QtGui.QTableWidget(self.tab_5) + self.tableWidget.setGeometry(QtCore.QRect(60, 20, 431, 351)) + self.tableWidget.setObjectName(_fromUtf8("tableWidget")) + self.tableWidget.setColumnCount(0) + self.tableWidget.setRowCount(0) self.tabWidget.addTab(self.tab_5, _fromUtf8("")) MainWindow.setCentralWidget(self.centralwidget) self.menubar = QtGui.QMenuBar(MainWindow) - self.menubar.setGeometry(QtCore.QRect(0, 0, 522, 25)) + self.menubar.setGeometry(QtCore.QRect(0, 0, 553, 25)) self.menubar.setObjectName(_fromUtf8("menubar")) - self.menuBorne = QtGui.QMenu(self.menubar) - self.menuBorne.setObjectName(_fromUtf8("menuBorne")) - self.menuBornes = QtGui.QMenu(self.menubar) - self.menuBornes.setObjectName(_fromUtf8("menuBornes")) + self.menuFichier = QtGui.QMenu(self.menubar) + self.menuFichier.setObjectName(_fromUtf8("menuFichier")) self.menuA_propos = QtGui.QMenu(self.menubar) self.menuA_propos.setObjectName(_fromUtf8("menuA_propos")) MainWindow.setMenuBar(self.menubar) @@ -124,21 +123,21 @@ class Ui_MainWindow(object): self.actionListe.setObjectName(_fromUtf8("actionListe")) self.actionAjouter = QtGui.QAction(MainWindow) self.actionAjouter.setObjectName(_fromUtf8("actionAjouter")) - self.menuBorne.addSeparator() - self.menuBorne.addAction(self.actionCharger) - self.menuBorne.addAction(self.actionSauvegarder) - self.menubar.addAction(self.menuBorne.menuAction()) - self.menubar.addAction(self.menuBornes.menuAction()) + self.actionQuitter = QtGui.QAction(MainWindow) + self.actionQuitter.setObjectName(_fromUtf8("actionQuitter")) + self.menuFichier.addAction(self.actionCharger) + self.menuFichier.addAction(self.actionSauvegarder) + self.menuFichier.addSeparator() + self.menuFichier.addAction(self.actionQuitter) + self.menubar.addAction(self.menuFichier.menuAction()) self.menubar.addAction(self.menuA_propos.menuAction()) self.retranslateUi(MainWindow) - self.tabWidget.setCurrentIndex(0) + self.tabWidget.setCurrentIndex(2) QtCore.QMetaObject.connectSlotsByName(MainWindow) - - def retranslateUi(self, MainWindow): - MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow", None)) + MainWindow.setWindowTitle(_translate("MainWindow", "Administration", None)) self.label.setText(_translate("MainWindow", "Activité :", None)) self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("MainWindow", "Activite", None)) self.label_13.setText(_translate("MainWindow", "Nom :", None)) @@ -150,8 +149,7 @@ class Ui_MainWindow(object): self.pushButton.setText(_translate("MainWindow", "Supprimer", None)) self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("MainWindow", "Parkings", None)) self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_5), _translate("MainWindow", "Membres", None)) - self.menuBorne.setTitle(_translate("MainWindow", "Fichier", None)) - self.menuBornes.setTitle(_translate("MainWindow", "Quitter", None)) + self.menuFichier.setTitle(_translate("MainWindow", "Fichier", None)) self.menuA_propos.setTitle(_translate("MainWindow", "A propos", None)) self.actionCharger.setText(_translate("MainWindow", "Charger", None)) self.actionSauvegarder.setText(_translate("MainWindow", "Sauvegarder", None)) @@ -160,9 +158,15 @@ class Ui_MainWindow(object): self.actionRechercher.setText(_translate("MainWindow", "Rechercher", None)) self.actionListe.setText(_translate("MainWindow", "Liste", None)) self.actionAjouter.setText(_translate("MainWindow", "Ajouter", None)) + self.actionQuitter.setText(_translate("MainWindow", "Quitter", None)) + + ################################NOT GENERATED#################################################### def addItemActivite(self, line) : self.log.addItem(line) + + def addListeParkings(self, parkings) : + self.comboBox.addItem("lol") \ No newline at end of file diff --git a/src/v/Panneau.py b/src/v/Panneau.py index 17108ae..64edb88 100644 --- a/src/v/Panneau.py +++ b/src/v/Panneau.py @@ -1,8 +1,6 @@ __author__ = 'sidya' -class Panneau: - def __init__(self): - pass +class Panneau: def afficherNbPlaceDisponible(self, parking): - pass \ No newline at end of file + print(parking.nbPlacesLibresParking()) \ No newline at end of file diff --git a/src/v/Quitter.py b/src/v/Quitter.py new file mode 100644 index 0000000..b629525 --- /dev/null +++ b/src/v/Quitter.py @@ -0,0 +1,163 @@ +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'main.ui' +# +# Created: Wed Dec 10 16:47:28 2014 +# by: PyQt4 UI code generator 4.11.3 +# +# WARNING! All changes made in this file will be lost! + +from PyQt4 import QtCore, QtGui + +try: + _fromUtf8 = QtCore.QString.fromUtf8 +except AttributeError: + def _fromUtf8(s): + return s + +try: + _encoding = QtGui.QApplication.UnicodeUTF8 + def _translate(context, text, disambig): + return QtGui.QApplication.translate(context, text, disambig, _encoding) +except AttributeError: + def _translate(context, text, disambig): + return QtGui.QApplication.translate(context, text, disambig) + +class Ui_MainWindow(object): + def setupUi(self, MainWindow): + MainWindow.setObjectName(_fromUtf8("MainWindow")) + MainWindow.resize(522, 412) + self.centralwidget = QtGui.QWidget(MainWindow) + self.centralwidget.setObjectName(_fromUtf8("centralwidget")) + self.tabWidget = QtGui.QTabWidget(self.centralwidget) + self.tabWidget.setGeometry(QtCore.QRect(0, 0, 561, 441)) + self.tabWidget.setObjectName(_fromUtf8("tabWidget")) + self.tab = QtGui.QWidget() + self.tab.setObjectName(_fromUtf8("tab")) + self.label = QtGui.QLabel(self.tab) + self.label.setGeometry(QtCore.QRect(40, 10, 61, 15)) + self.label.setObjectName(_fromUtf8("label")) + self.log = QtGui.QListView(self.tab) + self.log.setGeometry(QtCore.QRect(30, 40, 421, 241)) + self.log.setObjectName(_fromUtf8("log")) + self.tabWidget.addTab(self.tab, _fromUtf8("")) + self.tab_2 = QtGui.QWidget() + self.tab_2.setObjectName(_fromUtf8("tab_2")) + self.formLayoutWidget = QtGui.QWidget(self.tab_2) + self.formLayoutWidget.setGeometry(QtCore.QRect(100, 80, 311, 151)) + self.formLayoutWidget.setObjectName(_fromUtf8("formLayoutWidget")) + self.formLayout_3 = QtGui.QFormLayout(self.formLayoutWidget) + self.formLayout_3.setMargin(0) + self.formLayout_3.setObjectName(_fromUtf8("formLayout_3")) + self.label_13 = QtGui.QLabel(self.formLayoutWidget) + self.label_13.setObjectName(_fromUtf8("label_13")) + self.formLayout_3.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_13) + self.label_14 = QtGui.QLabel(self.formLayoutWidget) + self.label_14.setObjectName(_fromUtf8("label_14")) + self.formLayout_3.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_14) + self.lineEdit_11 = QtGui.QLineEdit(self.formLayoutWidget) + self.lineEdit_11.setObjectName(_fromUtf8("lineEdit_11")) + self.formLayout_3.setWidget(0, QtGui.QFormLayout.FieldRole, self.lineEdit_11) + self.lineEdit_12 = QtGui.QLineEdit(self.formLayoutWidget) + self.lineEdit_12.setObjectName(_fromUtf8("lineEdit_12")) + self.formLayout_3.setWidget(1, QtGui.QFormLayout.FieldRole, self.lineEdit_12) + self.label_15 = QtGui.QLabel(self.formLayoutWidget) + self.label_15.setObjectName(_fromUtf8("label_15")) + self.formLayout_3.setWidget(2, QtGui.QFormLayout.LabelRole, self.label_15) + self.lineEdit_13 = QtGui.QLineEdit(self.formLayoutWidget) + self.lineEdit_13.setObjectName(_fromUtf8("lineEdit_13")) + self.formLayout_3.setWidget(2, QtGui.QFormLayout.FieldRole, self.lineEdit_13) + self.label_16 = QtGui.QLabel(self.formLayoutWidget) + self.label_16.setObjectName(_fromUtf8("label_16")) + self.formLayout_3.setWidget(3, QtGui.QFormLayout.LabelRole, self.label_16) + self.lineEdit_14 = QtGui.QLineEdit(self.formLayoutWidget) + self.lineEdit_14.setObjectName(_fromUtf8("lineEdit_14")) + self.formLayout_3.setWidget(3, QtGui.QFormLayout.FieldRole, self.lineEdit_14) + self.label_17 = QtGui.QLabel(self.formLayoutWidget) + self.label_17.setObjectName(_fromUtf8("label_17")) + self.formLayout_3.setWidget(4, QtGui.QFormLayout.LabelRole, self.label_17) + self.lineEdit_15 = QtGui.QLineEdit(self.formLayoutWidget) + self.lineEdit_15.setObjectName(_fromUtf8("lineEdit_15")) + self.formLayout_3.setWidget(4, QtGui.QFormLayout.FieldRole, self.lineEdit_15) + self.pushButton_2 = QtGui.QPushButton(self.tab_2) + self.pushButton_2.setGeometry(QtCore.QRect(140, 270, 101, 27)) + self.pushButton_2.setObjectName(_fromUtf8("pushButton_2")) + self.comboBox = QtGui.QComboBox(self.tab_2) + self.comboBox.setGeometry(QtCore.QRect(100, 40, 321, 27)) + self.comboBox.setObjectName(_fromUtf8("comboBox")) + self.pushButton = QtGui.QPushButton(self.tab_2) + self.pushButton.setGeometry(QtCore.QRect(290, 270, 81, 27)) + self.pushButton.setObjectName(_fromUtf8("pushButton")) + self.tabWidget.addTab(self.tab_2, _fromUtf8("")) + self.tab_5 = QtGui.QWidget() + self.tab_5.setObjectName(_fromUtf8("tab_5")) + self.tableView = QtGui.QTableView(self.tab_5) + self.tableView.setGeometry(QtCore.QRect(50, 40, 431, 201)) + self.tableView.setObjectName(_fromUtf8("tableView")) + self.tabWidget.addTab(self.tab_5, _fromUtf8("")) + MainWindow.setCentralWidget(self.centralwidget) + self.menubar = QtGui.QMenuBar(MainWindow) + self.menubar.setGeometry(QtCore.QRect(0, 0, 522, 25)) + self.menubar.setObjectName(_fromUtf8("menubar")) + self.menuBorne = QtGui.QMenu(self.menubar) + self.menuBorne.setObjectName(_fromUtf8("menuBorne")) + self.menuBornes = QtGui.QMenu(self.menubar) + self.menuBornes.setObjectName(_fromUtf8("menuBornes")) + self.menuA_propos = QtGui.QMenu(self.menubar) + self.menuA_propos.setObjectName(_fromUtf8("menuA_propos")) + MainWindow.setMenuBar(self.menubar) + self.statusbar = QtGui.QStatusBar(MainWindow) + self.statusbar.setObjectName(_fromUtf8("statusbar")) + MainWindow.setStatusBar(self.statusbar) + self.actionCharger = QtGui.QAction(MainWindow) + self.actionCharger.setObjectName(_fromUtf8("actionCharger")) + self.actionSauvegarder = QtGui.QAction(MainWindow) + self.actionSauvegarder.setObjectName(_fromUtf8("actionSauvegarder")) + self.actionAfficher = QtGui.QAction(MainWindow) + self.actionAfficher.setObjectName(_fromUtf8("actionAfficher")) + self.actionNouveau = QtGui.QAction(MainWindow) + self.actionNouveau.setObjectName(_fromUtf8("actionNouveau")) + self.actionRechercher = QtGui.QAction(MainWindow) + self.actionRechercher.setObjectName(_fromUtf8("actionRechercher")) + self.actionListe = QtGui.QAction(MainWindow) + self.actionListe.setObjectName(_fromUtf8("actionListe")) + self.actionAjouter = QtGui.QAction(MainWindow) + self.actionAjouter.setObjectName(_fromUtf8("actionAjouter")) + self.menuBorne.addSeparator() + self.menuBorne.addAction(self.actionCharger) + self.menuBorne.addAction(self.actionSauvegarder) + self.menubar.addAction(self.menuBorne.menuAction()) + self.menubar.addAction(self.menuBornes.menuAction()) + self.menubar.addAction(self.menuA_propos.menuAction()) + + self.retranslateUi(MainWindow) + self.tabWidget.setCurrentIndex(1) + QtCore.QMetaObject.connectSlotsByName(MainWindow) + + + + + def retranslateUi(self, MainWindow): + MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow", None)) + self.label.setText(_translate("MainWindow", "Activité :", None)) + self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), _translate("MainWindow", "Activite", None)) + self.label_13.setText(_translate("MainWindow", "Nom :", None)) + self.label_14.setText(_translate("MainWindow", "Niveau :", None)) + self.label_15.setText(_translate("MainWindow", "Place / niveau :", None)) + self.label_16.setText(_translate("MainWindow", "Place disponible :", None)) + self.label_17.setText(_translate("MainWindow", "Place Reserve Super Abo : ", None)) + self.pushButton_2.setText(_translate("MainWindow", "Creer/Modifier", None)) + self.pushButton.setText(_translate("MainWindow", "Supprimer", None)) + self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("MainWindow", "Parkings", None)) + self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_5), _translate("MainWindow", "Membres", None)) + self.menuBorne.setTitle(_translate("MainWindow", "Fichier", None)) + self.menuBornes.setTitle(_translate("MainWindow", "Quitter", None)) + self.menuA_propos.setTitle(_translate("MainWindow", "A propos", None)) + self.actionCharger.setText(_translate("MainWindow", "Charger", None)) + self.actionSauvegarder.setText(_translate("MainWindow", "Sauvegarder", None)) + self.actionAfficher.setText(_translate("MainWindow", "Afficher", None)) + self.actionNouveau.setText(_translate("MainWindow", "Nouveau", None)) + self.actionRechercher.setText(_translate("MainWindow", "Rechercher", None)) + self.actionListe.setText(_translate("MainWindow", "Liste", None)) + self.actionAjouter.setText(_translate("MainWindow", "Ajouter", None)) + From 138ae3bc69f64eb5ceb597439902542f95272ac2 Mon Sep 17 00:00:00 2001 From: sidya82 Date: Tue, 23 Dec 2014 22:18:11 +0100 Subject: [PATCH 8/8] New changelist --- src/c/Main.py | 18 ++- src/m/Parking.py | 15 ++- src/v/MainWindow.py | 122 +++++++++++++------ ui/main.ui | 287 +++++++++++++++++++++++--------------------- 4 files changed, 263 insertions(+), 179 deletions(-) diff --git a/src/c/Main.py b/src/c/Main.py index db456f8..35150c6 100644 --- a/src/c/Main.py +++ b/src/c/Main.py @@ -4,7 +4,7 @@ from PyQt4 import QtGui from src.v.MainWindow import Ui_MainWindow from src.c.log.log import Log - +from src.m.Parking import Parking, ListeTypePlace __author__ = 'sidya' @@ -14,9 +14,16 @@ class Main: # Init des logs self.log = Log() + l = ListeTypePlace() + l.add(10, 11, 5) + l.add(7, 12, 5) + p = Parking(5, l,"lol") + #Liste Clients et Parking - self.__clients = {} - self.__Parkings = {} + self.__clients = [] + self.__parkings = [p] + + app = QtGui.QApplication(sys.argv) self.view = QtGui.QMainWindow() @@ -25,7 +32,7 @@ class Main: #Chargement activité self.loadLastActivity() - self.ui.addListeParkings(10) + self.majListeParking() self.view.show() sys.exit(app.exec_()) @@ -46,3 +53,6 @@ class Main: liste = self.activite.readlines() for l in [l[:-1] for l in liste[-11:-1]]: self.ui.addItemActivite(l) + + def majListeParking(self): + self.ui.majListeParkings(self.__parkings) diff --git a/src/m/Parking.py b/src/m/Parking.py index a56f605..02b2316 100644 --- a/src/m/Parking.py +++ b/src/m/Parking.py @@ -18,7 +18,19 @@ class Parking: for t in typePlacesParNiv.liste: for i in range(0, t.nb): l.append(Place(i + 1, n, t.longueur, t.hauteur)) - self.__Places[n ] = l + self.__Places[n] = l + + @property + def nom(self): + return self.__nom + + @property + def nbPlacesParNiveau(self): + return self.__nbPlacesParNiveau + + @property + def nbNiveau(self): + return self.__nbNiveaux def recherchePlace(self, voiture): place = None @@ -40,6 +52,7 @@ class Parking: i += 1 return i + @property def nbPlacesLibresParking(self): nbP = 0 for i in range(0,self.__nbNiveaux) : diff --git a/src/v/MainWindow.py b/src/v/MainWindow.py index 81a3789..4ce0f41 100644 --- a/src/v/MainWindow.py +++ b/src/v/MainWindow.py @@ -2,7 +2,7 @@ # Form implementation generated from reading ui file 'main.ui' # -# Created: Tue Dec 23 18:26:40 2014 +# Created: Tue Dec 23 22:14:01 2014 # by: PyQt4 UI code generator 4.11.3 # # WARNING! All changes made in this file will be lost! @@ -26,7 +26,7 @@ except AttributeError: class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName(_fromUtf8("MainWindow")) - MainWindow.resize(553, 479) + MainWindow.resize(561, 479) self.centralwidget = QtGui.QWidget(MainWindow) self.centralwidget.setObjectName(_fromUtf8("centralwidget")) self.tabWidget = QtGui.QTabWidget(self.centralwidget) @@ -43,51 +43,62 @@ class Ui_MainWindow(object): self.tabWidget.addTab(self.tab, _fromUtf8("")) self.tab_2 = QtGui.QWidget() self.tab_2.setObjectName(_fromUtf8("tab_2")) - self.formLayoutWidget = QtGui.QWidget(self.tab_2) - self.formLayoutWidget.setGeometry(QtCore.QRect(100, 80, 311, 151)) - self.formLayoutWidget.setObjectName(_fromUtf8("formLayoutWidget")) - self.formLayout_3 = QtGui.QFormLayout(self.formLayoutWidget) - self.formLayout_3.setMargin(0) + self.verticalLayout = QtGui.QVBoxLayout(self.tab_2) + self.verticalLayout.setObjectName(_fromUtf8("verticalLayout")) + self.comboBox = QtGui.QComboBox(self.tab_2) + self.comboBox.setObjectName(_fromUtf8("comboBox")) + self.verticalLayout.addWidget(self.comboBox) + self.formLayout_3 = QtGui.QFormLayout() self.formLayout_3.setObjectName(_fromUtf8("formLayout_3")) - self.label_13 = QtGui.QLabel(self.formLayoutWidget) + self.label_13 = QtGui.QLabel(self.tab_2) self.label_13.setObjectName(_fromUtf8("label_13")) self.formLayout_3.setWidget(0, QtGui.QFormLayout.LabelRole, self.label_13) - self.label_14 = QtGui.QLabel(self.formLayoutWidget) + self.label_14 = QtGui.QLabel(self.tab_2) self.label_14.setObjectName(_fromUtf8("label_14")) self.formLayout_3.setWidget(1, QtGui.QFormLayout.LabelRole, self.label_14) - self.lineEdit_11 = QtGui.QLineEdit(self.formLayoutWidget) - self.lineEdit_11.setObjectName(_fromUtf8("lineEdit_11")) - self.formLayout_3.setWidget(0, QtGui.QFormLayout.FieldRole, self.lineEdit_11) - self.lineEdit_12 = QtGui.QLineEdit(self.formLayoutWidget) - self.lineEdit_12.setObjectName(_fromUtf8("lineEdit_12")) - self.formLayout_3.setWidget(1, QtGui.QFormLayout.FieldRole, self.lineEdit_12) - self.label_15 = QtGui.QLabel(self.formLayoutWidget) + self.label_15 = QtGui.QLabel(self.tab_2) self.label_15.setObjectName(_fromUtf8("label_15")) self.formLayout_3.setWidget(2, QtGui.QFormLayout.LabelRole, self.label_15) - self.lineEdit_13 = QtGui.QLineEdit(self.formLayoutWidget) - self.lineEdit_13.setObjectName(_fromUtf8("lineEdit_13")) - self.formLayout_3.setWidget(2, QtGui.QFormLayout.FieldRole, self.lineEdit_13) - self.label_16 = QtGui.QLabel(self.formLayoutWidget) + self.label_16 = QtGui.QLabel(self.tab_2) self.label_16.setObjectName(_fromUtf8("label_16")) self.formLayout_3.setWidget(3, QtGui.QFormLayout.LabelRole, self.label_16) - self.lineEdit_14 = QtGui.QLineEdit(self.formLayoutWidget) - self.lineEdit_14.setObjectName(_fromUtf8("lineEdit_14")) - self.formLayout_3.setWidget(3, QtGui.QFormLayout.FieldRole, self.lineEdit_14) - self.label_17 = QtGui.QLabel(self.formLayoutWidget) + self.label_17 = QtGui.QLabel(self.tab_2) self.label_17.setObjectName(_fromUtf8("label_17")) self.formLayout_3.setWidget(4, QtGui.QFormLayout.LabelRole, self.label_17) - self.lineEdit_15 = QtGui.QLineEdit(self.formLayoutWidget) - self.lineEdit_15.setObjectName(_fromUtf8("lineEdit_15")) - self.formLayout_3.setWidget(4, QtGui.QFormLayout.FieldRole, self.lineEdit_15) + self.label_2 = QtGui.QLabel(self.tab_2) + self.label_2.setObjectName(_fromUtf8("label_2")) + self.formLayout_3.setWidget(0, QtGui.QFormLayout.FieldRole, self.label_2) + self.label_3 = QtGui.QLabel(self.tab_2) + self.label_3.setObjectName(_fromUtf8("label_3")) + self.formLayout_3.setWidget(1, QtGui.QFormLayout.FieldRole, self.label_3) + self.label_4 = QtGui.QLabel(self.tab_2) + self.label_4.setObjectName(_fromUtf8("label_4")) + self.formLayout_3.setWidget(2, QtGui.QFormLayout.FieldRole, self.label_4) + self.label_5 = QtGui.QLabel(self.tab_2) + self.label_5.setObjectName(_fromUtf8("label_5")) + self.formLayout_3.setWidget(3, QtGui.QFormLayout.FieldRole, self.label_5) + self.label_6 = QtGui.QLabel(self.tab_2) + self.label_6.setObjectName(_fromUtf8("label_6")) + self.formLayout_3.setWidget(4, QtGui.QFormLayout.FieldRole, self.label_6) + self.verticalLayout.addLayout(self.formLayout_3) + self.horizontalLayout = QtGui.QHBoxLayout() + self.horizontalLayout.setObjectName(_fromUtf8("horizontalLayout")) + self.pushButton_4 = QtGui.QPushButton(self.tab_2) + self.pushButton_4.setObjectName(_fromUtf8("pushButton_4")) + self.horizontalLayout.addWidget(self.pushButton_4) + self.pushButton_3 = QtGui.QPushButton(self.tab_2) + self.pushButton_3.setObjectName(_fromUtf8("pushButton_3")) + self.horizontalLayout.addWidget(self.pushButton_3) + self.verticalLayout.addLayout(self.horizontalLayout) + self.pushButton_5 = QtGui.QPushButton(self.tab_2) + self.pushButton_5.setObjectName(_fromUtf8("pushButton_5")) + self.verticalLayout.addWidget(self.pushButton_5) self.pushButton_2 = QtGui.QPushButton(self.tab_2) - self.pushButton_2.setGeometry(QtCore.QRect(140, 270, 101, 27)) self.pushButton_2.setObjectName(_fromUtf8("pushButton_2")) - self.comboBox = QtGui.QComboBox(self.tab_2) - self.comboBox.setGeometry(QtCore.QRect(100, 40, 321, 27)) - self.comboBox.setObjectName(_fromUtf8("comboBox")) + self.verticalLayout.addWidget(self.pushButton_2) self.pushButton = QtGui.QPushButton(self.tab_2) - self.pushButton.setGeometry(QtCore.QRect(290, 270, 81, 27)) self.pushButton.setObjectName(_fromUtf8("pushButton")) + self.verticalLayout.addWidget(self.pushButton) self.tabWidget.addTab(self.tab_2, _fromUtf8("")) self.tab_5 = QtGui.QWidget() self.tab_5.setObjectName(_fromUtf8("tab_5")) @@ -97,9 +108,12 @@ class Ui_MainWindow(object): self.tableWidget.setColumnCount(0) self.tableWidget.setRowCount(0) self.tabWidget.addTab(self.tab_5, _fromUtf8("")) + self.tab_3 = QtGui.QWidget() + self.tab_3.setObjectName(_fromUtf8("tab_3")) + self.tabWidget.addTab(self.tab_3, _fromUtf8("")) MainWindow.setCentralWidget(self.centralwidget) self.menubar = QtGui.QMenuBar(MainWindow) - self.menubar.setGeometry(QtCore.QRect(0, 0, 553, 25)) + self.menubar.setGeometry(QtCore.QRect(0, 0, 561, 25)) self.menubar.setObjectName(_fromUtf8("menubar")) self.menuFichier = QtGui.QMenu(self.menubar) self.menuFichier.setObjectName(_fromUtf8("menuFichier")) @@ -125,15 +139,18 @@ class Ui_MainWindow(object): self.actionAjouter.setObjectName(_fromUtf8("actionAjouter")) self.actionQuitter = QtGui.QAction(MainWindow) self.actionQuitter.setObjectName(_fromUtf8("actionQuitter")) + self.action = QtGui.QAction(MainWindow) + self.action.setObjectName(_fromUtf8("action")) self.menuFichier.addAction(self.actionCharger) self.menuFichier.addAction(self.actionSauvegarder) self.menuFichier.addSeparator() self.menuFichier.addAction(self.actionQuitter) + self.menuA_propos.addAction(self.action) self.menubar.addAction(self.menuFichier.menuAction()) self.menubar.addAction(self.menuA_propos.menuAction()) self.retranslateUi(MainWindow) - self.tabWidget.setCurrentIndex(2) + self.tabWidget.setCurrentIndex(1) QtCore.QMetaObject.connectSlotsByName(MainWindow) def retranslateUi(self, MainWindow): @@ -145,10 +162,19 @@ class Ui_MainWindow(object): self.label_15.setText(_translate("MainWindow", "Place / niveau :", None)) self.label_16.setText(_translate("MainWindow", "Place disponible :", None)) self.label_17.setText(_translate("MainWindow", "Place Reserve Super Abo : ", None)) - self.pushButton_2.setText(_translate("MainWindow", "Creer/Modifier", None)) + self.label_2.setText(_translate("MainWindow", "TextLabel", None)) + self.label_3.setText(_translate("MainWindow", "TextLabel", None)) + self.label_4.setText(_translate("MainWindow", "TextLabel", None)) + self.label_5.setText(_translate("MainWindow", "TextLabel", None)) + self.label_6.setText(_translate("MainWindow", "TextLabel", None)) + self.pushButton_4.setText(_translate("MainWindow", "Details Places", None)) + self.pushButton_3.setText(_translate("MainWindow", "Borne", None)) + self.pushButton_5.setText(_translate("MainWindow", "Créer", None)) + self.pushButton_2.setText(_translate("MainWindow", "Modifier", None)) self.pushButton.setText(_translate("MainWindow", "Supprimer", None)) self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), _translate("MainWindow", "Parkings", None)) self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_5), _translate("MainWindow", "Membres", None)) + self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_3), _translate("MainWindow", "Services", None)) self.menuFichier.setTitle(_translate("MainWindow", "Fichier", None)) self.menuA_propos.setTitle(_translate("MainWindow", "A propos", None)) self.actionCharger.setText(_translate("MainWindow", "Charger", None)) @@ -159,14 +185,32 @@ class Ui_MainWindow(object): self.actionListe.setText(_translate("MainWindow", "Liste", None)) self.actionAjouter.setText(_translate("MainWindow", "Ajouter", None)) self.actionQuitter.setText(_translate("MainWindow", "Quitter", None)) - + self.action.setText(_translate("MainWindow", "?", None)) ################################NOT GENERATED#################################################### - def addItemActivite(self, line) : + def addItemActivite(self, line): self.log.addItem(line) - def addListeParkings(self, parkings) : - self.comboBox.addItem("lol") \ No newline at end of file + def majListeParkings(self, parkings): + self.__parkings = parkings + self.comboBox.currentIndexChanged['QString'].connect(self.selectParking) + self.comboBox.clear() + self.comboBox.addItem("Selectionner un parking") + for p in parkings: + self.comboBox.addItem(p.nom) + + def selectParking(self): + self.label_2.clear() + self.label_3.clear() + self.label_4.clear() + self.label_5.clear() + self.label_6.clear() + if(self.comboBox.currentIndex() != 0) : + self.label_2.setText(self.__parkings[self.comboBox.currentIndex()-1].nom) + self.label_3.setText(str(self.__parkings[self.comboBox.currentIndex()-1].nbNiveau)) + self.label_4.setText(str(self.__parkings[self.comboBox.currentIndex()-1].nbPlacesParNiveau)) + self.label_5.setText(str(self.__parkings[self.comboBox.currentIndex()-1].nbPlacesLibresParking)) + self.label_6.setText("lol") diff --git a/ui/main.ui b/ui/main.ui index f31fd83..1e8b0d9 100644 --- a/ui/main.ui +++ b/ui/main.ui @@ -6,12 +6,12 @@ 0 0 - 522 - 412 + 561 + 479 - MainWindow + Administration @@ -24,7 +24,7 @@ - 0 + 1 @@ -43,13 +43,13 @@ Activité : - + - 30 - 40 - 421 - 241 + 60 + 50 + 431 + 261 @@ -58,134 +58,145 @@ Parkings - - - - 100 - 80 - 311 - 151 - - - - - - - Nom : - - - - - - - Niveau : - - - - - - - - - - - - - Place / niveau : - - - - - - - - - - Place disponible : - - - - - - - - - - Place Reserve Super Abo : - - - - - - - - - - - - 140 - 270 - 101 - 27 - - - - Creer/Modifier - - - - - - 100 - 40 - 321 - 27 - - - - - - - 290 - 270 - 81 - 27 - - - - Supprimer - - - label_2 - lineEdit - label_6 - label_5 - lineEdit_3 - label_4 - lineEdit_4 - lineEdit_5 - label_3 - lineEdit_2 - formLayoutWidget - pushButton_2 - comboBox - pushButton + + + + + + + + + + Nom : + + + + + + + Niveau : + + + + + + + Place / niveau : + + + + + + + Place disponible : + + + + + + + Place Reserve Super Abo : + + + + + + + TextLabel + + + + + + + TextLabel + + + + + + + TextLabel + + + + + + + TextLabel + + + + + + + TextLabel + + + + + + + + + + + Details Places + + + + + + + Borne + + + + + + + + + Créer + + + + + + + Modifier + + + + + + + Supprimer + + + + Membres - + - 50 - 40 + 60 + 20 431 - 201 + 351 + + + Services + + @@ -193,30 +204,26 @@ 0 0 - 522 + 561 25 - + Fichier - - - - - Quitter - + + A propos + - - + @@ -255,6 +262,16 @@ Ajouter + + + Quitter + + + + + ? + +