Loading controller/menuController.py +14 −2 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ class MenuController: def displayMenu(self): self.menu.displayGames() self.menu.menuAction.triggered.connect(self.displayMenu) for gameButton in self.menu.gameButtons: if gameButton.game == GameEnum.DYCK_WORD_TO_BINARY_TREE: gameButton.clicked.triggered.connect(self.on_DyckWordToBinaryTree_Button_Pressed) Loading @@ -37,7 +36,20 @@ class MenuController: gameButton.clicked.triggered.connect(self.on_DyckWordToPlanarTree_Button_Pressed) """def displayMenu(self): self.menu.displayGames()""" self.menu.displayGames() for arrow in self.menu.menuWidget.menuView.arrows: if arrow.game == GameEnum.DYCK_WORD_TO_BINARY_TREE: arrow.clickableObject.clicked.connect(self.on_DyckWordToBinaryTree_Button_Pressed) elif arrow.game == GameEnum.BINARY_TREE_TO_DYCK_WORD: arrow.clickableObject.clicked.connect(self.on_binaryTreeToDyckWord_Button_Pressed) elif arrow.game == GameEnum.BINARY_TREE_TO_PLANAR_TREE: arrow.clickableObject.clicked.connect(self.on_binaryTreeToPlanarTree_Button_Pressed) elif arrow.game == GameEnum.PLANAR_TREE_TO_BINARY_TREE: arrow.clickableObject.clicked.connect(self.on_planarTreeToBinaryTree_Button_Pressed) elif arrow.game == GameEnum.PLANAR_TREE_TO_DYCK_WORD: arrow.clickableObject.clicked.connect(self.on_PlanarTreeToDyckWord_Button_Pressed) elif arrow.game == GameEnum.DYCK_WORD_TO_PLANAR_TREE: arrow.clickableObject.clicked.connect(self.on_DyckWordToPlanarTree_Button_Pressed)""" def displayLevels(self, nbLevel, levelController): self.menu.displayLevels(nbLevel, levelController) Loading view/gameButton.py +2 −2 Original line number Diff line number Diff line Loading @@ -16,8 +16,8 @@ class GameButton(QWidget): palette.setColor(self.backgroundRole(), QColor(255, 0, 0)) #215, 220, 255 self.setPalette(palette) self.layout = QHBoxLayout() label = QLabel(self.game.name) self.layout.addWidget(label, alignment=Qt.AlignCenter) """label = QLabel(self.game.name) self.layout.addWidget(label, alignment=Qt.AlignCenter)""" self.setLayout(self.layout) #self.connect() Loading view/menu.py +34 −21 Original line number Diff line number Diff line Loading @@ -45,27 +45,14 @@ class Menu: self.window.resize(width, high) self.window.setWindowTitle(title) def displayGames(self): """def displayGames(self): self.removeCentralLayout() self.menuWidget = QWidget() self.gamesLayout = QGridLayout() """nbSteps = int(sqrt(nbGames())) nbColumns = [] for i in range(nbSteps): nbColumns.append(int(nbGames() / nbSteps)) nbGamesToAdd = nbGames() - nbSteps * int(nbGames() / nbSteps) cptRow = 0 while nbGamesToAdd > 0: nbColumns[cptRow] += 1 cptRow += 1 nbGamesToAdd -= 1 cptRow = 0 cptColumn = 0""" cptRow = 0 for i in range(nbGames()): game = GameEnum(i) buttonGame = GameButton(game) buttonGame.clicked.triggered.connect(self.launchGame) self.gameButtons.append(buttonGame) if i < 3: self.gamesLayout.addWidget(buttonGame, cptRow, 0) Loading @@ -78,15 +65,41 @@ class Menu: self.menuWidget.setLayout(self.gamesLayout) self.centralLayout.addWidget(self.menuWidget) def launchGame(self): self.menuAction.trigger() self.centralLayout.addWidget(self.menuWidget)""" """def displayGames(self): def displayGames(self): self.removeCentralLayout() self.menuWidget = MenuWidget(self.controller) self.centralLayout.addWidget(self.menuWidget)""" self.menuWidget = QWidget() widget = MenuWidget(self.controller) self.gamesLayout = QGridLayout() self.gamesLayout.addWidget(widget, 0, 0, 5, 10) planarTreeToBinaryTreeButton = GameButton(GameEnum.PLANAR_TREE_TO_BINARY_TREE) self.gameButtons.append(planarTreeToBinaryTreeButton) self.gamesLayout.addWidget(planarTreeToBinaryTreeButton, 0, 0, 3, 4) planarTreeToBinaryTreeButton = GameButton(GameEnum.BINARY_TREE_TO_PLANAR_TREE) self.gameButtons.append(planarTreeToBinaryTreeButton) self.gamesLayout.addWidget(planarTreeToBinaryTreeButton, 0, 4, 3, 1) dyckWordToBinaryTreeButton = GameButton(GameEnum.DYCK_WORD_TO_BINARY_TREE) self.gameButtons.append(dyckWordToBinaryTreeButton) self.gamesLayout.addWidget(dyckWordToBinaryTreeButton, 0, 5, 3, 1) binaryTreeToDyckWordButton = GameButton(GameEnum.BINARY_TREE_TO_DYCK_WORD) self.gameButtons.append(binaryTreeToDyckWordButton) self.gamesLayout.addWidget(binaryTreeToDyckWordButton, 0, 6, 3, 4) planarTreeToDyckWordButton = GameButton(GameEnum.PLANAR_TREE_TO_DYCK_WORD) self.gameButtons.append(planarTreeToDyckWordButton) self.gamesLayout.addWidget(planarTreeToDyckWordButton, 3, 0, 1, 10) dyckWordToPlanarTreeButton = GameButton(GameEnum.DYCK_WORD_TO_PLANAR_TREE) self.gameButtons.append(dyckWordToPlanarTreeButton) self.gamesLayout.addWidget(dyckWordToPlanarTreeButton, 4, 0, 1, 10) self.menuWidget.setLayout(self.gamesLayout) self.centralLayout.addWidget(self.menuWidget) def displayLevels(self, nbLevels, levelController): self.removeCentralLayout() Loading view/menuWidget.py +1 −1 Original line number Diff line number Diff line Loading @@ -381,7 +381,7 @@ class Arrow(QGraphicsItemGroup): self.game = game self.controller = controller self.drawArrow(game, beginX, beginY, endX, endY, p1x, p1y, p2x, p2y, circleSize) self.connect() #self.connect() def drawArrow(self, game, beginX: float, beginY: float, endX: float, endY: float, p1x: float, p1y: float, p2x: float, p2y: float, circleSize: float): Loading Loading
controller/menuController.py +14 −2 Original line number Diff line number Diff line Loading @@ -21,7 +21,6 @@ class MenuController: def displayMenu(self): self.menu.displayGames() self.menu.menuAction.triggered.connect(self.displayMenu) for gameButton in self.menu.gameButtons: if gameButton.game == GameEnum.DYCK_WORD_TO_BINARY_TREE: gameButton.clicked.triggered.connect(self.on_DyckWordToBinaryTree_Button_Pressed) Loading @@ -37,7 +36,20 @@ class MenuController: gameButton.clicked.triggered.connect(self.on_DyckWordToPlanarTree_Button_Pressed) """def displayMenu(self): self.menu.displayGames()""" self.menu.displayGames() for arrow in self.menu.menuWidget.menuView.arrows: if arrow.game == GameEnum.DYCK_WORD_TO_BINARY_TREE: arrow.clickableObject.clicked.connect(self.on_DyckWordToBinaryTree_Button_Pressed) elif arrow.game == GameEnum.BINARY_TREE_TO_DYCK_WORD: arrow.clickableObject.clicked.connect(self.on_binaryTreeToDyckWord_Button_Pressed) elif arrow.game == GameEnum.BINARY_TREE_TO_PLANAR_TREE: arrow.clickableObject.clicked.connect(self.on_binaryTreeToPlanarTree_Button_Pressed) elif arrow.game == GameEnum.PLANAR_TREE_TO_BINARY_TREE: arrow.clickableObject.clicked.connect(self.on_planarTreeToBinaryTree_Button_Pressed) elif arrow.game == GameEnum.PLANAR_TREE_TO_DYCK_WORD: arrow.clickableObject.clicked.connect(self.on_PlanarTreeToDyckWord_Button_Pressed) elif arrow.game == GameEnum.DYCK_WORD_TO_PLANAR_TREE: arrow.clickableObject.clicked.connect(self.on_DyckWordToPlanarTree_Button_Pressed)""" def displayLevels(self, nbLevel, levelController): self.menu.displayLevels(nbLevel, levelController) Loading
view/gameButton.py +2 −2 Original line number Diff line number Diff line Loading @@ -16,8 +16,8 @@ class GameButton(QWidget): palette.setColor(self.backgroundRole(), QColor(255, 0, 0)) #215, 220, 255 self.setPalette(palette) self.layout = QHBoxLayout() label = QLabel(self.game.name) self.layout.addWidget(label, alignment=Qt.AlignCenter) """label = QLabel(self.game.name) self.layout.addWidget(label, alignment=Qt.AlignCenter)""" self.setLayout(self.layout) #self.connect() Loading
view/menu.py +34 −21 Original line number Diff line number Diff line Loading @@ -45,27 +45,14 @@ class Menu: self.window.resize(width, high) self.window.setWindowTitle(title) def displayGames(self): """def displayGames(self): self.removeCentralLayout() self.menuWidget = QWidget() self.gamesLayout = QGridLayout() """nbSteps = int(sqrt(nbGames())) nbColumns = [] for i in range(nbSteps): nbColumns.append(int(nbGames() / nbSteps)) nbGamesToAdd = nbGames() - nbSteps * int(nbGames() / nbSteps) cptRow = 0 while nbGamesToAdd > 0: nbColumns[cptRow] += 1 cptRow += 1 nbGamesToAdd -= 1 cptRow = 0 cptColumn = 0""" cptRow = 0 for i in range(nbGames()): game = GameEnum(i) buttonGame = GameButton(game) buttonGame.clicked.triggered.connect(self.launchGame) self.gameButtons.append(buttonGame) if i < 3: self.gamesLayout.addWidget(buttonGame, cptRow, 0) Loading @@ -78,15 +65,41 @@ class Menu: self.menuWidget.setLayout(self.gamesLayout) self.centralLayout.addWidget(self.menuWidget) def launchGame(self): self.menuAction.trigger() self.centralLayout.addWidget(self.menuWidget)""" """def displayGames(self): def displayGames(self): self.removeCentralLayout() self.menuWidget = MenuWidget(self.controller) self.centralLayout.addWidget(self.menuWidget)""" self.menuWidget = QWidget() widget = MenuWidget(self.controller) self.gamesLayout = QGridLayout() self.gamesLayout.addWidget(widget, 0, 0, 5, 10) planarTreeToBinaryTreeButton = GameButton(GameEnum.PLANAR_TREE_TO_BINARY_TREE) self.gameButtons.append(planarTreeToBinaryTreeButton) self.gamesLayout.addWidget(planarTreeToBinaryTreeButton, 0, 0, 3, 4) planarTreeToBinaryTreeButton = GameButton(GameEnum.BINARY_TREE_TO_PLANAR_TREE) self.gameButtons.append(planarTreeToBinaryTreeButton) self.gamesLayout.addWidget(planarTreeToBinaryTreeButton, 0, 4, 3, 1) dyckWordToBinaryTreeButton = GameButton(GameEnum.DYCK_WORD_TO_BINARY_TREE) self.gameButtons.append(dyckWordToBinaryTreeButton) self.gamesLayout.addWidget(dyckWordToBinaryTreeButton, 0, 5, 3, 1) binaryTreeToDyckWordButton = GameButton(GameEnum.BINARY_TREE_TO_DYCK_WORD) self.gameButtons.append(binaryTreeToDyckWordButton) self.gamesLayout.addWidget(binaryTreeToDyckWordButton, 0, 6, 3, 4) planarTreeToDyckWordButton = GameButton(GameEnum.PLANAR_TREE_TO_DYCK_WORD) self.gameButtons.append(planarTreeToDyckWordButton) self.gamesLayout.addWidget(planarTreeToDyckWordButton, 3, 0, 1, 10) dyckWordToPlanarTreeButton = GameButton(GameEnum.DYCK_WORD_TO_PLANAR_TREE) self.gameButtons.append(dyckWordToPlanarTreeButton) self.gamesLayout.addWidget(dyckWordToPlanarTreeButton, 4, 0, 1, 10) self.menuWidget.setLayout(self.gamesLayout) self.centralLayout.addWidget(self.menuWidget) def displayLevels(self, nbLevels, levelController): self.removeCentralLayout() Loading
view/menuWidget.py +1 −1 Original line number Diff line number Diff line Loading @@ -381,7 +381,7 @@ class Arrow(QGraphicsItemGroup): self.game = game self.controller = controller self.drawArrow(game, beginX, beginY, endX, endY, p1x, p1y, p2x, p2y, circleSize) self.connect() #self.connect() def drawArrow(self, game, beginX: float, beginY: float, endX: float, endY: float, p1x: float, p1y: float, p2x: float, p2y: float, circleSize: float): Loading