Преглед изворни кода

wxGUI: moved to DISTDIR/gui
eliminate hardcoded paths


git-svn-id: https://svn.osgeo.org/grass/grass/trunk@60008 15284696-431f-4ddb-bdfa-cd5b030d7da7

Martin Landa пре 11 година
родитељ
комит
50c1d35c5c
76 измењених фајлова са 135 додато и 344 уклоњено
  1. 8 8
      gui/icons/Makefile
  2. 8 8
      gui/images/Makefile
  3. 6 6
      gui/scripts/Makefile
  4. 13 13
      gui/wxpython/Makefile
  5. 1 5
      gui/wxpython/animation/dialogs.py
  6. 1 3
      gui/wxpython/animation/frame.py
  7. 0 4
      gui/wxpython/animation/g.gui.animation.py
  8. 0 4
      gui/wxpython/animation/nviztask.py
  9. 0 2
      gui/wxpython/animation/provider.py
  10. 0 4
      gui/wxpython/animation/temporal_manager.py
  11. 1 1
      gui/wxpython/core/giface.py
  12. 6 10
      gui/wxpython/core/globalvar.py
  13. 4 13
      gui/wxpython/core/menutree.py
  14. 11 18
      gui/wxpython/core/toolboxes.py
  15. 0 3
      gui/wxpython/core/units.py
  16. 2 11
      gui/wxpython/core/utils.py
  17. 0 5
      gui/wxpython/dbmgr/base.py
  18. 0 5
      gui/wxpython/dbmgr/g.gui.dbmgr.py
  19. 1 1
      gui/wxpython/dbmgr/manager.py
  20. 1 6
      gui/wxpython/dbmgr/sqlbuilder.py
  21. 0 7
      gui/wxpython/gcp/g.gui.gcp.py
  22. 2 2
      gui/wxpython/gcp/manager.py
  23. 3 8
      gui/wxpython/gis_set.py
  24. 2 2
      gui/wxpython/gmodeler/dialogs.py
  25. 1 1
      gui/wxpython/gmodeler/frame.py
  26. 0 5
      gui/wxpython/gmodeler/g.gui.gmodeler.py
  27. 1 1
      gui/wxpython/gmodeler/menudata.py
  28. 1 1
      gui/wxpython/gmodeler/model.py
  29. 1 1
      gui/wxpython/gui_core/dialogs.py
  30. 8 14
      gui/wxpython/gui_core/forms.py
  31. 2 2
      gui/wxpython/gui_core/ghelp.py
  32. 0 5
      gui/wxpython/gui_core/goutput.py
  33. 1 1
      gui/wxpython/gui_core/gselect.py
  34. 1 1
      gui/wxpython/gui_core/mapdisp.py
  35. 0 6
      gui/wxpython/gui_core/query.py
  36. 0 6
      gui/wxpython/gui_core/simplelmgr.py
  37. 2 2
      gui/wxpython/gui_core/toolbars.py
  38. 1 6
      gui/wxpython/gui_core/treeview.py
  39. 0 5
      gui/wxpython/iclass/frame.py
  40. 0 6
      gui/wxpython/iclass/g.gui.iclass.py
  41. 1 1
      gui/wxpython/icons/grass_icons.py
  42. 1 1
      gui/wxpython/icons/icon.py
  43. 1 1
      gui/wxpython/iscatt/frame.py
  44. 1 4
      gui/wxpython/lmgr/frame.py
  45. 4 4
      gui/wxpython/lmgr/menudata.py
  46. 2 8
      gui/wxpython/location_wizard/dialogs.py
  47. 1 1
      gui/wxpython/location_wizard/wizard.py
  48. 0 5
      gui/wxpython/mapdisp/frame.py
  49. 0 5
      gui/wxpython/mapdisp/main.py
  50. 0 6
      gui/wxpython/mapdisp/test_mapdisp.py
  51. 0 6
      gui/wxpython/mapswipe/g.gui.mapswipe.py
  52. 1 1
      gui/wxpython/modules/colorrules.py
  53. 2 2
      gui/wxpython/modules/extensions.py
  54. 1 1
      gui/wxpython/modules/histogram.py
  55. 1 7
      gui/wxpython/modules/mcalc_builder.py
  56. 1 7
      gui/wxpython/modules/vclean.py
  57. 1 1
      gui/wxpython/nviz/preferences.py
  58. 1 1
      gui/wxpython/psmap/dialogs.py
  59. 1 1
      gui/wxpython/psmap/frame.py
  60. 0 5
      gui/wxpython/psmap/g.gui.psmap.py
  61. 1 1
      gui/wxpython/psmap/menudata.py
  62. 2 2
      gui/wxpython/rlisetup/frame.py
  63. 0 5
      gui/wxpython/rlisetup/g.gui.rlisetup.py
  64. 1 9
      gui/wxpython/rlisetup/sampling_frame.py
  65. 0 5
      gui/wxpython/rlisetup/wizard.py
  66. 4 8
      gui/wxpython/scripts/vkrige.py
  67. 2 5
      gui/wxpython/timeline/frame.py
  68. 1 5
      gui/wxpython/timeline/g.gui.timeline.py
  69. 0 2
      gui/wxpython/tools/update_menudata.py
  70. 0 6
      gui/wxpython/vdigit/g.gui.vdigit.py
  71. 2 1
      gui/wxpython/vdigit/toolbars.py
  72. 2 2
      gui/wxpython/vnet/dialogs.py
  73. 2 2
      gui/wxpython/vnet/widgets.py
  74. 1 6
      gui/wxpython/wxgui.py
  75. 2 2
      gui/wxpython/wxplot/base.py
  76. 6 3
      gui/xml/Makefile

+ 8 - 8
gui/icons/Makefile

