From 91d5df434b6027e79aec429d27a30d1707e5f357 Mon Sep 17 00:00:00 2001 From: rbuj Date: Sat, 16 Jan 2021 22:44:43 +0100 Subject: Skip Collection directory --- Mozo/MenuEditor.py | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/Mozo/MenuEditor.py b/Mozo/MenuEditor.py index b218eb5..32e358c 100644 --- a/Mozo/MenuEditor.py +++ b/Mozo/MenuEditor.py @@ -262,28 +262,35 @@ class MenuEditor(object): while item_type != MateMenu.TreeItemType.INVALID: if item_type == MateMenu.TreeItemType.DIRECTORY: item = item_iter.get_directory() - yield (item, self.__isVisible(item)) + if item.get_menu_id() != 'Collection': + yield (item, self.__isVisible(item)) item_type = item_iter.next() def getContents(self, item): + class CollectionDirectoryException(Exception): pass + contents = [] item_iter = item.iter() item_type = item_iter.next() while item_type != MateMenu.TreeItemType.INVALID: item = None - if item_type == MateMenu.TreeItemType.DIRECTORY: - item = item_iter.get_directory() - elif item_type == MateMenu.TreeItemType.ENTRY: - item = item_iter.get_entry() - elif item_type == MateMenu.TreeItemType.HEADER: - item = item_iter.get_header() - elif item_type == MateMenu.TreeItemType.ALIAS: - item = item_iter.get_alias() - elif item_type == MateMenu.TreeItemType.SEPARATOR: - item = item_iter.get_separator() - if item: - contents.append(item) + try: + if item_type == MateMenu.TreeItemType.DIRECTORY: + item = item_iter.get_directory() + if item.get_menu_id() == 'Collection': raise CollectionDirectoryException() + elif item_type == MateMenu.TreeItemType.ENTRY: + item = item_iter.get_entry() + elif item_type == MateMenu.TreeItemType.HEADER: + item = item_iter.get_header() + elif item_type == MateMenu.TreeItemType.ALIAS: + item = item_iter.get_alias() + elif item_type == MateMenu.TreeItemType.SEPARATOR: + item = item_iter.get_separator() + if item: + contents.append(item) + except CollectionDirectoryException: + pass item_type = item_iter.next() return contents -- cgit v1.2.1