28 lines
700 B
Python
28 lines
700 B
Python
from PyQt6.QtCore import QObject, pyqtSlot
|
|
|
|
from time import time
|
|
|
|
|
|
class Controller(QObject):
|
|
def __init__(self, window, parent=None):
|
|
super().__init__(parent)
|
|
self.window = window
|
|
self.last_close_press = 0
|
|
self.successful_clicks = 0
|
|
|
|
@pyqtSlot()
|
|
def close_application(self):
|
|
now = time()
|
|
if now - self.last_close_press < 0.2:
|
|
self.successful_clicks += 1
|
|
else:
|
|
self.successful_clicks = 0
|
|
|
|
if self.successful_clicks > 1:
|
|
self.window.running = False
|
|
|
|
self.last_close_press = now
|
|
|
|
@pyqtSlot(int)
|
|
def select_scene(self, scene: int):
|
|
self.window.selected_scene = scene |