From 5f535088cc660824522d4cc014b002f2d03ff98c Mon Sep 17 00:00:00 2001 From: Kiooeht Date: Sun, 10 Jul 2011 03:05:47 -0700 Subject: [PATCH] Load quirks from both ./ and data dir on Mac --- TODO.mkdn | 3 --- pyquirks.py | 7 +++++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/TODO.mkdn b/TODO.mkdn index 054e5ea..7cf32c2 100644 --- a/TODO.mkdn +++ b/TODO.mkdn @@ -47,7 +47,4 @@ Mac Bugs * SS: in the one-on-one pester it resizes with the window * SS: but the memo one doesn't resize * SS: and the arrows next to the time thing overlap the CLOSE button -* Lex: Load quirks from both ./quirks and ~/Library/Application - Support/Pesterchum/quirks to allow mac users to add quirks without - losing built in ones. * Lex: Do the same with themes. diff --git a/pyquirks.py b/pyquirks.py index c056d3a..d0a5cd2 100644 --- a/pyquirks.py +++ b/pyquirks.py @@ -3,6 +3,7 @@ from PyQt4 import QtGui, QtCore class PythonQuirks(object): def __init__(self): + _datadir = os.path.join(str(QtGui.QDesktopServices.storageLocation(QtGui.QDesktopServices.DataLocation)),"Pesterchum/") self.home = os.getcwd() self.quirks = {} self.last = {} @@ -17,6 +18,12 @@ class PythonQuirks(object): for fn in os.listdir(os.path.join(self.home, 'quirks')): if fn.endswith('.py') and not fn.startswith('_'): filenames.append(os.path.join(self.home, 'quirks', fn)) + if sys.platform == "darwin": + if not os.path.exists(os.path.join(_datadir, 'quirks')): + os.mkdir(os.path.join(_datadir, 'quirks')) + for fn in os.listdir(os.path.join(_datadir, 'quirks')): + if fn.endswith('.py') and not fn.startswith('_'): + filenames.append(os.path.join(_datadir, 'quirks', fn)) modules = [] for filename in filenames: