From 2c2065119bec504412cce0d4f8cb05446af5f3ad Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Tue, 6 Aug 2019 16:18:57 +0300 Subject: [PATCH] Generalize some click code --- graphs/gui/lists.py | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/graphs/gui/lists.py b/graphs/gui/lists.py index ceea79bf5..7e575d25f 100644 --- a/graphs/gui/lists.py +++ b/graphs/gui/lists.py @@ -120,19 +120,16 @@ class BaseWrapperList(gui.display.Display): def OnLeftDown(self, event): row, _ = self.HitTest(event.Position) if row != -1: + pickers = { + self.getColIndex(GraphColor): ColorPickerPopup, + self.getColIndex(GraphLightness): LightnessPickerPopup} + pickers.pop(None, None) col = self.getColumn(event.Position) - if col == self.getColIndex(GraphColor): + if col in pickers: + picker = pickers[col] wrapper = self.getWrapper(row) if wrapper is not None: - win = ColorPickerPopup(parent=self, wrapper=wrapper) - pos = wx.GetMousePosition() - win.Position(pos, (0, 0)) - win.Popup() - return - if col == self.getColIndex(GraphLightness): - wrapper = self.getWrapper(row) - if wrapper is not None: - win = LightnessPickerPopup(parent=self, wrapper=wrapper) + win = picker(parent=self, wrapper=wrapper) pos = wx.GetMousePosition() win.Position(pos, (0, 0)) win.Popup()