Commit 97e7169c authored by Aurélien's avatar Aurélien
Browse files

creation de classe menuButton

parent 52fe1d46
Loading
Loading
Loading
Loading
+2 −52
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@ from PyQt5.QtWidgets import *

from PyQt5.QtCore import Qt

from view.menuButton import MenuButton
from view.treeView import Clickable


@@ -19,7 +20,7 @@ class LevelGui(QWidget):

        self.createScoreLabel()
        self.createLevelLabel()
        self.menuWidget = MenuWidget(self.color)
        self.menuWidget = MenuButton(self.color)
        self.menuWidget.clickableObject.clicked.connect(controller.menuController.displayMenu)
        self.levelWidget = LevelWidget(self.color)
        self.levelWidget.clickableObject.clicked.connect(controller.displayLevels)
@@ -94,57 +95,6 @@ class LevelGui(QWidget):
        self.msgBox.exec_()


class MenuWidget(QWidget):
    def __init__(self, color):
        super().__init__()
        self.clickableObject = Clickable()
        self.color = color
        layout = QHBoxLayout()
        self.scene = QGraphicsScene()
        self.drawPycto()
        view = QGraphicsView(self.scene)
        layout.addWidget(view)
        self.setStyleSheet("border: 0px")
        self.setLayout(layout)
        self.setFixedSize(60, 60)

    def drawPycto(self):
        pen = QPen(self.color)
        pen.setWidth(3)
        unit = 3.5
        self.scene.setSceneRect(0.25 * unit, unit, 7.5 * unit, 7 * unit)
        line1 = QGraphicsLineItem(1 * unit, 7 * unit, 1 * unit, 3 * unit)
        line2 = QGraphicsLineItem(1 * unit, 7 * unit, 3 * unit, 7 * unit)
        line3 = QGraphicsLineItem(3 * unit, 7 * unit, 3 * unit, 4 * unit)
        line4 = QGraphicsLineItem(3 * unit, 4 * unit, 5 * unit, 4 * unit)
        line5 = QGraphicsLineItem(5 * unit, 4 * unit, 5 * unit, 7 * unit)
        line6 = QGraphicsLineItem(5 * unit, 7 * unit, 7 * unit, 7 * unit)
        line7 = QGraphicsLineItem(7 * unit, 7 * unit, 7 * unit, 3 * unit)
        line8 = QGraphicsLineItem(0.25 * unit, 3.75 * unit, 4 * unit, 0 * unit)
        line9 = QGraphicsLineItem(4 * unit, 0 * unit, 7.75 * unit, 3.75 * unit)
        line1.setPen(pen)
        line2.setPen(pen)
        line3.setPen(pen)
        line4.setPen(pen)
        line5.setPen(pen)
        line6.setPen(pen)
        line7.setPen(pen)
        line8.setPen(pen)
        line9.setPen(pen)
        self.scene.addItem(line1)
        self.scene.addItem(line2)
        self.scene.addItem(line3)
        self.scene.addItem(line4)
        self.scene.addItem(line5)
        self.scene.addItem(line6)
        self.scene.addItem(line7)
        self.scene.addItem(line8)
        self.scene.addItem(line9)

    def mousePressEvent(self, e):
        self.clickableObject.clicked.emit()


class LevelWidget(QWidget):
    def __init__(self, color):
        super().__init__()

view/menuButton.py

0 → 100644
+55 −0
Original line number Diff line number Diff line
from PyQt5.QtGui import QPen
from PyQt5.QtWidgets import *

from view.treeView import Clickable


class MenuButton(QWidget):
    def __init__(self, color):
        super().__init__()
        self.clickableObject = Clickable()
        self.color = color
        layout = QHBoxLayout()
        self.scene = QGraphicsScene()
        self.drawPycto()
        view = QGraphicsView(self.scene)
        layout.addWidget(view)
        self.setStyleSheet("border: 0px")
        self.setLayout(layout)
        self.setFixedSize(60, 60)

    def drawPycto(self):
        pen = QPen(self.color)
        pen.setWidth(3)
        unit = 3.5
        self.scene.setSceneRect(0.25 * unit, unit, 7.5 * unit, 7 * unit)
        line1 = QGraphicsLineItem(1 * unit, 7 * unit, 1 * unit, 3 * unit)
        line2 = QGraphicsLineItem(1 * unit, 7 * unit, 3 * unit, 7 * unit)
        line3 = QGraphicsLineItem(3 * unit, 7 * unit, 3 * unit, 4 * unit)
        line4 = QGraphicsLineItem(3 * unit, 4 * unit, 5 * unit, 4 * unit)
        line5 = QGraphicsLineItem(5 * unit, 4 * unit, 5 * unit, 7 * unit)
        line6 = QGraphicsLineItem(5 * unit, 7 * unit, 7 * unit, 7 * unit)
        line7 = QGraphicsLineItem(7 * unit, 7 * unit, 7 * unit, 3 * unit)
        line8 = QGraphicsLineItem(0.25 * unit, 3.75 * unit, 4 * unit, 0 * unit)
        line9 = QGraphicsLineItem(4 * unit, 0 * unit, 7.75 * unit, 3.75 * unit)
        line1.setPen(pen)
        line2.setPen(pen)
        line3.setPen(pen)
        line4.setPen(pen)
        line5.setPen(pen)
        line6.setPen(pen)
        line7.setPen(pen)
        line8.setPen(pen)
        line9.setPen(pen)
        self.scene.addItem(line1)
        self.scene.addItem(line2)
        self.scene.addItem(line3)
        self.scene.addItem(line4)
        self.scene.addItem(line5)
        self.scene.addItem(line6)
        self.scene.addItem(line7)
        self.scene.addItem(line8)
        self.scene.addItem(line9)

    def mousePressEvent(self, e):
        self.clickableObject.clicked.emit()
 No newline at end of file
+3 −0
Original line number Diff line number Diff line
@@ -194,10 +194,13 @@ class MenuView(QGraphicsView):
        pen.setWidth(5)
        circle1 = QGraphicsEllipseItem(self.c1x, self.c1y, self.circleSize, self.circleSize)
        circle1.setPen(pen)
        circle1.setBrush(QBrush(QColor(235, 245, 251)))
        circle2 = QGraphicsEllipseItem(self.c2x, self.c2y, self.circleSize, self.circleSize)
        circle2.setPen(pen)
        circle2.setBrush(QBrush(QColor(253, 237, 236)))
        circle3 = QGraphicsEllipseItem(self.c3x, self.c3y, self.circleSize, self.circleSize)
        circle3.setPen(pen)
        circle3.setBrush(QBrush(QColor(209, 242, 235)))
        circle4 = QGraphicsEllipseItem(0.45 * self.w, 0.477 * self.h, 0.68 * self.h, 0.68 * self.h)
        circle5 = QGraphicsEllipseItem(0.512 * self.w, 0.61 * self.h, 0.4 * self.h, 0.4 * self.h)
        x1 = QGraphicsEllipseItem(self.c1x + 0.5 * self.circleSize, self.c1y + 0.5 * self.circleSize, 10, 10)