@@ -5,14 +5,14 @@ include $(MODULE_TOPDIR)/include/Make/Dir.make
 SRCICO := $(wildcard *.ico *.png)
 SRCICONS := $(wildcard grass/*.png)
 SRCFLAGS := $(wildcard flags/*.png)
-ETCICONS := $(patsubst %,$(ETC)/gui/icons/%,$(SRCICONS) $(SRCICO) $(SRCFLAGS))
+ETCICONS := $(patsubst %,$(GUIDIR)/icons/%,$(SRCICONS) $(SRCICO) $(SRCFLAGS))
 HTMLICONS := $(patsubst grass/%,$(HTMLDIR)/icons/%,$(SRCICONS))
 
-ETCDIRS = \
-	$(ETC)/gui \
-	$(ETC)/gui/icons \
-	$(ETC)/gui/icons/grass \
-	$(ETC)/gui/icons/flags
+DSTDIRS = \
+	$(GUIDIR) \
+	$(GUIDIR)/icons \
+	$(GUIDIR)/icons/grass \
+	$(GUIDIR)/icons/flags
 
 HTMLDIRS = \
 	$(HTMLDIR)/icons
@@ -21,11 +21,11 @@ default: $(ETCICONS) $(HTMLICONS)
 	$(MKDIR) $(ARCH_DISTDIR)/share/applications
 	$(INSTALL_DATA) grass.desktop $(ARCH_DISTDIR)/share/applications
 
-$(ETC)/gui/icons/%: % | $(ETCDIRS)
+$(GUIDIR)/icons/%: % | $(DSTDIRS)
 	$(INSTALL_DATA) $< $@
 
 $(HTMLDIR)/icons/%: grass/% | $(HTMLDIRS)
 	$(INSTALL_DATA) $< $@
 
-$(ETCDIRS) $(HTMLDIRS): %:
+$(DSTDIRS) $(HTMLDIRS): %:
 	$(MKDIR) $@

+ 8 - 8
gui/images/Makefile

@@ -2,34 +2,34 @@ MODULE_TOPDIR = ../..
 
 include $(MODULE_TOPDIR)/include/Make/Other.make
 
-ETCDIR = $(ETC)/gui/images
+DSTDIR = $(GUIDIR)/images
 
 # images
 IMGSRC := $(wildcard *.png)
-IMGDST := $(patsubst %,$(ETCDIR)/%,$(IMGSRC))
+IMGDST := $(patsubst %,$(DSTDIR)/%,$(IMGSRC))
 
 # symbols
 CATEGORIES = basic demo extra geology n_arrows
 SYMSRC := $(foreach dir,$(CATEGORIES),$(wildcard symbols/$(dir)/*.png))
-SYMDST := $(patsubst symbols/%,$(ETCDIR)/symbols/%,$(SYMSRC))
+SYMDST := $(patsubst symbols/%,$(DSTDIR)/symbols/%,$(SYMSRC))
 
 default: $(IMGDST) $(SYMDST)
 
 define symbols_rule
-$(ETCDIR)/symbols/$(1)/%.png: symbols/$(1)/%.png | $(ETCDIR)/symbols/$(1)
+$(DSTDIR)/symbols/$(1)/%.png: symbols/$(1)/%.png | $(DSTDIR)/symbols/$(1)
 	$(INSTALL_DATA) $$< $$@
 
-$(ETCDIR)/symbols/$(1): | $(ETCDIR)/symbols
+$(DSTDIR)/symbols/$(1): | $(DSTDIR)/symbols
 	$(MKDIR) $$@
 endef
 
 $(foreach category,$(CATEGORIES),$(eval $(call symbols_rule,$(category))))
 
-$(ETCDIR)/%.png: %.png | $(ETCDIR)
+$(DSTDIR)/%.png: %.png | $(DSTDIR)
 	$(INSTALL_DATA) $< $@
 
-$(ETCDIR):
+$(DSTDIR):
 	$(MKDIR) $@
 
-$(ETCDIR)/symbols: $(ETCDIR)
+$(DSTDIR)/symbols: $(DSTDIR)
 	$(MKDIR) $@

+ 6 - 6
gui/scripts/Makefile

@@ -4,21 +4,21 @@ include $(MODULE_TOPDIR)/include/Make/Rules.make
 include $(MODULE_TOPDIR)/include/Make/Vars.make
 include $(MODULE_TOPDIR)/include/Make/Python.make
 
-SCRIPTDIR = $(ETC)/gui/scripts
+DSTDIR = $(GUIDIR)/scripts
 
 ifdef MINGW
-PYFILES := $(patsubst %.py, $(SCRIPTDIR)/%.py, $(filter %.py, $(PY_SOURCES)))
+PYFILES := $(patsubst %.py, $(GUIDIR)/%.py, $(filter %.py, $(PY_SOURCES)))
 else
-PYFILES := $(patsubst %.py, $(SCRIPTDIR)/%, $(filter %.py, $(PY_SOURCES)))
+PYFILES := $(patsubst %.py, $(GUIDIR)/%, $(filter %.py, $(PY_SOURCES)))
 endif
 
 default: $(PYFILES)
 
-$(SCRIPTDIR)/%: %.py | $(SCRIPTDIR)
+$(GUIDIR)/%: %.py | $(GUIDIR)
 	$(INSTALL) $< $@
 
-$(SCRIPTDIR)/%.py: %.py | $(SCRIPTDIR)
+$(GUIDIR)/%.py: %.py | $(GUIDIR)
 	$(INSTALL) $< $@
 
-$(SCRIPTDIR):
+$(GUIDIR):
 	-test -d $@ | $(MKDIR) $@

+ 13 - 13
gui/wxpython/Makefile

@@ -7,7 +7,7 @@ include $(MODULE_TOPDIR)/include/Make/Dir.make
 include $(MODULE_TOPDIR)/include/Make/Doxygen.make
 include $(MODULE_TOPDIR)/include/Make/Python.make
 
-ETCDIR = $(ETC)/gui/wxpython
+DSTDIR = $(GUIDIR)/wxpython
 
 SRCFILES := $(wildcard icons/*.py scripts/*.py xml/*) \
 	$(wildcard animation/* core/*.py dbmgr/* gcp/*.py gmodeler/* \
@@ -16,25 +16,25 @@ SRCFILES := $(wildcard icons/*.py scripts/*.py xml/*) \
 	vnet/*.py web_services/*.py wxplot/*.py iscatt/*.py) \
 	gis_set.py gis_set_error.py wxgui.py README
 
-DSTFILES := $(patsubst %,$(ETCDIR)/%,$(SRCFILES)) \
-	$(patsubst %.py,$(ETCDIR)/%.pyc,$(filter %.py,$(SRCFILES)))
+DSTFILES := $(patsubst %,$(DSTDIR)/%,$(SRCFILES)) \
+	$(patsubst %.py,$(DSTDIR)/%.pyc,$(filter %.py,$(SRCFILES)))
 
-PYDSTDIRS := $(patsubst %,$(ETCDIR)/%,animation core dbmgr gcp gmodeler \
+PYDSTDIRS := $(patsubst %,$(DSTDIR)/%,animation core dbmgr gcp gmodeler \
 	gui_core iclass lmgr location_wizard mapwin mapdisp modules nviz psmap \
 	mapswipe vdigit wxplot web_services rlisetup vnet timeline iscatt)
 
 
-DSTDIRS := $(patsubst %,$(ETCDIR)/%,icons scripts xml)
+DSTDIRS := $(patsubst %,$(DSTDIR)/%,icons scripts xml)
 
 default: $(DSTFILES)
-	-$(MAKE) $(ETCDIR)/xml/module_items.xml
+	-$(MAKE) $(DSTDIR)/xml/module_items.xml
 	-$(MAKE) xml/menudata.xml
 	-$(MAKE) xml/module_tree_menudata.xml
 	-$(MAKE) menustrings.py
 	$(MAKE) parsubdirs
 
 
-$(ETCDIR)/%: % | $(PYDSTDIRS) $(DSTDIRS)
+$(DSTDIR)/%: % | $(PYDSTDIRS) $(DSTDIRS)
 	$(INSTALL_DATA) $< $@
 
 xml/menudata.xml: core/toolboxes.py
@@ -43,24 +43,24 @@ xml/menudata.xml: core/toolboxes.py
 xml/module_tree_menudata.xml: core/toolboxes.py
 	$(call run_grass,$(PYTHON) $< "module_tree" > $@)
 
-menustrings.py: core/menutree.py $(ETCDIR)/xml/menudata.xml $(ETCDIR)/xml/module_tree_menudata.xml $(ETCDIR)/xml/menudata_modeler.xml $(ETCDIR)/xml/menudata_psmap.xml
+menustrings.py: core/menutree.py $(DSTDIR)/xml/menudata.xml $(DSTDIR)/xml/module_tree_menudata.xml $(DSTDIR)/xml/menudata_modeler.xml $(DSTDIR)/xml/menudata_psmap.xml
 	@echo "# This is a generated file.\n" > $@
 	$(call run_grass,$(PYTHON) $< "manager" >> $@)
 	$(call run_grass,$(PYTHON) $< "module_tree" >> $@)
 	$(call run_grass,$(PYTHON) $< "modeler" >> $@)
 	$(call run_grass,$(PYTHON) $< "psmap" >> $@)
 
-$(ETCDIR)/xml/module_items.xml: tools/build_modules_xml.py
+$(DSTDIR)/xml/module_items.xml: tools/build_modules_xml.py
 	@echo "Generating interface description for all modules..."
 	$(call run_grass,$(PYTHON) $< > $@)
-	
-$(PYDSTDIRS): %: | $(ETCDIR)
+
+$(PYDSTDIRS): %: | $(DSTDIR)
 	$(MKDIR) $@
 
-$(DSTDIRS): %: | $(ETCDIR)
+$(DSTDIRS): %: | $(DSTDIR)
 	$(MKDIR) $@
 
-$(ETCDIR):
+$(DSTDIR):
 	$(MKDIR) $@
 
 #doxygen:

+ 1 - 5
gui/wxpython/animation/dialogs.py

@@ -20,7 +20,6 @@ This program is free software under the GNU General Public License
 @author Anna Petrasova <kratochanna gmail.com>
 """
 import os
-import sys
 import wx
 import copy
 import datetime
@@ -28,9 +27,6 @@ import wx.lib.filebrowsebutton as filebrowse
 import wx.lib.scrolledpanel as SP
 import wx.lib.colourselect as csel
 
-if __name__ == '__main__':
-    sys.path.append(os.path.join(os.environ['GISBASE'], "etc", "gui", "wxpython"))
-
 from core.gcmd import GMessage, GError, GException
 from core import globalvar
 from gui_core.dialogs import MapLayersDialog, GetImageHandlers
@@ -1274,7 +1270,7 @@ class AddTemporalLayerDialog(wx.Dialog):
 
         self.tselect = Select(parent=self, type='strds')
         iconTheme = UserSettings.Get(group='appearance', key='iconTheme', subkey='type')
-        bitmapPath = os.path.join(globalvar.ETCICONDIR, iconTheme, 'layer-open.png')
+        bitmapPath = os.path.join(globalvar.ICONDIR, iconTheme, 'layer-open.png')
         if os.path.isfile(bitmapPath) and os.path.getsize(bitmapPath):
             bitmap = wx.Bitmap(name=bitmapPath)
         else:

+ 1 - 3
gui/wxpython/animation/frame.py

@@ -23,8 +23,6 @@ import wx
 import wx.aui
 import tempfile
 
-if __name__ == '__main__':
-    sys.path.append(os.path.join(os.environ['GISBASE'], "etc", "gui", "wxpython"))
 import grass.script as gcore
 import grass.temporal as tgis
 from core import globalvar
@@ -57,7 +55,7 @@ class AnimationFrame(wx.Frame):
         self.SetClientSize(self.GetSize())
         self.iconsize = (16, 16)
 
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass_map.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass_map.ico'), wx.BITMAP_TYPE_ICO))
 
         # Make sure the temporal database exists
         tgis.init()

+ 0 - 4
gui/wxpython/animation/g.gui.animation.py

@@ -51,16 +51,12 @@
 #%end
 
 import os
-import sys
 
 import wx
 
 import grass.script as grass
 import grass.temporal as tgis
 
-if __name__ == '__main__':
-    sys.path.append(os.path.join(os.environ['GISBASE'], "etc", "gui", "wxpython"))
-
 from core.globalvar import CheckWxVersion
 from core.utils import _, GuiModuleMain
 from core.giface import StandaloneGrassInterface

+ 0 - 4
gui/wxpython/animation/nviztask.py

@@ -15,15 +15,11 @@ This program is free software under the GNU General Public License
 """
 
 import os
-import sys
 try:
     import xml.etree.ElementTree as etree
 except ImportError:
     import elementtree.ElementTree as etree  # Python <= 2.4
 
-if __name__ == '__main__':
-    sys.path.append(os.path.join(os.environ['GISBASE'], "etc", "gui", "wxpython"))
-
 from core.workspace import ProcessWorkspaceFile
 from core.gcmd import RunCommand, GException
 from core.utils import GetLayerNameFromCmd, CmdToTuple, _

+ 0 - 2
gui/wxpython/animation/provider.py

@@ -25,8 +25,6 @@ import sys
 import wx
 import tempfile
 from multiprocessing import Process, Queue
-if __name__ == '__main__':
-    sys.path.append(os.path.join(os.environ['GISBASE'], "etc", "gui", "wxpython"))
 
 from core.gcmd import RunCommand, GException
 from core.settings import UserSettings

+ 0 - 4
gui/wxpython/animation/temporal_manager.py

@@ -18,12 +18,8 @@ This program is free software under the GNU General Public License
 """
 
 import os
-import sys
 import datetime
 
-if __name__ == '__main__':
-    sys.path.append(os.path.join(os.environ['GISBASE'], "etc", "gui", "wxpython"))
-
 import grass.script as grass
 import grass.temporal as tgis
 from core.gcmd import GException

+ 1 - 1
gui/wxpython/core/giface.py

@@ -6,7 +6,7 @@
 Classes:
  - giface::StandaloneGrassInterface
 
-(C) 2012 by the GRASS Development Team
+(C) 2012-2014 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.

+ 6 - 10
gui/wxpython/core/globalvar.py

@@ -3,7 +3,7 @@
 
 @brief Global variables used by wxGUI
 
-(C) 2007-2011 by the GRASS Development Team
+(C) 2007-2014 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.
@@ -19,11 +19,11 @@ if not os.getenv("GISBASE"):
     sys.exit("GRASS is not running. Exiting...")
 
 # path to python scripts
-ETCDIR = os.path.join(os.getenv("GISBASE"), "etc")
-ETCICONDIR = os.path.join(os.getenv("GISBASE"), "etc", "gui", "icons")
-ETCWXDIR = os.path.join(ETCDIR, "gui", "wxpython")
-ETCIMGDIR = os.path.join(ETCDIR, "gui", "images")
-ETCSYMBOLDIR = os.path.join(ETCDIR, "gui", "images", "symbols")
+ETCDIR   = os.path.join(os.getenv("GISBASE"), "etc")
+GUIDIR   = os.path.join(os.getenv("GISBASE"), "gui")
+WXGUIDIR = os.path.join(os.getenv("GISBASE"), "gui", "wxpython")
+ICONDIR  = os.path.join(GUIDIR, "icons")
+IMGDIR  = os.path.join(GUIDIR, "images")
 
 from core.debug import Debug
 
@@ -38,12 +38,8 @@ except IOError:
         return string
     _ = null_gettext
 
-if os.path.join(ETCDIR, "python") not in sys.path:
-    sys.path.append(os.path.join(ETCDIR, "python"))
-
 from grass.script.core import get_commands
 
-
 def CheckWxVersion(version = [2, 8, 11, 0]):
     """!Check wx version"""
     ver = wx.version().split(' ')[0]

+ 4 - 13
gui/wxpython/core/menutree.py

@@ -43,11 +43,6 @@ except ImportError:
 
 import wx
 
-if __name__ == '__main__':
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
 from core.treemodel import TreeModel, ModuleNode
 from core.settings import UserSettings
 from core.toolboxes import expandAddons as expAddons
@@ -230,21 +225,17 @@ if __name__ == "__main__":
         elif arg in ('manager', 'module_tree', 'modeler', 'psmap'):
             menu = arg
 
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
     # FIXME: cross-dependencies
     if menu == 'manager':
         from lmgr.menudata     import LayerManagerMenuData
-        from core.globalvar    import ETCWXDIR
-        filename = os.path.join(ETCWXDIR, 'xml', 'menudata.xml')
+        from core.globalvar    import WXGUIDIR
+        filename = os.path.join(WXGUIDIR, 'xml', 'menudata.xml')
         menudata = LayerManagerMenuData(filename)
     # FIXME: since module descriptions are used again we have now the third copy of the same string (one is in modules)
     elif menu == 'module_tree':
         from lmgr.menudata import LayerManagerModuleTree
-        from core.globalvar import ETCWXDIR
-        filename = os.path.join(ETCWXDIR, 'xml', 'module_tree_menudata.xml')
+        from core.globalvar import WXGUIDIR
+        filename = os.path.join(WXGUIDIR, 'xml', 'module_tree_menudata.xml')
         menudata = LayerManagerModuleTree(filename)
     elif menu == 'modeler':
         from gmodeler.menudata import ModelerMenuData

+ 11 - 18
gui/wxpython/core/toolboxes.py

@@ -30,13 +30,7 @@ if sys.version_info[0:2] > (2, 6):
 else:
     has_xpath = False
 
-
-if __name__ == '__main__':
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
-from core.globalvar import ETCWXDIR
+from core.globalvar import WXGUIDIR
 from core.utils import GetSettingsPath, _
 from core.gcmd import GError, RunCommand
 
@@ -47,10 +41,10 @@ from core.debug import Debug
 
 
 # this could be placed to functions
-mainMenuFile = os.path.join(ETCWXDIR, 'xml', 'main_menu.xml')
-toolboxesFile = os.path.join(ETCWXDIR, 'xml', 'toolboxes.xml')
-wxguiItemsFile = os.path.join(ETCWXDIR, 'xml', 'wxgui_items.xml')
-moduleItemsFile = os.path.join(ETCWXDIR, 'xml', 'module_items.xml')
+mainMenuFile    = os.path.join(WXGUIDIR, 'xml', 'main_menu.xml')
+toolboxesFile   = os.path.join(WXGUIDIR, 'xml', 'toolboxes.xml')
+wxguiItemsFile  = os.path.join(WXGUIDIR, 'xml', 'wxgui_items.xml')
+moduleItemsFile = os.path.join(WXGUIDIR, 'xml', 'module_items.xml')
 
 userToolboxesFile = os.path.join(GetSettingsPath(), 'toolboxes', 'toolboxes.xml')
 userMainMenuFile = os.path.join(GetSettingsPath(), 'toolboxes', 'main_menu.xml')
@@ -79,12 +73,11 @@ def getMenudataFile(userRootFile, newFile, fallback):
     """
     Debug.msg(1, "toolboxes.getMenudataFile: {userRootFile}, {newFile}, {fallback}".format(**locals()))
 
-    distributionRootFile = os.path.join(ETCWXDIR, 'xml', userRootFile)
+    distributionRootFile = os.path.join(WXGUIDIR, 'xml', userRootFile)
     userRootFile = os.path.join(GetSettingsPath(), 'toolboxes', userRootFile)
     if not os.path.exists(userRootFile):
         userRootFile = None
 
-    ##fallback = os.path.join(ETCWXDIR, 'xml', 'menudata.xml')
     # always create toolboxes directory if does not exist yet
     tbDir = _setupToolboxes()
 
@@ -685,11 +678,11 @@ def module_test():
     """Tests the module using test files included in the current directory and
     in files from distribution.
     """
-    toolboxesFile = os.path.join(ETCWXDIR, 'xml', 'toolboxes.xml')
+    toolboxesFile   = os.path.join(WXGUIDIR, 'xml', 'toolboxes.xml')
     userToolboxesFile = 'test.toolboxes_user_toolboxes.xml'
     menuFile = 'test.toolboxes_menu.xml'
-    wxguiItemsFile = os.path.join(ETCWXDIR, 'xml', 'wxgui_items.xml')
-    moduleItemsFile = os.path.join(ETCWXDIR, 'xml', 'module_items.xml')
+    wxguiItemsFile  = os.path.join(WXGUIDIR, 'xml', 'wxgui_items.xml')
+    moduleItemsFile = os.path.join(WXGUIDIR, 'xml', 'module_items.xml')
 
     toolboxes = etree.parse(toolboxesFile)
     userToolboxes = etree.parse(userToolboxesFile)
@@ -743,9 +736,9 @@ def main():
     """
     # TODO: fix parameter handling
     if len(sys.argv) > 1:
-        mainFile = os.path.join(ETCWXDIR, 'xml', 'module_tree.xml')
+        mainFile = os.path.join(WXGUIDIR, 'xml', 'module_tree.xml')
     else:
-        mainFile = os.path.join(ETCWXDIR, 'xml', 'main_menu.xml')
+        mainFile = os.path.join(WXGUIDIR, 'xml', 'main_menu.xml')
     tree = createTree(distributionRootFile=mainFile, userRootFile=None,
                       userDefined=False)
     root = tree.getroot()

+ 0 - 3
gui/wxpython/core/units.py

@@ -27,9 +27,6 @@ import math
 if __name__ == '__main__':
     import os
     import sys
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
 
 from core.utils import _
 

+ 2 - 11
gui/wxpython/core/utils.py

@@ -21,21 +21,12 @@ import shlex
 import re
 import inspect
 
-if __name__ == '__main__':
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
-from core.globalvar import ETCDIR
-if os.path.join(ETCDIR, "python") not in sys.path:
-    sys.path.append(os.path.join(ETCDIR, "python"))
-
 from grass.script import core as grass
 from grass.script import task as gtask
 
+from core import globalvar
 from core.gcmd  import RunCommand
 from core.debug import Debug
-# from core.settings import UserSettings
 
 try:
     # intended to be used also outside this module
@@ -845,7 +836,7 @@ def GetSettingsPath():
     """!Get full path to the settings directory
     """
     try:
-        verFd = open(os.path.join(ETCDIR, "VERSIONNUMBER"))
+        verFd = open(os.path.join(globalvar.ETCDIR, "VERSIONNUMBER"))
         version = int(verFd.readlines()[0].split(' ')[0].split('.')[0])
     except (IOError, ValueError, TypeError, IndexError), e:
         sys.exit(_("ERROR: Unable to determine GRASS version. Details: %s") % e)

+ 0 - 5
gui/wxpython/dbmgr/base.py

@@ -34,11 +34,6 @@ import tempfile
 import copy
 import types
 
-if __name__ == "__main__":
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
 from core import globalvar
 import wx
 import wx.lib.mixins.listctrl as listmix

+ 0 - 5
gui/wxpython/dbmgr/g.gui.dbmgr.py

@@ -29,16 +29,11 @@
 #%end
 
 import os
-import sys
 
 import  wx
 
 import grass.script as grass
 
-gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-if gui_wx_path not in sys.path:
-    sys.path.append(gui_wx_path)
-
 from core.utils import _, GuiModuleMain
 from dbmgr.manager import AttributeManager
 

+ 1 - 1
gui/wxpython/dbmgr/manager.py

@@ -76,7 +76,7 @@ class AttributeManager(wx.Frame, DbMgrBase):
         self.SetTitle(title)
         
         # icon
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass_sql.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass_sql.ico'), wx.BITMAP_TYPE_ICO))
 
         self.panel = wx.Panel(parent = self, id = wx.ID_ANY)
              

+ 1 - 6
gui/wxpython/dbmgr/sqlbuilder.py

@@ -27,11 +27,6 @@ This program is free software under the GNU General Public License
 import os
 import sys
 
-if __name__ == "__main__":
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
 from core import globalvar
 from core.utils import _
 import wx
@@ -51,7 +46,7 @@ class SQLBuilder(wx.Frame):
                  layer = 1):
         wx.Frame.__init__(self, parent, id, title)
         
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass_sql.ico'),
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass_sql.ico'),
                              wx.BITMAP_TYPE_ICO))
         
         self.parent     = parent

+ 0 - 7
gui/wxpython/gcp/g.gui.gcp.py

@@ -33,17 +33,10 @@ Module to run GCP management tool as stadalone application.
 """
 
 import os
-import sys
 import  wx
 
 import grass.script as grass
 
-# adding a path to wxGUI modules
-if __name__ == '__main__':
-    WXGUIBASE = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if WXGUIBASE not in sys.path:
-        sys.path.append(WXGUIBASE)
-
 from core.settings import UserSettings
 from core.globalvar import CheckWxVersion
 from core.giface import StandaloneGrassInterface

+ 2 - 2
gui/wxpython/gcp/manager.py

@@ -65,7 +65,7 @@ tgt_map = { 'raster' : '',
 maptype = 'raster'
 
 def getSmallUpArrowImage():
-    stream = open(os.path.join(globalvar.ETCIMGDIR, 'small_up_arrow.png'), 'rb')
+    stream = open(os.path.join(globalvar.IMGDIR, 'small_up_arrow.png'), 'rb')
     try:
         img = wx.ImageFromStream(stream)
     finally:
@@ -73,7 +73,7 @@ def getSmallUpArrowImage():
     return img
 
 def getSmallDnArrowImage():
-    stream = open(os.path.join(globalvar.ETCIMGDIR, 'small_down_arrow.png'), 'rb')
+    stream = open(os.path.join(globalvar.IMGDIR, 'small_down_arrow.png'), 'rb')
     try:
         img = wx.ImageFromStream(stream)
     finally:

+ 3 - 8
gui/wxpython/gis_set.py

@@ -28,11 +28,6 @@ import platform
 import codecs
 import getpass
 
-if __name__ == "__main__":
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
 from core import globalvar
 from core.utils import _
 import wx
@@ -82,9 +77,9 @@ class GRASSStartup(wx.Frame):
         # image
         try:
             if os.getenv('ISISROOT'):
-                name = os.path.join(globalvar.ETCDIR, "gui", "images", "startup_banner_isis.png")
+                name = os.path.join(globalvar.GUIDIR, "images", "startup_banner_isis.png")
             else:
-                name = os.path.join(globalvar.ETCDIR, "gui", "images", "startup_banner.png")
+                name = os.path.join(globalvar.GUIDIR, "images", "startup_banner.png")
             self.hbitmap = wx.StaticBitmap(self.panel, wx.ID_ANY,
                                            wx.Bitmap(name = name,
                                                      type = wx.BITMAP_TYPE_PNG))
@@ -210,7 +205,7 @@ class GRASSStartup(wx.Frame):
     def _set_properties(self):
         """!Set frame properties"""
         self.SetTitle(_("Welcome to GRASS GIS"))
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, "grass.ico"),
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, "grass.ico"),
                              wx.BITMAP_TYPE_ICO))
 
         self.lwelcome.SetForegroundColour(wx.Colour(35, 142, 35))

+ 2 - 2
gui/wxpython/gmodeler/dialogs.py

@@ -151,7 +151,7 @@ class ModelSearchDialog(wx.Dialog):
         
         wx.Dialog.__init__(self, parent = parent, id = wx.ID_ANY, title = title, **kwargs)
         self.SetName("ModelerDialog")
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
         
         self._command = None
         self.panel = wx.Panel(parent = self, id = wx.ID_ANY)
@@ -301,7 +301,7 @@ class ModelRelationDialog(wx.Dialog):
         
         self.valid = True
         wx.Dialog.__init__(self, parent, id, title, style = style, **kwargs)
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
         
         self.panel = wx.Panel(parent = self, id = wx.ID_ANY)
         

+ 1 - 1
gui/wxpython/gmodeler/frame.py

@@ -83,7 +83,7 @@ class ModelFrame(wx.Frame):
         
         wx.Frame.__init__(self, parent = parent, id = id, title = title, **kwargs)
         self.SetName("Modeler")
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
         
         self.menubar = Menu(parent = self, model = ModelerMenuData().GetModel(separators=True))        
         self.SetMenuBar(self.menubar)

+ 0 - 5
gui/wxpython/gmodeler/g.gui.gmodeler.py

@@ -35,16 +35,11 @@
 #%end
 
 import os
-import sys
 
 import  wx
 
 import grass.script as grass
 
-gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-if gui_wx_path not in sys.path:
-    sys.path.append(gui_wx_path)
-
 from core.giface import StandaloneGrassInterface
 from core.globalvar import CheckWxVersion
 from core.utils import _, GuiModuleMain

+ 1 - 1
gui/wxpython/gmodeler/menudata.py

@@ -22,7 +22,7 @@ from core.menutree  import MenuTreeModelBuilder
 class ModelerMenuData(MenuTreeModelBuilder):
     def __init__(self, filename = None):
         if not filename:
-            filename = os.path.join(globalvar.ETCWXDIR, 'xml', 'menudata_modeler.xml')
+            filename = os.path.join(globalvar.WXGUIDIR, 'xml', 'menudata_modeler.xml')
         
         MenuTreeModelBuilder.__init__(self, filename)
 

+ 1 - 1
gui/wxpython/gmodeler/model.py

@@ -289,7 +289,7 @@ class Model(object):
         
         Raise exception on error.
         """
-        dtdFilename = os.path.join(globalvar.ETCWXDIR, "xml", "grass-gxm.dtd")
+        dtdFilename = os.path.join(globalvar.WXGUIDIR, "xml", "grass-gxm.dtd")
         
         # parse workspace file
         try:

+ 1 - 1
gui/wxpython/gui_core/dialogs.py

@@ -2419,7 +2419,7 @@ class SqlQueryFrame(wx.Frame):
         self.parent = parent
 
         wx.Frame.__init__(self, parent = parent, id = id, title = title, *kwargs)
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass_sql.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass_sql.ico'), wx.BITMAP_TYPE_ICO))
         self.panel = wx.Panel(parent = self, id = wx.ID_ANY)
         
         self.sqlBox = wx.StaticBox(parent = self.panel, id = wx.ID_ANY,

+ 8 - 14
gui/wxpython/gui_core/forms.py

@@ -58,18 +58,11 @@ import codecs
 
 from threading import Thread
 
-gisbase = os.getenv("GISBASE")
-if gisbase is None:
-    print >>sys.stderr, "We don't seem to be properly installed, or we are being run outside GRASS. Expect glitches."
+if not os.getenv("GISBASE"):
+    sys.write("We don't seem to be properly installed, or we are being run "
+              "outside GRASS. Expect glitches.\n")
     gisbase = os.path.join(os.path.dirname(sys.argv[0]), os.path.pardir)
-    wxbase = gisbase
-else:
-    wxbase = os.path.join(gisbase, 'etc', 'gui', 'wxpython')
 
-if wxbase not in sys.path:
-    sys.path.append(wxbase)
-
-from core import globalvar
 import wx
 try:
     import wx.lib.agw.flatnotebook as FN
@@ -89,6 +82,7 @@ from grass.pydispatch.signal import Signal
 from grass.script import core as grass
 from grass.script import task as gtask
 
+from core import globalvar
 from gui_core.widgets import StaticWrapText, ScrolledPanel, ColorTablesComboBox, \
                              BarscalesComboBox, NArrowsComboBox
 from gui_core.ghelp   import HelpPanel
@@ -417,7 +411,7 @@ class TaskFrame(wx.Frame):
         self.CreateStatusBar()
         
         # icon
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass_dialog.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass_dialog.ico'), wx.BITMAP_TYPE_ICO))
         
         guisizer = wx.BoxSizer(wx.VERTICAL)
         
@@ -432,7 +426,7 @@ class TaskFrame(wx.Frame):
         
         # GRASS logo
         self.logo = wx.StaticBitmap(parent = self.panel,
-                                    bitmap = wx.Bitmap(name = os.path.join(globalvar.ETCIMGDIR,
+                                    bitmap = wx.Bitmap(name = os.path.join(globalvar.IMGDIR,
                                                                            'grass_form.png'),
                                                      type = wx.BITMAP_TYPE_PNG))
         topsizer.Add(item = self.logo, proportion = 0, border = 3,
@@ -1269,7 +1263,7 @@ class CmdPanel(wx.Panel):
                             showButton = False
                         if showButton:
                             iconTheme = UserSettings.Get(group='appearance', key='iconTheme', subkey='type')
-                            bitmap = wx.Bitmap(os.path.join(globalvar.ETCICONDIR, iconTheme, 'map-info.png'))
+                            bitmap = wx.Bitmap(os.path.join(globalvar.ICONDIR, iconTheme, 'map-info.png'))
                             bb = wx.BitmapButton(parent=which_panel, bitmap=bitmap)
                             bb.Bind(wx.EVT_BUTTON, self.OnTimelineTool)
                             bb.SetToolTipString(_("Show graphical representation of temporal extent of dataset(s) ."))
@@ -2237,7 +2231,7 @@ class CmdPanel(wx.Panel):
         
     def AddBitmapToImageList(self, section, imageList):
         iconTheme = UserSettings.Get(group = 'appearance', key = 'iconTheme', subkey = 'type')
-        iconSectionDict = {'manual': os.path.join(globalvar.ETCICONDIR, iconTheme, 'help.png')}
+        iconSectionDict = {'manual': os.path.join(globalvar.ICONDIR, iconTheme, 'help.png')}
         if section in iconSectionDict.keys():
             image = wx.Image(iconSectionDict[section]).Scale(16, 16, wx.IMAGE_QUALITY_HIGH)
             idx = imageList.Add(wx.BitmapFromImage(image))

+ 2 - 2
gui/wxpython/gui_core/ghelp.py

@@ -50,7 +50,7 @@ class AboutWindow(wx.Frame):
         self.panel = wx.Panel(parent = self, id = wx.ID_ANY)
         
         # icon
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
 
         # notebook
         self.aboutNotebook = FormNotebook(self.panel, style = wx.BK_LEFT)
@@ -794,7 +794,7 @@ def ShowAboutDialog(prgName, startYear):
     """
     info = wx.AboutDialogInfo()
     
-    info.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+    info.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
     info.SetName(prgName)
     info.SetWebSite('http://grass.osgeo.org')
     info.SetDescription(_grassDevTeam(startYear) + '\n\n' +

+ 0 - 5
gui/wxpython/gui_core/goutput.py

@@ -20,13 +20,8 @@ This program is free software under the GNU General Public License
 """
 
 import os
-import sys
 import textwrap
 
-gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-if gui_wx_path not in sys.path:
-    sys.path.append(gui_wx_path)
-
 import wx
 from   wx import stc
 

+ 1 - 1
gui/wxpython/gui_core/gselect.py

@@ -2147,7 +2147,7 @@ class CoordinatesSelect(wx.Panel):
                                        size=globalvar.DIALOG_TEXTCTRL_SIZE,
                                        validator=CoordinatesValidator())
         
-        icon = wx.Bitmap(os.path.join(globalvar.ETCICONDIR, "grass", "pointer.png"))
+        icon = wx.Bitmap(os.path.join(globalvar.ICONDIR, "grass", "pointer.png"))
         self.buttonInsCoords = buttons.ThemedGenBitmapToggleButton(parent=self, id=wx.ID_ANY,
                                                                    bitmap=icon,
                                                                    size=globalvar.DIALOG_COLOR_SIZE)

+ 1 - 1
gui/wxpython/gui_core/mapdisp.py

@@ -83,7 +83,7 @@ class MapFrameBase(wx.Frame):
         self.SetClientSize(self.GetSize())
         self.iconsize = (16, 16)
 
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass_map.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass_map.ico'), wx.BITMAP_TYPE_ICO))
         
         # toolbars
         self.toolbars = {}

+ 0 - 6
gui/wxpython/gui_core/query.py

@@ -14,14 +14,8 @@ This program is free software under the GNU General Public License
 @author Anna Kratochvilova <kratochanna gmail.com>
 """
 import os
-import sys
 import wx
 
-if __name__ == '__main__':
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
 from core.utils import _
 from gui_core.treeview import TreeListView
 from core.treemodel import TreeModel, DictNode

+ 0 - 6
gui/wxpython/gui_core/simplelmgr.py

@@ -16,13 +16,7 @@ This program is free software under the GNU General Public License
 @author Anna Petrasova (kratochanna gmail.com)
 """
 import os
-import sys
 
-# adding a path to wxGUI modules
-if __name__ == '__main__':
-    WXGUIBASE = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if WXGUIBASE not in sys.path:
-        sys.path.append(WXGUIBASE)
 import wx
 import wx.aui
 

+ 2 - 2
gui/wxpython/gui_core/toolbars.py

@@ -26,7 +26,7 @@ from core.debug import Debug
 from core.utils import _
 from icons.icon import MetaIcon
 from collections import defaultdict
-from core.globalvar import ETCIMGDIR
+from core.globalvar import IMGDIR
 
 from grass.pydispatch.signal import Signal
 
@@ -257,7 +257,7 @@ class BaseToolbar(wx.ToolBar):
 
         Button must be custom (not toolbar tool) to set smaller width.
         """
-        arrowPath = os.path.join(ETCIMGDIR, 'small_down_arrow.png')
+        arrowPath = os.path.join(IMGDIR, 'small_down_arrow.png')
         if os.path.isfile(arrowPath) and os.path.getsize(arrowPath):
             bitmap = wx.Bitmap(name = arrowPath)
         else:

+ 1 - 6
gui/wxpython/gui_core/treeview.py

@@ -15,7 +15,7 @@ This program is free software under the GNU General Public License
 """
 
 import os
-import sys
+
 import wx
 from wx.lib.mixins.treemixin import VirtualTree, ExpansionState
 try:
@@ -24,11 +24,6 @@ except ImportError:
     import wx.lib.customtreectrl as CT
 import wx.gizmos as gizmos
 
-if __name__ == '__main__':
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
 from core.globalvar import hasAgw
 from core.treemodel import TreeModel, DictNode
 from core.utils import _

+ 0 - 5
gui/wxpython/iclass/frame.py

@@ -24,11 +24,6 @@ import tempfile
 import types
 from core.utils import _
 
-if __name__ == "__main__":
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
 from core import globalvar
 import wx
 

+ 0 - 6
gui/wxpython/iclass/g.gui.iclass.py

@@ -50,17 +50,11 @@
 #%end
 
 import os
-import sys
 
 import  wx
 
 import grass.script as grass
 
-if __name__ == '__main__':
-    wxbase = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if wxbase not in sys.path:
-        sys.path.append(wxbase)
-
 from core.settings import UserSettings
 from core.globalvar import CheckWxVersion
 from core.giface import StandaloneGrassInterface

+ 1 - 1
gui/wxpython/icons/grass_icons.py

@@ -9,7 +9,7 @@ import os
 
 from core import globalvar
 
-iconPath = os.path.join(globalvar.ETCDIR, "gui", "icons", "grass")
+iconPath = os.path.join(globalvar.ICONDIR, "grass")
 
 iconSet = dict()
 

+ 1 - 1
gui/wxpython/icons/icon.py

@@ -6,7 +6,7 @@
 Classes:
  - MetaIcon
 
-(C) 2007-2008, 2010-2011 by the GRASS Development Team
+(C) 2007-2014 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.

+ 1 - 1
gui/wxpython/iscatt/frame.py

@@ -146,7 +146,7 @@ class IScattDialog(wx.Dialog):
     def __init__(self, parent, giface, title=_("GRASS GIS Interactive Scatter Plot Tool"),
                  id=wx.ID_ANY, style=wx.DEFAULT_FRAME_STYLE, **kwargs):
         wx.Dialog.__init__(self, parent, id, style=style, title = title, **kwargs)
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
 
         self.iscatt_panel = MapDispIScattPanel(self, giface)
 

+ 1 - 4
gui/wxpython/lmgr/frame.py

@@ -110,7 +110,7 @@ class GMFrame(wx.Frame):
         self._setTitle()
         self.SetName("LayerManager")
         
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
         
         self._giface = LayerManagerGrassInterface(self)
         
@@ -1166,9 +1166,6 @@ class GMFrame(wx.Frame):
         @return True on success
         @return False on error
         """
-        # dtd
-        # dtdFilename = os.path.join(globalvar.ETCWXDIR, "xml", "grass-gxw.dtd")
-        
         # parse workspace file
         try:
             gxwXml = ProcessWorkspaceFile(etree.parse(filename))

+ 4 - 4
gui/wxpython/lmgr/menudata.py

@@ -19,7 +19,7 @@ import os
 
 from core.menutree  import MenuTreeModelBuilder
 from core.toolboxes import getMenudataFile
-from core.globalvar import ETCWXDIR
+from core.globalvar import WXGUIDIR
 from core.gcmd import GError
 from core.utils import _
 
@@ -31,7 +31,7 @@ class LayerManagerMenuData(MenuTreeModelBuilder):
         else:
             expandAddons = True
 
-        fallback = os.path.join(ETCWXDIR, 'xml', 'menudata.xml')
+        fallback = os.path.join(WXGUIDIR, 'xml', 'menudata.xml')
         if not filename:
             filename = getMenudataFile(userRootFile='main_menu.xml',
                                        newFile='menudata.xml',
@@ -41,7 +41,7 @@ class LayerManagerMenuData(MenuTreeModelBuilder):
         except (ValueError, AttributeError, TypeError):
             GError(_("Unable to parse user toolboxes XML files. "
                      "Default main menu will be loaded."))
-            fallback = os.path.join(ETCWXDIR, 'xml', 'menudata.xml')
+            fallback = os.path.join(WXGUIDIR, 'xml', 'menudata.xml')
             MenuTreeModelBuilder.__init__(self, fallback)
 
 
@@ -52,7 +52,7 @@ class LayerManagerModuleTree(MenuTreeModelBuilder):
         else:
             expandAddons = True
 
-        fallback = os.path.join(ETCWXDIR, 'xml', 'module_tree_menudata.xml')
+        fallback = os.path.join(WXGUIDIR, 'xml', 'module_tree_menudata.xml')
         if not filename:
             filename = getMenudataFile(userRootFile='module_tree.xml',
                                        newFile='module_tree_menudata.xml',

+ 2 - 8
gui/wxpython/location_wizard/dialogs.py

@@ -18,16 +18,10 @@ This program is free software under the GNU General Public License
 @author Martin Landa <landa.martin gmail.com>   
 """
 import os
-import sys
 
 import wx
 import wx.lib.scrolledpanel as scrolled
 
-if __name__ == '__main__':
-    wxbase = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if wxbase not in sys.path:
-        sys.path.append(wxbase)
-
 from core                 import globalvar
 from core.gcmd            import RunCommand
 from core.utils import _
@@ -43,7 +37,7 @@ class RegionDef(BaseClass, wx.Dialog):
         wx.Dialog.__init__(self, parent, id, title, size = size)
         panel = wx.Panel(self, id = wx.ID_ANY)
         
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
         
         self.parent = parent
         self.location = location
@@ -93,7 +87,7 @@ class RegionDef(BaseClass, wx.Dialog):
         #
         # image
         #
-        self.img = wx.Image(os.path.join(globalvar.ETCIMGDIR, "qgis_world.png"),
+        self.img = wx.Image(os.path.join(globalvar.IMGDIR, "qgis_world.png"),
                             wx.BITMAP_TYPE_PNG).ConvertToBitmap()
         
         #

+ 1 - 1
gui/wxpython/location_wizard/wizard.py

@@ -1809,7 +1809,7 @@ class LocationWizard(wx.Object):
         #
         # define wizard image
         #
-        imagePath = os.path.join(globalvar.ETCIMGDIR, "loc_wizard_qgis.png")
+        imagePath = os.path.join(globalvar.IMGDIR, "loc_wizard_qgis.png")
         wizbmp = wx.Image(imagePath, wx.BITMAP_TYPE_PNG)
         wizbmp = wizbmp.ConvertToBitmap()
         

+ 0 - 5
gui/wxpython/mapdisp/frame.py

@@ -30,11 +30,6 @@ from core import globalvar
 import wx
 import wx.aui
 
-if os.path.join(globalvar.ETCWXDIR, "icons") not in sys.path:
-    sys.path.append(os.path.join(globalvar.ETCWXDIR, "icons"))
-if os.path.join(globalvar.ETCDIR, "python") not in sys.path:
-    sys.path.append(os.path.join(globalvar.ETCDIR, "python"))
-
 from core               import globalvar
 from core.render        import Map
 from vdigit.toolbars    import VDigitToolbar

+ 0 - 5
gui/wxpython/mapdisp/main.py

@@ -29,11 +29,6 @@ This program is free software under the GNU General Public License
 import os
 import sys
 
-if __name__ == "__main__":
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
 from core          import globalvar
 import wx
 

+ 0 - 6
gui/wxpython/mapdisp/test_mapdisp.py

@@ -55,12 +55,6 @@ import wx
 
 import grass.script as grass
 
-# adding a path to wxGUI modules
-if __name__ == '__main__':
-    WXGUIBASE = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if WXGUIBASE not in sys.path:
-        sys.path.append(WXGUIBASE)
-
 from core.utils import _
 from core.settings import UserSettings
 from core.globalvar import CheckWxVersion

+ 0 - 6
gui/wxpython/mapswipe/g.gui.mapswipe.py

@@ -46,17 +46,11 @@
 
 
 import os
-import sys
 
 import  wx
 
 import grass.script as grass
 
-if __name__ == '__main__':
-    wxbase = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if wxbase not in sys.path:
-        sys.path.append(wxbase)
-
 from core.settings import UserSettings
 from core.globalvar import CheckWxVersion
 from core.giface import StandaloneGrassInterface

+ 1 - 1
gui/wxpython/modules/colorrules.py

@@ -327,7 +327,7 @@ class ColorTable(wx.Frame):
         
         wx.Frame.__init__(self, parent, id, title, style = style, **kwargs)
         
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
         
         self.panel = wx.Panel(parent = self, id = wx.ID_ANY)
         

+ 2 - 2
gui/wxpython/modules/extensions.py

@@ -42,7 +42,7 @@ class InstallExtensionWindow(wx.Frame):
         self.options = dict() # list of options
 
         wx.Frame.__init__(self, parent = parent, id = id, title = title, **kwargs)
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
         
         self.panel = wx.Panel(parent = self, id = wx.ID_ANY)
 
@@ -354,7 +354,7 @@ class ManageExtensionWindow(wx.Frame):
         self.parent = parent
         
         wx.Frame.__init__(self, parent = parent, id = id, title = title, **kwargs)
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
         
         self.panel = wx.Panel(parent = self, id = wx.ID_ANY)
 

+ 1 - 1
gui/wxpython/modules/histogram.py

@@ -270,7 +270,7 @@ class HistogramFrame(wx.Frame):
                  size = wx.Size(500, 350),
                  style = wx.DEFAULT_FRAME_STYLE, **kwargs):
         wx.Frame.__init__(self, parent, id, title, size = size, style = style, **kwargs)
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
 
         self._giface = giface
         self.Map   = Map()         # instance of render.Map to be associated with display

+ 1 - 7
gui/wxpython/modules/mcalc_builder.py

@@ -17,17 +17,11 @@ This program is free software under the GNU General Public License
 """
 
 import os
-import sys
 import re
 
 import wx
 import grass.script as grass
 
-if __name__ == "__main__":
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
 from core             import globalvar
 from core.gcmd        import GError, RunCommand
 from core.giface      import StandaloneGrassInterface
@@ -61,7 +55,7 @@ class MapCalcFrame(wx.Frame):
             title = _('GRASS GIS 3D Raster Map Calculator')
             
         wx.Frame.__init__(self, parent, id = id, title = title, **kwargs)
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
         
         self.panel = wx.Panel(parent = self, id = wx.ID_ANY)
         self.CreateStatusBar()

+ 1 - 7
gui/wxpython/modules/vclean.py

@@ -15,16 +15,10 @@ This program is free software under the GNU General Public License
 """
 
 import os
-import sys
 
 import wx
 import wx.lib.scrolledpanel as scrolled
 
-if __name__ == '__main__':
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
 from core.gcmd        import RunCommand, GError
 from core             import globalvar
 from core.utils import _
@@ -55,7 +49,7 @@ class VectorCleaningFrame(wx.Frame):
         self.CreateStatusBar()
 
         # icon
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
 
         self.panel = wx.Panel(parent=self, id=wx.ID_ANY)
 

+ 1 - 1
gui/wxpython/nviz/preferences.py

@@ -33,7 +33,7 @@ class NvizPreferencesDialog(PreferencesBaseDialog):
                  settings = UserSettings):
         PreferencesBaseDialog.__init__(self, parent = parent, title = title, giface = giface,
                                        settings = settings)
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass_nviz.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass_nviz.ico'), wx.BITMAP_TYPE_ICO))
 
         self.toolWin = self.parent.nviz
         

+ 1 - 1
gui/wxpython/psmap/dialogs.py

@@ -3529,7 +3529,7 @@ class ScalebarDialog(PsmapDialog):
         sbTypeText = wx.StaticText(panel, id = wx.ID_ANY, label = _("Type:"))
         self.sbCombo = wx.combo.BitmapComboBox(panel, style = wx.CB_READONLY)
         # only temporary, images must be moved away
-        imagePath = os.path.join(globalvar.ETCIMGDIR, "scalebar-fancy.png"), os.path.join(globalvar.ETCIMGDIR, "scalebar-simple.png") 
+        imagePath = os.path.join(globalvar.IMGDIR, "scalebar-fancy.png"), os.path.join(globalvar.IMGDIR, "scalebar-simple.png") 
         for item, path in zip(['fancy', 'simple'], imagePath):
             if not os.path.exists(path):
                 bitmap = wx.EmptyBitmap(0,0)

+ 1 - 1
gui/wxpython/psmap/frame.py

@@ -60,7 +60,7 @@ class PsMapFrame(wx.Frame):
         self.parent = parent
 
         wx.Frame.__init__(self, parent = parent, id = id, title = title, name = "PsMap", **kwargs)
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
         #menubar
         self.menubar = Menu(parent = self, model = PsMapMenuData().GetModel(separators=True))
         self.SetMenuBar(self.menubar)

+ 0 - 5
gui/wxpython/psmap/g.gui.psmap.py

@@ -33,16 +33,11 @@
 #%end
 
 import os
-import sys
 
 import  wx
 
 import grass.script as grass
 
-wxbase = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-if wxbase not in sys.path:
-    sys.path.append(wxbase)
-
 from core.globalvar import CheckWxVersion
 from core.utils import _, GuiModuleMain
 from psmap.frame import PsMapFrame

+ 1 - 1
gui/wxpython/psmap/menudata.py

@@ -26,6 +26,6 @@ class PsMapMenuData(MenuTreeModelBuilder):
         @param path path to XML to be read (None for menudata_psmap.xml)
         """
         if not path:
-            path = os.path.join(globalvar.ETCWXDIR, 'xml', 'menudata_psmap.xml')
+            path = os.path.join(globalvar.WXGUIDIR, 'xml', 'menudata_psmap.xml')
         
         MenuTreeModelBuilder.__init__(self, path)

+ 2 - 2
gui/wxpython/rlisetup/frame.py

@@ -28,7 +28,7 @@ class ViewFrame(wx.Frame):
         self.pathfile = os.path.join(self.rlipath, conf)
         wx.Frame.__init__(self, parent=parent, id=id, title=title,
                           **kwargs)
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'),
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'),
                              wx.BITMAP_TYPE_ICO))
         self.panel = wx.Panel(parent=self, id=wx.ID_ANY)
         self.confilesBox = wx.StaticBox(parent=self.panel, id=wx.ID_ANY,
@@ -114,7 +114,7 @@ class RLiSetupFrame(wx.Frame):
         #init of frame
         wx.Frame.__init__(self, parent=parent, id=id, title=title,
                           **kwargs)
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'),
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'),
                              wx.BITMAP_TYPE_ICO))
         self.panel = wx.Panel(parent=self, id=wx.ID_ANY)
         #box for select configuration file

+ 0 - 5
gui/wxpython/rlisetup/g.gui.rlisetup.py

@@ -27,15 +27,10 @@
 #%end
 
 import os
-import sys
 
 import wx
 import grass.script as grass
 
-wxbase = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-if wxbase not in sys.path:
-    sys.path.append(wxbase)
-
 from core.giface import StandaloneGrassInterface
 from core.globalvar import CheckWxVersion
 from core.utils import _, GuiModuleMain

+ 1 - 9
gui/wxpython/rlisetup/sampling_frame.py

@@ -18,7 +18,7 @@ This program is free software under the GNU General Public License
 """
 
 import os
-import sys
+
 import wx
 import wx.aui
 
@@ -36,14 +36,6 @@ try:
 except ImportError:
     pass
 
-#end new import
-
-# adding a path to wxGUI modules
-if __name__ == '__main__':
-    WXGUIBASE = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if WXGUIBASE not in sys.path:
-        sys.path.append(WXGUIBASE)
-
 from core.utils import _
 from core.giface import StandaloneGrassInterface
 from mapwin.base import MapWindowProperties

+ 0 - 5
gui/wxpython/rlisetup/wizard.py

@@ -20,13 +20,8 @@ This program is free software under the GNU General Public License
 @author Luca Delucchi <lucadeluge gmail com>
 """
 
-import sys
 import os
 
-wxbase = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-if wxbase not in sys.path:
-    sys.path.append(wxbase)
-
 import wx
 import wx.wizard as wiz
 import wx.lib.scrolledpanel as scrolled

+ 4 - 8
gui/wxpython/scripts/vkrige.py

@@ -23,17 +23,13 @@ import time
 import thread
 from core.utils import _
 
-### dependencies to be checked once, as they are quite time-consuming. cfr. grass.parser.
-# GRASS binding
+### dependencies to be checked once, as they are quite
+### time-consuming. cfr. grass.parser.
+
 try:
     import grass.script as grass
 except ImportError:
     sys.exit(_("No GRASS-python library found."))
-### wxGUI imports
-
-GUIModulesPath = os.path.join(os.getenv("GISBASE"), "etc", "gui", "wxpython")
-if GUIModulesPath not in sys.path:
-    sys.path.append(GUIModulesPath)
 
 from core import globalvar
 from gui_core import gselect
@@ -278,7 +274,7 @@ class KrigingModule(wx.Frame):
         wx.Frame.__init__(self, parent, *args, **kwargs)
         # setting properties and all widgettery
         self.SetTitle(_("Kriging Module"))
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass_dialog.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass_dialog.ico'), wx.BITMAP_TYPE_ICO))
         self.log = Log(self) 
         self.CreateStatusBar()
         self.log.message(_("Ready."))

+ 2 - 5
gui/wxpython/timeline/frame.py

@@ -16,13 +16,13 @@ This program is free software under the GNU General Public License
 @author Anna Kratochvilova <kratochanna gmail.com>
 """
 import os
-import sys
-import wx
 import signal
 from math import ceil
 from itertools import cycle
 import numpy as np
 
+import wx
+
 try:
     import matplotlib
     # The recommended way to use wx with mpl is with the WXAgg
@@ -37,9 +37,6 @@ try:
 except ImportError:
     raise ImportError(_('The Timeline Tool needs "Matplotlib" package to be installed.'))
 
-if __name__ == '__main__':
-    sys.path.append(os.path.join(os.environ['GISBASE'], "etc", "gui", "wxpython"))
-
 import grass.script as grass
 from core.utils import _
 

+ 1 - 5
gui/wxpython/timeline/g.gui.timeline.py

@@ -35,12 +35,8 @@
 
 
 import os
-import sys
-import  wx
 
-gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-if gui_wx_path not in sys.path:
-    sys.path.append(gui_wx_path)
+import  wx
 
 import grass.script as grass
 from core.utils import _, GuiModuleMain

+ 0 - 2
gui/wxpython/tools/update_menudata.py

@@ -30,8 +30,6 @@ except ImportError:
 from grass.script import core as grass
 from grass.script import task as gtask
 
-if __name__ == "__main__":
-    sys.path.append(os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython'))
 from lmgr.menudata  import LayerManagerMenuData
 from core.globalvar import grassCmd
 

+ 0 - 6
gui/wxpython/vdigit/g.gui.vdigit.py

@@ -35,17 +35,11 @@
 #%end
 
 import os
-import sys
 
 import grass.script as grass
 
 import wx
 
-if __name__ == '__main__':
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
 from core.globalvar import CheckWxVersion
 from core.utils import _, GuiModuleMain
 from mapdisp.frame import MapFrame

+ 2 - 1
gui/wxpython/vdigit/toolbars.py

@@ -42,7 +42,8 @@ class VDigitToolbar(BaseToolbar):
         BaseToolbar.__init__(self, parent, toolSwitcher)
         self.digit         = None
         self._giface       = giface
-        
+        self.fType         = None     # feature type for simple features editing
+
         self.editingStarted = Signal("VDigitToolbar.editingStarted")
         self.editingStopped = Signal("VDigitToolbar.editingStopped")
         self.editingBgMap = Signal("VDigitToolbar.editingBgMap")

+ 2 - 2
gui/wxpython/vnet/dialogs.py

@@ -69,7 +69,7 @@ class VNETDialog(wx.Dialog):
         """!Dialog for vector network analysis"""
 
         wx.Dialog.__init__(self, parent, id, style=style, title = title, **kwargs)
-        self.SetIcon(wx.Icon(os.path.join(globalvar.ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(globalvar.ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
 
         self.parent  = parent
         self.mapWin = giface.GetMapWindow()
@@ -341,7 +341,7 @@ class VNETDialog(wx.Dialog):
                 self.inputData[dataSel[0]] = dataSel[2](parent = selPanels[dataSel[0]],
                                                         size = (-1, -1), 
                                                         type = 'vector')
-                icon = wx.Image(os.path.join(globalvar.ETCICONDIR, "grass", "layer-vector-add.png"))
+                icon = wx.Image(os.path.join(globalvar.ICONDIR, "grass", "layer-vector-add.png"))
                 icon.Rescale(18, 18)
                 icon = wx.BitmapFromImage(icon) 
                 self.addToTreeBtn = wx.BitmapButton(parent = selPanels[dataSel[0]], 

+ 2 - 2
gui/wxpython/vnet/widgets.py

@@ -410,7 +410,7 @@ class PointsList(wx.ListCtrl,
 
     def getSmallUpArrowImage(self):
         """!Get arrow up symbol for indication of sorting"""
-        stream = open(os.path.join(globalvar.ETCIMGDIR, 'small_up_arrow.png'), 'rb')
+        stream = open(os.path.join(globalvar.IMGDIR, 'small_up_arrow.png'), 'rb')
         try:
             img = wx.ImageFromStream(stream)
         finally:
@@ -419,7 +419,7 @@ class PointsList(wx.ListCtrl,
 
     def getSmallDnArrowImage(self):
         """!Get arrow down symbol for indication of sorting"""
-        stream = open(os.path.join(globalvar.ETCIMGDIR, 'small_down_arrow.png'), 'rb')
+        stream = open(os.path.join(globalvar.IMGDIR, 'small_down_arrow.png'), 'rb')
         try:
             img = wx.ImageFromStream(stream)
         finally:

+ 1 - 6
gui/wxpython/wxgui.py

@@ -22,11 +22,6 @@ import os
 import sys
 import getopt
 
-if __name__ == "__main__":
-    gui_wx_path = os.path.join(os.getenv('GISBASE'), 'etc', 'gui', 'wxpython')
-    if gui_wx_path not in sys.path:
-        sys.path.append(gui_wx_path)
-
 from core import globalvar
 from core.utils import _
 
@@ -60,7 +55,7 @@ class GMApp(wx.App):
             wx.InitAllImageHandlers()
         
         # create splash screen
-        introImagePath = os.path.join(globalvar.ETCIMGDIR, "silesia_splash.png")
+        introImagePath = os.path.join(globalvar.IMGDIR, "silesia_splash.png")
         introImage     = wx.Image(introImagePath, wx.BITMAP_TYPE_PNG)
         introBmp       = introImage.ConvertToBitmap()
         if SC and sys.platform != 'darwin':

+ 2 - 2
gui/wxpython/wxplot/base.py

@@ -24,7 +24,7 @@ try:
 except ImportError, e:
     print >> sys.stderr, e
 
-from core.globalvar    import ETCICONDIR
+from core.globalvar    import ICONDIR
 from core.settings     import UserSettings
 from wxplot.dialogs    import TextDialog, OptDialog
 from core.render       import Map
@@ -73,7 +73,7 @@ class BasePlotFrame(wx.Frame):
         #
         # Icon
         #
-        self.SetIcon(wx.Icon(os.path.join(ETCICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
+        self.SetIcon(wx.Icon(os.path.join(ICONDIR, 'grass.ico'), wx.BITMAP_TYPE_ICO))
                 
         #
         # Add statusbar

+ 6 - 3
gui/xml/Makefile

@@ -2,7 +2,10 @@ MODULE_TOPDIR = ../..
 
 include $(MODULE_TOPDIR)/include/Make/Dir.make
 
-default: $(ETC)/grass-interface.dtd 
+default: $(GUIDIR)/grass-interface.dtd 
 
-$/$(ETC)/grass-interface.dtd : grass-interface.dtd 
-	$(INSTALL_DATA) grass-interface.dtd $(ETC)/grass-interface.dtd 
+$(GUIDIR)/grass-interface.dtd : grass-interface.dtd | $(GUIDIR) 
+	$(INSTALL_DATA) $< $@
+
+$(GUIDIR): %:
+	$(MKDIR) $@