Search in sources :

Example 11 with CatalogTreeManager

use of jmri.CatalogTreeManager in project JMRI by JMRI.

the class ItemPalette method loadSavedIcons.

static boolean loadSavedIcons(Editor ed) {
    CatalogTreeManager manager = InstanceManager.getDefault(jmri.CatalogTreeManager.class);
    CatalogTree tree = manager.getBySystemName("NXPI");
    if (tree != null) {
        CatalogTreeNode root = tree.getRoot();
        // root.children() is still unchecked in JDOM2
        @SuppressWarnings("unchecked") Enumeration<CatalogTreeNode> e = root.children();
        while (e.hasMoreElements()) {
            CatalogTreeNode node = e.nextElement();
            String typeName = (String) node.getUserObject();
            // not very elegant (i.e. extensible), but maybe all that's needed.
            if (typeName.equals("IndicatorTO")) {
                HashMap<String, HashMap<String, HashMap<String, NamedIcon>>> familyTOMap = loadIndicatorFamilyMap(node, ed);
                if (log.isDebugEnabled()) {
                    log.debug("Add " + familyTOMap.size() + " indicatorTO families to item type " + typeName + " to _indicatorTOMaps.");
                }
                _indicatorTOMaps.put(typeName, familyTOMap);
            } else {
                HashMap<String, HashMap<String, NamedIcon>> familyMap = loadFamilyMap(node, ed);
                _iconMaps.put(typeName, familyMap);
                if (log.isDebugEnabled()) {
                    log.debug("Add item type " + typeName + " to _iconMaps.");
                }
            }
        }
        if (log.isDebugEnabled()) {
            log.debug("Icon Map has " + _iconMaps.size() + " members");
        }
        return true;
    }
    return false;
}
Also used : NamedIcon(jmri.jmrit.catalog.NamedIcon) HashMap(java.util.HashMap) CatalogTree(jmri.CatalogTree) CatalogTreeManager(jmri.CatalogTreeManager) CatalogTreeNode(jmri.jmrit.catalog.CatalogTreeNode)

Aggregations

CatalogTreeManager (jmri.CatalogTreeManager)11 CatalogTree (jmri.CatalogTree)7 CatalogTreeNode (jmri.jmrit.catalog.CatalogTreeNode)6 Element (org.jdom2.Element)3 HashMap (java.util.HashMap)2 NamedIcon (jmri.jmrit.catalog.NamedIcon)2 Point (java.awt.Point)1 File (java.io.File)1 Entry (java.util.Map.Entry)1 DefaultTreeModel (javax.swing.tree.DefaultTreeModel)1 XmlFile (jmri.jmrit.XmlFile)1 Attribute (org.jdom2.Attribute)1 Document (org.jdom2.Document)1