From 986d222a981e9b9da73cc9ee0b3327998fb2a9a6 Mon Sep 17 00:00:00 2001 From: Thomas Hooge Date: Mon, 21 Jul 2025 19:59:40 +0200 Subject: [PATCH] =?UTF-8?q?Anker-Konfigurationsseite,=20erste=20Versuche?= =?UTF-8?q?=20mit=20Men=C3=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cfgmenu.py | 48 ++++++++++++++++ images/arrow_dn.png | Bin 0 -> 135 bytes images/arrow_up.png | Bin 0 -> 138 bytes obp60v.py | 2 +- pages/anchor.py | 134 ++++++++++++++++++++++++++++++++++---------- pages/page.py | 21 +++++++ 6 files changed, 175 insertions(+), 30 deletions(-) create mode 100644 cfgmenu.py create mode 100644 images/arrow_dn.png create mode 100644 images/arrow_up.png diff --git a/cfgmenu.py b/cfgmenu.py new file mode 100644 index 0000000..6cd2cf2 --- /dev/null +++ b/cfgmenu.py @@ -0,0 +1,48 @@ +""" +Menüsystem für Konfiguration(en) + +""" + +class MenuItem(): + + def __init__(self, itmname): + self.name = itmname + self.label = None + self.value = None + self.steps = (1,) + + def setValue(self, val): + self.value = val + +class Menu(): + + def __init__(self): + title = None + x = 0 + y = 0 + w = 100 + h = 20 + items = [] + itm_active = -1 # nothing activated + self._index = -1 + + def addItem(self, label): + itm = MenuItem(label) + items.append(itm) + +class MenuIter(): + + def __init__(self, menu): + self._items = menu.items + self._class_size = len(self._items) + self._index = 0 + + def __iter__(self): + return self + + def __next__(self): + if self._index < self._class_size: + itm = items[self._index] + self._index += 1 + return itm + raise StopIteration diff --git a/images/arrow_dn.png b/images/arrow_dn.png new file mode 100644 index 0000000000000000000000000000000000000000..e8c98904cd0272dcd4f6937939b067869e8a4ca6 GIT binary patch literal 135 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!93?!50ihlx9oB=)|u0R?H{{R2qeE0k%Ad9gi z$S;_|;n|HeAV