From 74100cc67602ebea77d2062ce1e2fcdeed894e97 Mon Sep 17 00:00:00 2001 From: Eugenio Parodi Date: Wed, 5 Jul 2023 17:10:08 +0100 Subject: [PATCH] Added clear() to the MenuBar --- TermTk/TTkWidgets/menubar.py | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/TermTk/TTkWidgets/menubar.py b/TermTk/TTkWidgets/menubar.py index a839bcdb..f446762f 100644 --- a/TermTk/TTkWidgets/menubar.py +++ b/TermTk/TTkWidgets/menubar.py @@ -143,12 +143,24 @@ class TTkMenuBarLayout(TTkHBoxLayout): def addMenu(self, text, alignment=TTkK.LEFT_ALIGN): '''addMenu''' button = TTkMenuBarButton(text=text, borderColor=self._borderColor, border=True) - if alignment == TTkK.LEFT_ALIGN: - self._itemsLeft.addWidget(button) - elif alignment == TTkK.CENTER_ALIGN: - self._itemsCenter.addWidget(button) - elif alignment == TTkK.RIGHT_ALIGN: - self._itemsRight.addWidget(button) + # button = TTkMenuButton(text=text, borderColor=self._borderColor, border=True) + self._mbItems(alignment).addWidget(button) self._buttons.append(button) self.update() return button + + def _menus(self, alignment=TTkK.LEFT_ALIGN): + return [w.widget() for w in self._mbItems(alignment).children()] + + def _mbItems(self, alignment=TTkK.LEFT_ALIGN): + return { + TTkK.LEFT_ALIGN: self._itemsLeft , + TTkK.CENTER_ALIGN: self._itemsCenter , + TTkK.RIGHT_ALIGN: self._itemsRight + }.get(alignment, self._itemsLeft) + + def clear(self): + self._buttons = [] + self._itemsLeft.removeItems(self._itemsLeft.children()) + self._itemsCenter.removeItems(self._itemsCenter.children()) + self._itemsRight.removeItems(self._itemsRight.children())