aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Henrik Brautaset Aronsen <subsurface@henrik.synth.no>2013-05-30 09:08:11 +0200
committerGravatar Dirk Hohndel <dirk@hohndel.org>2013-05-30 18:05:02 +0900
commit56eaea6993f8a0ae72f7073a5f024007cdb33cc1 (patch)
treea18c725915aecb468afe6fa13713ff879c7f7516
parentf32e86eb32ee3697f255d01a61f6aa2e1cff5a8b (diff)
downloadsubsurface-56eaea6993f8a0ae72f7073a5f024007cdb33cc1.tar.gz
Enable Marble Google Sat lookup when run as a MacOSX app
Following Dirk's commit ae2c132, add support for custom google sat data in a MacOSX app bundle Signed-off-by: Henrik Brautaset Aronsen <subsurface@henrik.synth.no> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r--Rules.mk4
-rw-r--r--qt-ui/globe.cpp9
2 files changed, 13 insertions, 0 deletions
diff --git a/Rules.mk b/Rules.mk
index a3eff13cd..63bfeebf3 100644
--- a/Rules.mk
+++ b/Rules.mk
@@ -89,6 +89,10 @@ install-macosx: all
$(INSTALL) $(MACOSXFILES)/Info.plist $(MACOSXINSTALL)/Contents/
$(INSTALL) $(ICONFILE) $(MACOSXINSTALL)/Contents/Resources/
$(INSTALL) $(MACOSXFILES)/$(CAPITALIZED_NAME).icns $(MACOSXINSTALL)/Contents/Resources/
+ @-if test ! -z "$(MARBLEDIR)"; then \
+ $(INSTALL) -d -m 755 $(MACOSXINSTALL)/Contents/Resources/share/$(MARBLEDIR); \
+ $(TAR) cf - $(MARBLEDIR) | ( cd $(MACOSXINSTALL)/Contents/Resources/share; $(TAR) xf - ); \
+ fi
for LOC in $(wildcard share/locale/*/LC_MESSAGES); do \
$(INSTALL) -d -m 755 $(MACOSXINSTALL)/Contents/Resources/$$LOC; \
$(INSTALL) $$LOC/$(NAME).mo $(MACOSXINSTALL)/Contents/Resources/$$LOC/$(NAME).mo; \
diff --git a/qt-ui/globe.cpp b/qt-ui/globe.cpp
index 8662b2fcb..4b065c12d 100644
--- a/qt-ui/globe.cpp
+++ b/qt-ui/globe.cpp
@@ -49,6 +49,15 @@ GlobeGPS::GlobeGPS(QWidget* parent) : MarbleWidget(parent), loadedDives(0)
foundGoogleMap = true;
}
}
+ if (!foundGoogleMap) {
+ // then check if we're running as an app on MacOSX
+ execdir = QCoreApplication::applicationDirPath();
+ marble = QDir(execdir.append("/../Resources/share/marbledata"));
+ if (marble.exists()) {
+ MarbleDirs::setMarbleDataPath(marble.absolutePath());
+ foundGoogleMap = true;
+ }
+ }
messageWidget = new KMessageWidget(this);
messageWidget->setCloseButtonVisible(false);
messageWidget->setHidden(true);