|
@@ -64,7 +64,7 @@ def filterModel(model, element=None, name=None):
|
|
|
if element and layer.data['type'] != element:
|
|
|
nodesToRemove.append(layer)
|
|
|
continue
|
|
|
- if name and regex.search(layer.label) is None:
|
|
|
+ if name and regex.search(layer.data['name']) is None:
|
|
|
nodesToRemove.append(layer)
|
|
|
|
|
|
for node in reversed(nodesToRemove):
|
|
@@ -632,7 +632,7 @@ class DataCatalogTree(TreeView):
|
|
|
if len(self.copy_layer) > 1:
|
|
|
label = _("{c} maps marked for moving.").format(c=len(self.selected_layer))
|
|
|
else:
|
|
|
- label = _("Map <{layer}> marked for moving.").format(layer=self.copy_layer[0].label)
|
|
|
+ label = _("Map <{layer}> marked for moving.").format(layer=self.copy_layer[0].data['name'])
|
|
|
self.showNotification.emit(message=label)
|
|
|
|
|
|
def OnCopyMap(self, event):
|
|
@@ -645,25 +645,27 @@ class DataCatalogTree(TreeView):
|
|
|
if len(self.copy_layer) > 1:
|
|
|
label = _("{c} maps marked for copying.").format(c=len(self.selected_layer))
|
|
|
else:
|
|
|
- label = _("Map <{layer}> marked for copying.").format(layer=self.copy_layer[0].label)
|
|
|
+ label = _("Map <{layer}> marked for copying.").format(layer=self.copy_layer[0].data['name'])
|
|
|
self.showNotification.emit(message=label)
|
|
|
|
|
|
def OnRenameMap(self, event):
|
|
|
"""Rename layer with dialog"""
|
|
|
- old_name = self.selected_layer[0].label
|
|
|
+ old_name = self.selected_layer[0].data['name']
|
|
|
gisrc, env = gscript.create_environment(
|
|
|
- self.selected_grassdb[0].label,
|
|
|
- self.selected_location[0].label,
|
|
|
- self.selected_mapset[0].label)
|
|
|
+ self.selected_grassdb[0].data['name'],
|
|
|
+ self.selected_location[0].data['name'],
|
|
|
+ self.selected_mapset[0].data['name'])
|
|
|
+
|
|
|
new_name = self._getNewMapName(
|
|
|
_('New name'),
|
|
|
_('Rename map'),
|
|
|
old_name,
|
|
|
env=env,
|
|
|
- mapset=self.selected_mapset[0].label,
|
|
|
+ mapset=self.selected_mapset[0].data['name'],
|
|
|
element=self.selected_layer[0].data['type'])
|
|
|
if new_name:
|
|
|
self.Rename(old_name, new_name)
|
|
|
+ self.ReloadTreeItems()
|
|
|
|
|
|
def OnCreateMapset(self, event):
|
|
|
"""Create new mapset"""
|
|
@@ -671,8 +673,8 @@ class DataCatalogTree(TreeView):
|
|
|
location = self.selected_location[0]
|
|
|
try:
|
|
|
mapset = create_mapset_interactively(self,
|
|
|
- gisdbase.label,
|
|
|
- location.label)
|
|
|
+ gisdbase.data['name'],
|
|
|
+ location.data['name'],)
|
|
|
if mapset:
|
|
|
self.InsertMapset(name=mapset,
|
|
|
location_node=location)
|
|
@@ -689,9 +691,9 @@ class DataCatalogTree(TreeView):
|
|
|
try:
|
|
|
newmapset = rename_mapset_interactively(
|
|
|
self,
|
|
|
- self.selected_grassdb[0].label,
|
|
|
- self.selected_location[0].label,
|
|
|
- self.selected_mapset[0].label)
|
|
|
+ self.selected_grassdb[0].data['name'],
|
|
|
+ self.selected_location[0].data['name'],
|
|
|
+ self.selected_mapset[0].data['name'])
|
|
|
if newmapset:
|
|
|
self.ReloadTreeItems()
|
|
|
except Exception as e:
|
|
@@ -706,8 +708,8 @@ class DataCatalogTree(TreeView):
|
|
|
try:
|
|
|
newlocation = rename_location_interactively(
|
|
|
self,
|
|
|
- self.selected_grassdb[0].label,
|
|
|
- self.selected_location[0].label)
|
|
|
+ self.selected_grassdb[0].data['name'],
|
|
|
+ self.selected_location[0].data['name'])
|
|
|
if newlocation:
|
|
|
self.ReloadTreeItems()
|
|
|
except Exception as e:
|
|
@@ -718,8 +720,8 @@ class DataCatalogTree(TreeView):
|
|
|
def OnStartEditLabel(self, node, event):
|
|
|
"""Start label editing"""
|
|
|
self.DefineItems([node])
|
|
|
- Debug.msg(1, "Start label edit {name}".format(name=node.label))
|
|
|
- label = _("Editing {name}").format(name=node.label)
|
|
|
+ Debug.msg(1, "Start label edit {name}".format(name=node.data['name']))
|
|
|
+ label = _("Editing {name}").format(name=node.data['name'])
|
|
|
self.showNotification.emit(message=label)
|
|
|
if not self.selected_layer:
|
|
|
event.Veto()
|
|
@@ -727,7 +729,7 @@ class DataCatalogTree(TreeView):
|
|
|
def OnEditLabel(self, node, event):
|
|
|
"""End label editing"""
|
|
|
if self.selected_layer and not event.IsEditCancelled():
|
|
|
- old_name = node.label
|
|
|
+ old_name = node.data['name']
|
|
|
Debug.msg(1, "End label edit {name}".format(name=old_name))
|
|
|
new_name = event.GetLabel()
|
|
|
self.Rename(old_name, new_name)
|
|
@@ -736,9 +738,9 @@ class DataCatalogTree(TreeView):
|
|
|
"""Rename layer"""
|
|
|
string = old + ',' + new
|
|
|
gisrc, env = gscript.create_environment(
|
|
|
- self.selected_grassdb[0].label,
|
|
|
- self.selected_location[0].label,
|
|
|
- self.selected_mapset[0].label)
|
|
|
+ self.selected_grassdb[0].data['name'],
|
|
|
+ self.selected_location[0].data['name'],
|
|
|
+ self.selected_mapset[0].data['name'])
|
|
|
label = _("Renaming map <{name}>...").format(name=string)
|
|
|
self.showNotification.emit(message=label)
|
|
|
if self.selected_layer[0].data['type'] == 'vector':
|
|
@@ -749,7 +751,6 @@ class DataCatalogTree(TreeView):
|
|
|
renamed, cmd = self._runCommand(
|
|
|
'g.rename', raster3d=string, env=env)
|
|
|
if renamed == 0:
|
|
|
- self.selected_layer[0].label = new
|
|
|
self.selected_layer[0].data['name'] = new
|
|
|
self.RefreshNode(self.selected_layer[0])
|
|
|
self.showNotification.emit(
|
|
@@ -767,39 +768,39 @@ class DataCatalogTree(TreeView):
|
|
|
return
|
|
|
|
|
|
for i in range(len(self.copy_layer)):
|
|
|
- gisrc, env = gscript.create_environment(self.selected_grassdb[0].label,
|
|
|
- self.selected_location[0].label,
|
|
|
- self.selected_mapset[0].label)
|
|
|
- gisrc2, env2 = gscript.create_environment(self.copy_grassdb[i].label,
|
|
|
- self.copy_location[i].label,
|
|
|
- self.copy_mapset[i].label)
|
|
|
- new_name = self.copy_layer[i].label
|
|
|
+ gisrc, env = gscript.create_environment(self.selected_grassdb[0].data['name'],
|
|
|
+ self.selected_location[0].data['name'],
|
|
|
+ self.selected_mapset[0].data['name'])
|
|
|
+ gisrc2, env2 = gscript.create_environment(self.copy_grassdb[i].data['name'],
|
|
|
+ self.copy_location[i].data['name'],
|
|
|
+ self.copy_mapset[i].data['name'])
|
|
|
+ new_name = self.copy_layer[i].data['name']
|
|
|
if self.selected_location[0] == self.copy_location[i]:
|
|
|
# within one mapset
|
|
|
if self.selected_mapset[0] == self.copy_mapset[i]:
|
|
|
# ignore when just moves map
|
|
|
if self.copy_mode is False:
|
|
|
return
|
|
|
- new_name = self._getNewMapName(_('New name for <{n}>').format(n=self.copy_layer[i].label),
|
|
|
+ new_name = self._getNewMapName(_('New name for <{n}>').format(n=self.copy_layer[i].data['name']),
|
|
|
_('Select new name'),
|
|
|
- self.copy_layer[i].label, env=env,
|
|
|
- mapset=self.selected_mapset[0].label,
|
|
|
+ self.copy_layer[i].data['name'], env=env,
|
|
|
+ mapset=self.selected_mapset[0].data['name'],
|
|
|
element=self.copy_layer[i].data['type'])
|
|
|
if not new_name:
|
|
|
return
|
|
|
# within one location, different mapsets
|
|
|
else:
|
|
|
if map_exists(new_name, element=self.copy_layer[i].data['type'], env=env,
|
|
|
- mapset=self.selected_mapset[0].label):
|
|
|
- new_name = self._getNewMapName(_('New name for <{n}>').format(n=self.copy_layer[i].label),
|
|
|
+ mapset=self.selected_mapset[0].data['name']):
|
|
|
+ new_name = self._getNewMapName(_('New name for <{n}>').format(n=self.copy_layer[i].data['name']),
|
|
|
_('Select new name'),
|
|
|
- self.copy_layer[i].label, env=env,
|
|
|
- mapset=self.selected_mapset[0].label,
|
|
|
+ self.copy_layer[i].data['name'], env=env,
|
|
|
+ mapset=self.selected_mapset[0].data['name'],
|
|
|
element=self.copy_layer[i].data['type'])
|
|
|
if not new_name:
|
|
|
return
|
|
|
|
|
|
- string = self.copy_layer[i].label + '@' + self.copy_mapset[i].label + ',' + new_name
|
|
|
+ string = self.copy_layer[i].data['name'] + '@' + self.copy_mapset[i].data['name'] + ',' + new_name
|
|
|
pasted = 0
|
|
|
if self.copy_mode:
|
|
|
label = _("Copying <{name}>...").format(name=string)
|
|
@@ -836,10 +837,10 @@ class DataCatalogTree(TreeView):
|
|
|
GError(_("Reprojection is not implemented for 3D rasters"), parent=self)
|
|
|
return
|
|
|
if map_exists(new_name, element=self.copy_layer[i].data['type'], env=env,
|
|
|
- mapset=self.selected_mapset[0].label):
|
|
|
+ mapset=self.selected_mapset[0].data['name']):
|
|
|
new_name = self._getNewMapName(_('New name'), _('Select new name'),
|
|
|
- self.copy_layer[i].label, env=env,
|
|
|
- mapset=self.selected_mapset[0].label,
|
|
|
+ self.copy_layer[i].data['name'], env=env,
|
|
|
+ mapset=self.selected_mapset[0].data['name'],
|
|
|
element=self.copy_layer[i].data['type'])
|
|
|
if not new_name:
|
|
|
continue
|
|
@@ -847,14 +848,14 @@ class DataCatalogTree(TreeView):
|
|
|
cMapset=self.copy_mapset[i], cMode=self.copy_mode, name=new_name: \
|
|
|
self._onDoneReprojection(env2, gisrc2, gisrc, cLayer, cMapset, cMode, name)
|
|
|
dlg = CatalogReprojectionDialog(self, self._giface,
|
|
|
- self.copy_grassdb[i].label,
|
|
|
- self.copy_location[i].label,
|
|
|
- self.copy_mapset[i].label,
|
|
|
- self.copy_layer[i].label,
|
|
|
+ self.copy_grassdb[i].data['name'],
|
|
|
+ self.copy_location[i].data['name'],
|
|
|
+ self.copy_mapset[i].data['name'],
|
|
|
+ self.copy_layer[i].data['name'],
|
|
|
env2,
|
|
|
- self.selected_grassdb[0].label,
|
|
|
- self.selected_location[0].label,
|
|
|
- self.selected_mapset[0].label,
|
|
|
+ self.selected_grassdb[0].data['name'],
|
|
|
+ self.selected_location[0].data['name'],
|
|
|
+ self.selected_mapset[0].data['name'],
|
|
|
new_name,
|
|
|
self.copy_layer[i].data['type'],
|
|
|
env, callback)
|
|
@@ -873,11 +874,11 @@ class DataCatalogTree(TreeView):
|
|
|
|
|
|
def _removeMapAfterCopy(self, cLayer, cMapset, env):
|
|
|
removed, cmd = self._runCommand('g.remove', type=cLayer.data['type'],
|
|
|
- name=cLayer.label, flags='f', env=env)
|
|
|
+ name=cLayer.data['name'], flags='f', env=env)
|
|
|
if removed == 0:
|
|
|
self._model.RemoveNode(cLayer)
|
|
|
self.RefreshNode(cMapset, recursive=True)
|
|
|
- Debug.msg(1, "LAYER " + cLayer.label + " DELETED")
|
|
|
+ Debug.msg(1, "LAYER " + cLayer.data['name'] + " DELETED")
|
|
|
self.showNotification.emit(message=_("g.remove completed"))
|
|
|
|
|
|
def InsertLayer(self, name, mapset_node, element_name):
|
|
@@ -904,7 +905,7 @@ class DataCatalogTree(TreeView):
|
|
|
|
|
|
def OnDeleteMap(self, event):
|
|
|
"""Delete layer or mapset"""
|
|
|
- names = [self.selected_layer[i].label + '@' + self.selected_mapset[i].label
|
|
|
+ names = [self.selected_layer[i].data['name'] + '@' + self.selected_mapset[i].data['name']
|
|
|
for i in range(len(self.selected_layer))]
|
|
|
if len(names) < 10:
|
|
|
question = _("Do you really want to delete map(s) <{m}>?").format(m=', '.join(names))
|
|
@@ -915,20 +916,20 @@ class DataCatalogTree(TreeView):
|
|
|
self.showNotification.emit(message=label)
|
|
|
for i in range(len(self.selected_layer)):
|
|
|
gisrc, env = gscript.create_environment(
|
|
|
- self.selected_grassdb[i].label,
|
|
|
- self.selected_location[i].label,
|
|
|
- self.selected_mapset[i].label)
|
|
|
+ self.selected_grassdb[i].data['name'],
|
|
|
+ self.selected_location[i].data['name'],
|
|
|
+ self.selected_mapset[i].data['name'])
|
|
|
removed, cmd = self._runCommand(
|
|
|
'g.remove', flags='f', type=self.selected_layer[i].data['type'],
|
|
|
- name=self.selected_layer[i].label, env=env)
|
|
|
+ name=self.selected_layer[i].data['name'], env=env)
|
|
|
if removed == 0:
|
|
|
self._model.RemoveNode(self.selected_layer[i])
|
|
|
self.RefreshNode(self.selected_mapset[i], recursive=True)
|
|
|
- Debug.msg(1, "LAYER " + self.selected_layer[i].label + " DELETED")
|
|
|
+ Debug.msg(1, "LAYER " + self.selected_layer[i].data['name'] + " DELETED")
|
|
|
|
|
|
# remove map layer from layer tree if exists
|
|
|
if not isinstance(self._giface, StandaloneGrassInterface):
|
|
|
- name = self.selected_layer[i].label + '@' + self.selected_mapset[i].label
|
|
|
+ name = self.selected_layer[i].data['name'] + '@' + self.selected_mapset[i].data['name']
|
|
|
layers = self._giface.GetLayerList().GetLayersByName(name)
|
|
|
for layer in layers:
|
|
|
self._giface.GetLayerList().DeleteLayer(layer)
|
|
@@ -943,9 +944,9 @@ class DataCatalogTree(TreeView):
|
|
|
"""
|
|
|
try:
|
|
|
delete_mapset_interactively(self,
|
|
|
- self.selected_grassdb[0].label,
|
|
|
- self.selected_location[0].label,
|
|
|
- self.selected_mapset[0].label)
|
|
|
+ self.selected_grassdb[0].data['name'],
|
|
|
+ self.selected_location[0].data['name'],
|
|
|
+ self.selected_mapset[0].data['name'])
|
|
|
except Exception as e:
|
|
|
GError(parent=self,
|
|
|
message=_("Unable to delete mapset: %s") % e,
|
|
@@ -958,8 +959,8 @@ class DataCatalogTree(TreeView):
|
|
|
"""
|
|
|
try:
|
|
|
delete_location_interactively(self,
|
|
|
- self.selected_grassdb[0].label,
|
|
|
- self.selected_location[0].label)
|
|
|
+ self.selected_grassdb[0].data['name'],
|
|
|
+ self.selected_location[0].data['name'])
|
|
|
except Exception as e:
|
|
|
GError(parent=self,
|
|
|
message=_("Unable to delete location: %s") % e,
|
|
@@ -975,10 +976,10 @@ class DataCatalogTree(TreeView):
|
|
|
all_names = []
|
|
|
names = {'raster': [], 'vector': [], 'raster3d': []}
|
|
|
for i in range(len(self.selected_layer)):
|
|
|
- name = self.selected_layer[i].label + '@' + self.selected_mapset[i].label
|
|
|
+ name = self.selected_layer[i].data['name'] + '@' + self.selected_mapset[i].data['name']
|
|
|
names[self.selected_layer[i].data['type']].append(name)
|
|
|
all_names.append(name)
|
|
|
- #if self.selected_location[0].label == gisenv()['LOCATION_NAME'] and self.selected_mapset[0]:
|
|
|
+ #if self.selected_location[0].data['name'] == gisenv()['LOCATION_NAME'] and self.selected_mapset[0]:
|
|
|
for ltype in names:
|
|
|
if names[ltype]:
|
|
|
self._giface.lmgr.AddMaps(list(reversed(names[ltype])), ltype, True)
|
|
@@ -993,7 +994,7 @@ class DataCatalogTree(TreeView):
|
|
|
"""Just copy necessary data"""
|
|
|
self.DefineItems(self.GetSelected())
|
|
|
if self.selected_layer and not (self._restricted and gisenv()[
|
|
|
- 'LOCATION_NAME'] != self.selected_location[0].label):
|
|
|
+ 'LOCATION_NAME'] != self.selected_location[0].data['name']):
|
|
|
event.Allow()
|
|
|
self.OnCopyMap(event)
|
|
|
Debug.msg(1, "DRAG")
|
|
@@ -1005,7 +1006,7 @@ class DataCatalogTree(TreeView):
|
|
|
self.copy_mode = wx.GetMouseState().ControlDown()
|
|
|
if node:
|
|
|
self.DefineItems([node])
|
|
|
- if self._restricted and gisenv()['MAPSET'] != self.selected_mapset[0].label:
|
|
|
+ if self._restricted and gisenv()['MAPSET'] != self.selected_mapset[0].data['name']:
|
|
|
GMessage(_("To move or copy maps to other mapsets, unlock editing of other mapsets"),
|
|
|
parent=self)
|
|
|
event.Veto()
|
|
@@ -1024,18 +1025,18 @@ class DataCatalogTree(TreeView):
|
|
|
genv = gisenv()
|
|
|
# Distinguish when only part of db/location/mapset is changed.
|
|
|
if (
|
|
|
- self.selected_grassdb[0].label == genv['GISDBASE']
|
|
|
- and self.selected_location[0].label == genv['LOCATION_NAME']
|
|
|
+ self.selected_grassdb[0].data['name'] == genv['GISDBASE']
|
|
|
+ and self.selected_location[0].data['name'] == genv['LOCATION_NAME']
|
|
|
):
|
|
|
- self.changeMapset.emit(mapset=self.selected_mapset[0].label)
|
|
|
- elif self.selected_grassdb[0].label == genv['GISDBASE']:
|
|
|
- self.changeLocation.emit(mapset=self.selected_mapset[0].label,
|
|
|
- location=self.selected_location[0].label,
|
|
|
+ self.changeMapset.emit(mapset=self.selected_mapset[0].data['name'])
|
|
|
+ elif self.selected_grassdb[0].data['name'] == genv['GISDBASE']:
|
|
|
+ self.changeLocation.emit(mapset=self.selected_mapset[0].data['name'],
|
|
|
+ location=self.selected_location[0].data['name'],
|
|
|
dbase=None)
|
|
|
else:
|
|
|
- self.changeLocation.emit(mapset=self.selected_mapset[0].label,
|
|
|
- location=self.selected_location[0].label,
|
|
|
- dbase=self.selected_grassdb[0].label)
|
|
|
+ self.changeLocation.emit(mapset=self.selected_mapset[0].data['name'],
|
|
|
+ location=self.selected_location[0].data['name'],
|
|
|
+ dbase=self.selected_grassdb[0].data['name'])
|
|
|
self.UpdateCurrentDbLocationMapsetNode()
|
|
|
self.ExpandCurrentMapset()
|
|
|
self.RefreshItems()
|
|
@@ -1052,12 +1053,12 @@ class DataCatalogTree(TreeView):
|
|
|
cmd = ['v.info']
|
|
|
elif self.selected_layer[i].data['type'] == 'raster_3d':
|
|
|
cmd = ['r3.info']
|
|
|
- cmd.append('map=%s@%s' % (self.selected_layer[i].label, self.selected_mapset[i].label))
|
|
|
+ cmd.append('map=%s@%s' % (self.selected_layer[i].data['name'], self.selected_mapset[i].data['name']))
|
|
|
|
|
|
gisrc, env = gscript.create_environment(
|
|
|
- self.selected_grassdb[i].label,
|
|
|
- self.selected_location[i].label,
|
|
|
- self.selected_mapset[i].label)
|
|
|
+ self.selected_grassdb[i].data['name'],
|
|
|
+ self.selected_location[i].data['name'],
|
|
|
+ self.selected_mapset[i].data['name'])
|
|
|
# print output to command log area
|
|
|
# temp gisrc file must be deleted onDone
|
|
|
self._giface.RunCmd(cmd, env=env, onDone=done, userData=gisrc)
|
|
@@ -1068,7 +1069,7 @@ class DataCatalogTree(TreeView):
|
|
|
do = wx.TextDataObject()
|
|
|
text = []
|
|
|
for i in range(len(self.selected_layer)):
|
|
|
- text.append('%s@%s' % (self.selected_layer[i].label, self.selected_mapset[i].label))
|
|
|
+ text.append('%s@%s' % (self.selected_layer[i].data['name'], self.selected_mapset[i].data['name']))
|
|
|
do.SetText(','.join(text))
|
|
|
wx.TheClipboard.SetData(do)
|
|
|
wx.TheClipboard.Close()
|
|
@@ -1120,20 +1121,20 @@ class DataCatalogTree(TreeView):
|
|
|
if self._restricted:
|
|
|
currentMapset = currentLocation = currentGrassDb = True
|
|
|
for i in range(len(self.selected_grassdb)):
|
|
|
- if self.selected_grassdb[i].label != genv['GISDBASE']:
|
|
|
+ if self.selected_grassdb[i].data['name'] != genv['GISDBASE']:
|
|
|
currentGrassDb = False
|
|
|
currentLocation = False
|
|
|
currentMapset = False
|
|
|
break
|
|
|
if currentLocation:
|
|
|
for i in range(len(self.selected_location)):
|
|
|
- if self.selected_location[i].label != genv['LOCATION_NAME']:
|
|
|
+ if self.selected_location[i].data['name'] != genv['LOCATION_NAME']:
|
|
|
currentLocation = False
|
|
|
currentMapset = False
|
|
|
break
|
|
|
if currentMapset:
|
|
|
for i in range(len(self.selected_mapset)):
|
|
|
- if self.selected_mapset[i].label != genv['MAPSET']:
|
|
|
+ if self.selected_mapset[i].data['name'] != genv['MAPSET']:
|
|
|
currentMapset = False
|
|
|
break
|
|
|
|
|
@@ -1180,7 +1181,7 @@ class DataCatalogTree(TreeView):
|
|
|
menu.AppendSeparator()
|
|
|
|
|
|
if not isinstance(self._giface, StandaloneGrassInterface):
|
|
|
- if all([each.label == genv['LOCATION_NAME'] for each in self.selected_location]):
|
|
|
+ if all([each.data['name'] == genv['LOCATION_NAME'] for each in self.selected_location]):
|
|
|
if len(self.selected_layer) > 1:
|
|
|
item = wx.MenuItem(menu, wx.ID_ANY, _("&Display layers"))
|
|
|
else:
|
|
@@ -1211,9 +1212,9 @@ class DataCatalogTree(TreeView):
|
|
|
menu.AppendItem(item)
|
|
|
self.Bind(wx.EVT_MENU, self.OnSwitchDbLocationMapset, item)
|
|
|
if (
|
|
|
- self.selected_grassdb[0].label == genv['GISDBASE']
|
|
|
- and self.selected_location[0].label == genv['LOCATION_NAME']
|
|
|
- and self.selected_mapset[0].label == genv['MAPSET']
|
|
|
+ self.selected_grassdb[0].data['name'] == genv['GISDBASE']
|
|
|
+ and self.selected_location[0].data['name'] == genv['LOCATION_NAME']
|
|
|
+ and self.selected_mapset[0].data['name'] == genv['MAPSET']
|
|
|
):
|
|
|
item.Enable(False)
|
|
|
|
|
@@ -1221,9 +1222,9 @@ class DataCatalogTree(TreeView):
|
|
|
menu.AppendItem(item)
|
|
|
self.Bind(wx.EVT_MENU, self.OnDeleteMapset, item)
|
|
|
if (
|
|
|
- self.selected_grassdb[0].label == genv['GISDBASE']
|
|
|
- and self.selected_location[0].label == genv['LOCATION_NAME']
|
|
|
- and self.selected_mapset[0].label == genv['MAPSET']
|
|
|
+ self.selected_grassdb[0].data['name'] == genv['GISDBASE']
|
|
|
+ and self.selected_location[0].data['name'] == genv['LOCATION_NAME']
|
|
|
+ and self.selected_mapset[0].data['name'] == genv['MAPSET']
|
|
|
):
|
|
|
item.Enable(False)
|
|
|
|
|
@@ -1231,9 +1232,9 @@ class DataCatalogTree(TreeView):
|
|
|
menu.AppendItem(item)
|
|
|
self.Bind(wx.EVT_MENU, self.OnRenameMapset, item)
|
|
|
if (
|
|
|
- self.selected_grassdb[0].label == genv['GISDBASE']
|
|
|
- and self.selected_location[0].label == genv['LOCATION_NAME']
|
|
|
- and self.selected_mapset[0].label == genv['MAPSET']
|
|
|
+ self.selected_grassdb[0].data['name'] == genv['GISDBASE']
|
|
|
+ and self.selected_location[0].data['name'] == genv['LOCATION_NAME']
|
|
|
+ and self.selected_mapset[0].data['name'] == genv['MAPSET']
|
|
|
):
|
|
|
item.Enable(False)
|
|
|
|
|
@@ -1253,8 +1254,8 @@ class DataCatalogTree(TreeView):
|
|
|
menu.AppendItem(item)
|
|
|
self.Bind(wx.EVT_MENU, self.OnDeleteLocation, item)
|
|
|
if (
|
|
|
- self.selected_grassdb[0].label == genv['GISDBASE']
|
|
|
- and self.selected_location[0].label == genv['LOCATION_NAME']
|
|
|
+ self.selected_grassdb[0].data['name'] == genv['GISDBASE']
|
|
|
+ and self.selected_location[0].data['name'] == genv['LOCATION_NAME']
|
|
|
):
|
|
|
item.Enable(False)
|
|
|
|
|
@@ -1262,8 +1263,8 @@ class DataCatalogTree(TreeView):
|
|
|
menu.AppendItem(item)
|
|
|
self.Bind(wx.EVT_MENU, self.OnRenameLocation, item)
|
|
|
if (
|
|
|
- self.selected_grassdb[0].label == genv['GISDBASE']
|
|
|
- and self.selected_location[0].label == genv['LOCATION_NAME']
|
|
|
+ self.selected_grassdb[0].data['name'] == genv['GISDBASE']
|
|
|
+ and self.selected_location[0].data['name'] == genv['LOCATION_NAME']
|
|
|
):
|
|
|
item.Enable(False)
|
|
|
|