This commit is contained in:
Andreas Preikschat 2013-07-07 00:20:17 +02:00
commit dec7cc64b3
3 changed files with 13 additions and 17 deletions

View File

@ -107,7 +107,7 @@ class Renderer(object):
del self._theme_dimensions[old_theme_name] del self._theme_dimensions[old_theme_name]
if theme_name in self._theme_dimensions: if theme_name in self._theme_dimensions:
del self._theme_dimensions[theme_name] del self._theme_dimensions[theme_name]
if not only_delete: if not only_delete and theme_name:
self._set_theme(theme_name) self._set_theme(theme_name)
def _set_theme(self, theme_name): def _set_theme(self, theme_name):

View File

@ -53,27 +53,25 @@ log = logging.getLogger(__name__)
class AppLocation(object): class AppLocation(object):
""" """
The :class:`AppLocation` class is a static class which retrieves a The :class:`AppLocation` class is a static class which retrieves a directory based on the directory type.
directory based on the directory type.
""" """
AppDir = 1 AppDir = 1
ConfigDir = 2 DataDir = 2
DataDir = 3 PluginsDir = 3
PluginsDir = 4 VersionDir = 4
VersionDir = 5 CacheDir = 5
CacheDir = 6 LanguageDir = 6
LanguageDir = 7
# Base path where data/config/cache dir is located # Base path where data/config/cache dir is located
BaseDir = None BaseDir = None
@staticmethod @staticmethod
def get_directory(dir_type=1): def get_directory(dir_type=AppDir):
""" """
Return the appropriate directory according to the directory type. Return the appropriate directory according to the directory type.
``dir_type`` ``dir_type``
The directory type you want, for instance the data directory. The directory type you want, for instance the data directory. Default *AppLocation.AppDir*
""" """
if dir_type == AppLocation.AppDir: if dir_type == AppLocation.AppDir:
return _get_frozen_path(os.path.abspath(os.path.split(sys.argv[0])[0]), os.path.split(openlp.__file__)[0]) return _get_frozen_path(os.path.abspath(os.path.split(sys.argv[0])[0]), os.path.split(openlp.__file__)[0])
@ -160,16 +158,13 @@ def _get_os_dir_path(dir_type):
return os.path.join(unicode(os.getenv(u'HOME')), u'Library', u'Application Support', u'openlp') return os.path.join(unicode(os.getenv(u'HOME')), u'Library', u'Application Support', u'openlp')
else: else:
if dir_type == AppLocation.LanguageDir: if dir_type == AppLocation.LanguageDir:
prefixes = [u'/usr/local', u'/usr'] for prefix in [u'/usr/local', u'/usr']:
for prefix in prefixes:
directory = os.path.join(prefix, u'share', u'openlp') directory = os.path.join(prefix, u'share', u'openlp')
if os.path.exists(directory): if os.path.exists(directory):
return directory return directory
return os.path.join(u'/usr', u'share', u'openlp') return os.path.join(u'/usr', u'share', u'openlp')
if XDG_BASE_AVAILABLE: if XDG_BASE_AVAILABLE:
if dir_type == AppLocation.ConfigDir: if dir_type == AppLocation.DataDir:
return os.path.join(unicode(BaseDirectory.xdg_config_home), u'openlp')
elif dir_type == AppLocation.DataDir:
return os.path.join(unicode(BaseDirectory.xdg_data_home), u'openlp') return os.path.join(unicode(BaseDirectory.xdg_data_home), u'openlp')
elif dir_type == AppLocation.CacheDir: elif dir_type == AppLocation.CacheDir:
return os.path.join(unicode(BaseDirectory.xdg_cache_home), u'openlp') return os.path.join(unicode(BaseDirectory.xdg_cache_home), u'openlp')

View File

@ -7,7 +7,7 @@ from unittest import TestCase
from mock import patch, MagicMock from mock import patch, MagicMock
from PyQt4 import QtGui from PyQt4 import QtCore, QtGui
from openlp.core.lib import Registry, ServiceItem, Settings from openlp.core.lib import Registry, ServiceItem, Settings
@ -32,6 +32,7 @@ class TestMediaItem(TestCase):
fd, self.ini_file = mkstemp(u'.ini') fd, self.ini_file = mkstemp(u'.ini')
Settings().set_filename(self.ini_file) Settings().set_filename(self.ini_file)
self.application = QtGui.QApplication.instance() self.application = QtGui.QApplication.instance()
QtCore.QLocale.setDefault(QtCore.QLocale('en_GB'))
def tearDown(self): def tearDown(self):
""" """