summaryrefslogtreecommitdiff
path: root/ishtar_common/menus.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2016-04-19 18:33:16 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2016-04-19 18:33:16 +0200
commiteb471a13710be88ca249f30a68bd056aa8c5a292 (patch)
treef2596427b81ad0df9e3a0b1b97201372b9fcc9cc /ishtar_common/menus.py
parent983662e505adca020492e0672968a19c0abb6ec2 (diff)
parentfc1c422e6c5e0c57ddb6209b609b2335f9cb4dde (diff)
downloadIshtar-eb471a13710be88ca249f30a68bd056aa8c5a292.tar.bz2
Ishtar-eb471a13710be88ca249f30a68bd056aa8c5a292.zip
Merge branch 'master' into v0.9
Diffstat (limited to 'ishtar_common/menus.py')
-rw-r--r--ishtar_common/menus.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/ishtar_common/menus.py b/ishtar_common/menus.py
index e55b288bf..36b53b162 100644
--- a/ishtar_common/menus.py
+++ b/ishtar_common/menus.py
@@ -59,12 +59,20 @@ class Menu:
self.current_action = current_action
self.selected_idx = None
self.session = session
+ self.items_by_idx = {}
def init(self):
if self.initialized:
return
self.items = {}
+ self.items_by_idx = {}
for idx, main_menu in enumerate(self.childs):
+ self.items_by_idx[main_menu.idx] = main_menu
+ for child in main_menu.childs:
+ self.items_by_idx[child.idx] = child
+ if hasattr(child, 'childs'):
+ for subchild in child.childs:
+ self.items_by_idx[subchild.idx] = subchild
selected = main_menu.set_items(
self.user, self.items,
self.current_action, session=self.session)