Skip to content

Commit

Permalink
put sextante config dir under ~/.qgis (fix #6662)
Browse files Browse the repository at this point in the history
also fix scripts lookup
  • Loading branch information
alexbruy committed Nov 12, 2012
1 parent 9bdbd9c commit 15004f4
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 28 deletions.
20 changes: 12 additions & 8 deletions python/plugins/sextante/core/SextanteUtils.py
Expand Up @@ -27,16 +27,21 @@
import time
import sys

from PyQt4.QtCore import *

from qgis.core import *

class SextanteUtils:

NUM_EXPORTED = 1

@staticmethod
def userFolder():
userfolder = os.path.expanduser("~") + os.sep + "sextante"
mkdir(userfolder)
userDir = QFileInfo(QgsApplication.qgisUserDbFilePath()).path() + "/sextante"
if not QDir(userDir).exists():
QDir().mkpath(userDir)

return userfolder
return unicode(userDir)

@staticmethod
def isWindows():
Expand All @@ -48,10 +53,11 @@ def isMac():

@staticmethod
def tempFolder():
tempfolder = os.path.expanduser("~") + os.sep + "sextante" + os.sep + "tempdata"
mkdir(tempfolder)
tempDir = QFileInfo(QgsApplication.qgisUserDbFilePath()).path() + "/sextante/tempdata"
if not QDir(tempDir).exists():
QDir().mkpath(tempDir)

return tempfolder
return unicode(tempDir)

@staticmethod
def setTempOutput(out, alg):
Expand Down Expand Up @@ -85,5 +91,3 @@ def mkdir(newdir):
mkdir(head)
if tail:
os.mkdir(newdir)


4 changes: 2 additions & 2 deletions python/plugins/sextante/core/SextanteVectorWriter.py
Expand Up @@ -44,7 +44,7 @@ def __init__(self, fileName, encoding, fields, geometryType, crs, options=None):
self.isMemory = False
self.memLayer = None
self.writer = None

if encoding is None:
settings = QSettings()
encoding = settings.value("/SextanteQGIS/encoding", "System").toString()
Expand All @@ -68,7 +68,7 @@ def __init__(self, fileName, encoding, fields, geometryType, crs, options=None):
extension = extension[:extension.find(" ")]
OGRCodes[extension] = value

extension = self.fileName[self.fileName.find(".") + 1:]
extension = self.fileName[self.fileName.rfind(".") + 1:]
self.writer = QgsVectorFileWriter(self.fileName, encoding, fields, geometryType, crs, OGRCodes[extension])

def addFeature(self, feature):
Expand Down
7 changes: 0 additions & 7 deletions python/plugins/sextante/modeler/ModelerUtils.py
Expand Up @@ -36,7 +36,6 @@ class ModelerUtils:
def modelsFolder():
folder = SextanteConfig.getSetting(ModelerUtils.MODELS_FOLDER)
if folder == None:
#folder = os.path.join(os.path.dirname(__file__), "models")
folder = SextanteUtils.userFolder() + os.sep + "models"
mkdir(folder)

Expand All @@ -49,12 +48,6 @@ def getAlgorithm(name):
return provider[name]
return None


@staticmethod
def getAlgorithms():
return ModelerUtils.allAlgs





11 changes: 4 additions & 7 deletions python/plugins/sextante/script/ScriptAlgorithmProvider.py
Expand Up @@ -55,28 +55,25 @@ def unload(self):
def getIcon(self):
return QtGui.QIcon(os.path.dirname(__file__) + "/../images/script.png")

def scriptsFolder(self):
return ScriptUtils.scriptsFolder()

def getName(self):
return "script"

def getDescription(self):
return "Scripts"

def _loadAlgorithms(self):
folder = self.scriptsFolder()
def _loadAlgorithms(self):
folder = ScriptUtils.scriptsFolder()
self.loadFromFolder(folder)
folder = os.path.join(os.path.dirname(__file__), "scripts")
self.loadFromFolder(folder)

def loadFromFolder(self, folder):
if not os.path.exists(folder):
return
for descriptionFile in os.listdir(folder):
if descriptionFile.endswith("py"):
try:
fullpath = os.path.join(ScriptUtils.scriptsFolder(), descriptionFile)
fullpath = os.path.join(folder, descriptionFile)
alg = ScriptAlgorithm(fullpath)
if alg.name.strip() != "":
self.algs.append(alg)
Expand Down
4 changes: 0 additions & 4 deletions python/plugins/sextante/script/ScriptUtils.py
Expand Up @@ -37,11 +37,7 @@ class ScriptUtils:
def scriptsFolder():
folder = SextanteConfig.getSetting(ScriptUtils.SCRIPTS_FOLDER)
if folder == None:
#folder = os.path.join(os.path.dirname(__file__), "scripts")
folder = SextanteUtils.userFolder() + os.sep + "scripts"
mkdir(folder)

return folder



0 comments on commit 15004f4

Please sign in to comment.