Anker-Konfigurationsseite, erste Versuche mit Menü
This commit is contained in:
48
cfgmenu.py
Normal file
48
cfgmenu.py
Normal file
@@ -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
|
||||
Reference in New Issue
Block a user