From 36eb6b2fd4ad4783171f014da16ea9b41e77f00d Mon Sep 17 00:00:00 2001 From: Ilya Zhuravlev Date: Fri, 16 Oct 2020 05:42:27 -0400 Subject: [PATCH] pass keycode changes through a signal --- src/main/python/main.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/main/python/main.py b/src/main/python/main.py index b441573..09bb6bd 100644 --- a/src/main/python/main.py +++ b/src/main/python/main.py @@ -19,7 +19,9 @@ from keycodes import keycode_label, keycode_tooltip, recreate_layer_keycodes, KE class TabbedKeycodes(QTabWidget): - def __init__(self, kb, parent=None): + keycode_changed = pyqtSignal(int) + + def __init__(self, parent=None): super().__init__(parent) self.tab_basic = QWidget() @@ -49,7 +51,7 @@ class TabbedKeycodes(QTabWidget): btn = QPushButton(keycode.label) btn.setFixedSize(50, 50) btn.setToolTip(keycode_tooltip(keycode.code)) - btn.clicked.connect(lambda st, k=keycode: kb.set_key(k.code)) + btn.clicked.connect(lambda st, k=keycode: self.keycode_changed.emit(k.code)) layout.addWidget(btn) buttons.append(btn) @@ -227,7 +229,8 @@ class MainWindow(QWidget): self.keyboard_container = KeyboardContainer() self.keyboard_container.number_layers_changed.connect(self.on_number_layers_changed) - self.tabbed_keycodes = TabbedKeycodes(self.keyboard_container) + self.tabbed_keycodes = TabbedKeycodes() + self.tabbed_keycodes.keycode_changed.connect(self.on_keycode_changed) self.combobox_devices = QComboBox() self.combobox_devices.currentIndexChanged.connect(self.on_device_selected) @@ -291,6 +294,9 @@ class MainWindow(QWidget): recreate_layer_keycodes(self.keyboard_container.layers) self.tabbed_keycodes.recreate_layer_keycode_buttons() + def on_keycode_changed(self, code): + self.keyboard_container.set_key(code) + if __name__ == '__main__': appctxt = ApplicationContext() # 1. Instantiate ApplicationContext