Change button signals connection
parent
5d8599a06a
commit
7ea8eab07b
|
@ -44,6 +44,7 @@ class TimerDisplayer(QGraphicsWidget):
|
|||
|
||||
class DifficultyDisplayer(QGraphicsWidget):
|
||||
notFocus = pyqtSignal()
|
||||
difficultySelected = pyqtSignal(str)
|
||||
|
||||
def __init__(self, parent=None):
|
||||
super().__init__()
|
||||
|
@ -78,6 +79,8 @@ class DifficultyDisplayer(QGraphicsWidget):
|
|||
self.setFlag(QGraphicsItem.ItemIsFocusable, True)
|
||||
|
||||
self.diff_menu.menuClicked.connect(self.selected_difficulty)
|
||||
self.diff_menu.menuClicked.connect(self.difficultySelected.emit)
|
||||
|
||||
|
||||
def paint(self, painter, style, widget=None):
|
||||
painter.setPen(self.box_pen)
|
||||
|
@ -94,10 +97,6 @@ class DifficultyDisplayer(QGraphicsWidget):
|
|||
self.diff_menu.setVisible(False)
|
||||
self.notFocus.emit()
|
||||
|
||||
def connect_buttons_signal(self, func):
|
||||
self.diff_menu.menuClicked.connect(func)
|
||||
print('Diff buttons connected')
|
||||
|
||||
def selected_difficulty(self, string):
|
||||
self.diff_menu.setVisible(False)
|
||||
self.set_text(string)
|
||||
|
@ -110,6 +109,10 @@ class DifficultyDisplayer(QGraphicsWidget):
|
|||
def focusOutEvent(self, event):
|
||||
print('Menu lose focus')
|
||||
self.notFocus.emit()
|
||||
#self.diff_menu.setVisible(False)
|
||||
|
||||
def boundingRect(self):
|
||||
return QRectF(0, 0, self.width, self.height)
|
||||
|
||||
|
||||
class DifficultyMenu(QGraphicsWidget):
|
||||
|
@ -120,7 +123,6 @@ class DifficultyMenu(QGraphicsWidget):
|
|||
super().__init__(parent=parent)
|
||||
|
||||
self.diff_buttons = []
|
||||
#self.difficulty = ['Very Easy', 'Easy', 'Normal', 'Hard', 'Insane']
|
||||
self.btn_height = height
|
||||
self.btn_width = width
|
||||
self.height = (self.btn_height + 10) * 5
|
||||
|
@ -132,5 +134,8 @@ class DifficultyMenu(QGraphicsWidget):
|
|||
btn.buttonClicked.connect(self.clicked_on)
|
||||
self.diff_buttons.append(btn)
|
||||
|
||||
def boundingRect(self):
|
||||
return QRectF(0, 0, self.width, self.height)
|
||||
|
||||
def clicked_on(self, string):
|
||||
self.menuClicked.emit(string)
|
||||
|
|
2
main.py
2
main.py
|
@ -48,7 +48,7 @@ class SudokuWindow(QGraphicsView):
|
|||
self.gameboard.newGameSelected.connect(lambda: self.menuboard.show_children(True))
|
||||
self.gameboard.newGameSelected.connect(self.menuboard.set_difficulty_text)
|
||||
self.menuboard.diff_display.notFocus.connect(self.gameboard.game_refocus)
|
||||
self.menuboard.diff_display.connect_buttons_signal(self.gameboard.new_game)
|
||||
self.menuboard.diff_display.difficultySelected.connect(self.gameboard.new_game)
|
||||
|
||||
def resizeEvent(self, event):
|
||||
self.fitInView(self.scene.sceneRect(), Qt.KeepAspectRatio)
|
||||
|
|
Loading…
Reference in New Issue