123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- """
- @package lmgr.menudata
- @brief wxGUI Layer Manager - menu data
- Classes:
- - menudata::LayerManagerMenuData
- (C) 2007-2012 by the GRASS Development Team
- This program is free software under the GNU General Public License
- (>=v2). Read the file COPYING that comes with GRASS for details.
- @author Martin Landa <landa.martin gmail.com>
- """
- import os
- from core.menutree import MenuTreeModelBuilder
- from core.toolboxes import getMenudataFile
- from core.globalvar import WXGUIDIR
- from core.gcmd import GError
- class LayerManagerMenuData(MenuTreeModelBuilder):
- def __init__(self, filename=None, message_handler=GError):
- if filename:
- expandAddons = False
- else:
- expandAddons = True
- fallback = os.path.join(WXGUIDIR, "xml", "menudata.xml")
- if not filename:
- filename = getMenudataFile(
- userRootFile="main_menu.xml", newFile="menudata.xml", fallback=fallback
- )
- try:
- MenuTreeModelBuilder.__init__(
- self,
- filename,
- expandAddons=expandAddons,
- message_handler=message_handler,
- )
- except (ValueError, AttributeError, TypeError):
- message_handler(
- _(
- "Unable to parse user toolboxes XML files. "
- "Default main menu will be loaded."
- )
- )
- fallback = os.path.join(WXGUIDIR, "xml", "menudata.xml")
- MenuTreeModelBuilder.__init__(
- self, fallback, message_handler=message_handler
- )
- class LayerManagerModuleTree(MenuTreeModelBuilder):
- def __init__(self, filename=None, message_handler=GError):
- if filename:
- expandAddons = False
- else:
- expandAddons = True
- fallback = os.path.join(WXGUIDIR, "xml", "module_tree_menudata.xml")
- if not filename:
- filename = getMenudataFile(
- userRootFile="module_tree.xml",
- newFile="module_tree_menudata.xml",
- fallback=fallback,
- )
- # TODO: try-except useless?
- try:
- MenuTreeModelBuilder.__init__(
- self,
- filename,
- expandAddons=expandAddons,
- message_handler=message_handler,
- )
- except (ValueError, AttributeError, TypeError):
- message_handler(
- _(
- "Unable to parse user toolboxes XML files. "
- "Default module tree will be loaded."
- )
- )
- MenuTreeModelBuilder.__init__(
- self, fallback, message_handler=message_handler
- )
|