######################### ## Setup hotkeys for the following actions. deleteShortcut = QtWidgets.QShortcut( QtGui.QKeySequence(QtCore.Qt.Key_Delete), self) deleteShortcut.activated.connect(self.graphView.deleteSelectedNodes) frameShortcut = QtWidgets.QShortcut( QtGui.QKeySequence(QtCore.Qt.Key_F), self) frameShortcut.activated.connect(self.graphView.frameSelectedNodes) frameShortcut = QtWidgets.QShortcut( QtGui.QKeySequence(QtCore.Qt.Key_A), self) frameShortcut.activated.connect(self.graphView.frameAllNodes) def getGraphView(self): return self.graphView #print __name__ if __name__ == "__main__": app = QtWidgets.QApplication(sys.argv) widget = GraphViewWidget() graph = GraphView(parent=widget) widget.setGraphView(graph) widget.show() print __file__, "GraphViewWidget" sys.exit(app.exec_())
def __init__(self, state, device): super().__init__() self.state = state self.close_requested = False self.score_manager = None self.device = device self.network = QNetworkAccessManager() self.minimize = False self.mouse_hover = False self.top = Detector() self.mid = Detector() self.bottom = Detector() self.top.enter.connect(self.leave) self.mid.enter.connect(self.leave) self.bottom.enter.connect(self.leave) self.last_score = None self.counter = 0 # Setup UI self.setWindowFlags(Qt.CustomizeWindowHint | Qt.WindowStaysOnTopHint | Qt.Tool | Qt.FramelessWindowHint | Qt.WindowDoesNotAcceptFocus | Qt.X11BypassWindowManagerHint) self.setAttribute(Qt.WA_TranslucentBackground) self.label = QLabel("...") self.graph_view = GraphView() self.layout = QVBoxLayout() # layout.addWidget(self.label) self.layout.addWidget(self.graph_view) self.update_size() self.frame = QWidget() self.frame.setLayout(self.layout) self.frame.setProperty("class", "overlay") main_layout = QVBoxLayout() main_layout.addWidget(self.frame) main_layout.setContentsMargins(0, 0, 0, 0) self.setLayout(main_layout) self.setProperty("class", "root") self.setContentsMargins(0, 0, 0, 0) self.opacity = QGraphicsOpacityEffect() self.opacity.setOpacity(0.8) self.setGraphicsEffect(self.opacity) self.device.connectedChanged.connect(self.graph_view.connected_changed) self.device.updateNumber.connect(self.sensor_update) self.timer = QTimer() self.timer.setInterval(1000 / 30) self.timer.timeout.connect(self.graph_view.update_screen) self.timer.start()