Merge pull request #28 from 0z00/ui/editor-container
Deselect key in keymap editor when container is clickedmain
commit
8a2bf34f93
|
|
@ -13,3 +13,6 @@ class BasicEditor(QVBoxLayout):
|
|||
|
||||
def rebuild(self, device):
|
||||
self.device = device
|
||||
|
||||
def on_container_clicked(self):
|
||||
pass
|
||||
|
|
|
|||
|
|
@ -0,0 +1,16 @@
|
|||
from PyQt5.QtWidgets import QWidget
|
||||
from PyQt5.QtCore import pyqtSignal
|
||||
|
||||
|
||||
class EditorContainer(QWidget):
|
||||
|
||||
clicked = pyqtSignal()
|
||||
|
||||
def __init__(self, editor):
|
||||
super().__init__()
|
||||
|
||||
self.setLayout(editor)
|
||||
self.clicked.connect(editor.on_container_clicked)
|
||||
|
||||
def mousePressEvent(self, ev):
|
||||
self.clicked.emit()
|
||||
|
|
@ -59,6 +59,11 @@ class KeymapEditor(BasicEditor):
|
|||
|
||||
self.device = None
|
||||
|
||||
def on_container_clicked(self):
|
||||
""" Called when a mouse click event is bubbled up to the editor's container """
|
||||
self.container.deselect()
|
||||
self.container.update()
|
||||
|
||||
def on_keycode_changed(self, code):
|
||||
self.set_key(code)
|
||||
|
||||
|
|
@ -143,6 +148,10 @@ class KeymapEditor(BasicEditor):
|
|||
return self.keyboard.encoder_layout[(self.current_layer, widget.desc.encoder_idx,
|
||||
widget.desc.encoder_dir)]
|
||||
|
||||
def mousePressEvent(self, ev):
|
||||
self.container.deselect()
|
||||
self.container.update()
|
||||
|
||||
def refresh_layer_display(self):
|
||||
""" Refresh text on key widgets to display data corresponding to current layer """
|
||||
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import json
|
|||
import os
|
||||
from urllib.request import urlopen
|
||||
|
||||
from editor_container import EditorContainer
|
||||
from firmware_flasher import FirmwareFlasher
|
||||
from keymap_editor import KeymapEditor
|
||||
from keymaps import KEYMAPS
|
||||
|
|
@ -245,9 +246,8 @@ class MainWindow(QMainWindow):
|
|||
if not container.valid():
|
||||
continue
|
||||
|
||||
w = QWidget()
|
||||
w.setLayout(container)
|
||||
self.tabs.addTab(w, tr("MainWindow", lbl))
|
||||
c = EditorContainer(container)
|
||||
self.tabs.addTab(c, tr("MainWindow", lbl))
|
||||
|
||||
def load_via_stack_json(self):
|
||||
data = urlopen("https://github.com/vial-kb/via-keymap-precompiled/raw/main/via_keyboard_stack.json")
|
||||
|
|
|
|||
Loading…
Reference in New Issue