diff --git a/selectionorder.py b/selectionorder.py index c8539e6..f435e29 100644 --- a/selectionorder.py +++ b/selectionorder.py @@ -31,7 +31,7 @@ from org.gvsig.fmap.mapcontext.events.listeners import ViewPortListener from javax.swing import SwingUtilities from org.gvsig.app.project.documents.view import IContextMenuActionWithIcon - +from org.gvsig.fmap.mapcontext.layers.operations import SingleLayer from javax.swing import JPopupMenu from java.awt.event import ActionListener from javax.swing import JMenuItem @@ -269,6 +269,8 @@ def createTreeModel(mapContext, reducedTree=True): root.insert(rootNotSelectable, root.getChildCount()) for layer in iter(mapContext.deepiterator()): + if not isinstance(layer, SingleLayer): + continue store = layer.getDataStore() if isinstance(store,DefaultFeatureStore) and store.getSelection().getSize() != 0: newNode = DefaultMutableTreeNode(DataLayer(layer.getName(),layer)) diff --git a/sourceorder.py b/sourceorder.py index 16aa622..d0acd5b 100644 --- a/sourceorder.py +++ b/sourceorder.py @@ -37,7 +37,7 @@ from tocutils import getExpansionState from tocutils import setExpansionState - +from org.gvsig.fmap.mapcontext.layers.operations import SingleLayer def setTreeAsSourceOrder(tree, mapContext): updateAll(tree, mapContext) @@ -349,6 +349,8 @@ def createTreeModel(mapContext, reducedTree=True): layers = list() remotes = list() for layer in iter(mapContext.deepiterator()): + if not isinstance(layer, SingleLayer): + continue if layer.getDataStore() == None: # asumimos que es raster uri = layer.getURI() diff --git a/tocutils.py b/tocutils.py index 814b262..1bc5347 100644 --- a/tocutils.py +++ b/tocutils.py @@ -11,7 +11,7 @@ from java.lang import StringBuffer, String, Integer from java.util import StringTokenizer from javax.swing.tree import DefaultTreeCellRenderer - +from org.gvsig.fmap.mapcontext.layers.operations import SingleLayer from javax.swing import JMenuItem from javax.swing import JPopupMenu from org.gvsig.app.project.documents.view import IContextMenuActionWithIcon @@ -27,7 +27,7 @@ from org.gvsig.app.project.documents.view.toc.gui import FPopupMenu from javax.swing.tree import DefaultMutableTreeNode from org.gvsig.app.project.documents.view.toc import AbstractTocContextMenuAction - +from org.gvsig.fmap.mapcontext.layers import FLyrDefault class TOCSimpleNode(TreeNode, ActionListener): def __init__(self, parent, icon=None): self.__parent = parent @@ -326,23 +326,25 @@ def getIconByName(iconName): def getIconFromLayer(layer): global mapContextManager global iconTheme - if layer == None or layer.getDataStore()==None: - return None - if layer.getTocImageIcon() != None: + if layer == None: + return None + if isinstance(layer, FLyrDefault) and layer.getTocImageIcon() != None: if iconTheme == None: iconName = layer.getTocImageIcon() iconTheme = ToolsSwingLocator.getIconThemeManager().getCurrent() icon = iconTheme.get(iconName) return icon - providerName = layer.getDataStore().getProviderName() - if providerName != None: - if mapContextManager == None: - mapContextManager = MapContextLocator.getMapContextManager() - iconName = mapContextManager.getIconLayer(providerName) - if iconTheme == None: - iconTheme = ToolsSwingLocator.getIconThemeManager().getCurrent() - icon = iconTheme.get(iconName) - return icon + + if isinstance(layer, SingleLayer) and layer.getDataStore()!=None: + providerName = layer.getDataStore().getProviderName() + if providerName != None: + if mapContextManager == None: + mapContextManager = MapContextLocator.getMapContextManager() + iconName = mapContextManager.getIconLayer(providerName) + if iconTheme == None: + iconTheme = ToolsSwingLocator.getIconThemeManager().getCurrent() + icon = iconTheme.get(iconName) + return icon return None diff --git a/visibilityorder.py b/visibilityorder.py index 70c8e4a..4c38a18 100644 --- a/visibilityorder.py +++ b/visibilityorder.py @@ -31,7 +31,8 @@ from org.gvsig.fmap.mapcontext.events.listeners import ViewPortListener from javax.swing import SwingUtilities from org.gvsig.app.project.documents.view import IContextMenuActionWithIcon - +from org.gvsig.fmap.mapcontext.layers import FLayer +from org.gvsig.fmap.mapcontext.layers.operations import SingleLayer from javax.swing import JPopupMenu from java.awt.event import ActionListener from javax.swing import JMenuItem @@ -236,6 +237,8 @@ def createTreeModel(mapContext, reducedTree=True): root.insert(rootNotVisibility, root.getChildCount()) for layer in iter(mapContext.deepiterator()): + if not isinstance(layer, SingleLayer): + continue try: envelope=layer.getFullEnvelope() insideViewportEnvelope = mapContext.getViewPort().getEnvelope().intersects(envelope)