From: Urban Wallasch Date: Tue, 29 Jun 2021 14:52:00 +0000 (+0200) Subject: * 'Radical List' button check state correctly reflects actual list dialog visibility. X-Git-Tag: v0.1.0~21 X-Git-Url: https://git.packet-gain.de/?a=commitdiff_plain;h=53a7ae17caa8cfb3a63840b43c7e1ee5c7db4998;p=jiten-pai.git * 'Radical List' button check state correctly reflects actual list dialog visibility. --- diff --git a/kanjidic.py b/kanjidic.py index d8c232e..2d8e317 100755 --- a/kanjidic.py +++ b/kanjidic.py @@ -512,6 +512,7 @@ class zRadicalButton(zKanjiButton): class kdRadicalList(QDialog): btns = [] + vis_changed = pyqtSignal(bool) def __init__(self, *args, toggle_action=None, geo=None, **kwargs): super().__init__(*args, **kwargs) @@ -553,9 +554,14 @@ class kdRadicalList(QDialog): self.row += 1 def show(self): + self.vis_changed.emit(True) self.update_btns(None) super().show() + def reject(self): + self.vis_changed.emit(False) + super().reject() + def update_btns(self, rads): for btn in self.btns: if btn.is_sep: @@ -802,6 +808,7 @@ class kdMainWindow(QDialog): fw = self.frameGeometry().width() geo = QRect(x + fw, y, min(w, 600), max(h, 600)) self.radlist = kdRadicalList(toggle_action=self.on_radical_toggled, geo=geo) + self.radlist.vis_changed.connect(self.radlist_vis_changed) self.on_rad_search_edit() self.update_search() self.radlist.update_btns(None) @@ -810,6 +817,9 @@ class kdMainWindow(QDialog): elif self.radlist: self.radlist.hide() + def radlist_vis_changed(self, visible): + self.rad_search_listbtn.setChecked(visible) + def stroke_search_toggle(self): en = self.stroke_search_check.isChecked() self.stroke_search_num.setEnabled(en)