[PATCH] Enable Marble Google Sat lookup when run as a MacOSX app
subsurface at henrik.synth.no
subsurface at henrik.synth.no
Thu May 30 00:08:11 PDT 2013
From: Henrik Brautaset Aronsen <subsurface at henrik.synth.no>
Following Dirk's commit ae2c132, add support for custom google sat
data in a MacOSX app bundle
Signed-off-by: Henrik Brautaset Aronsen <subsurface at henrik.synth.no>
---
Rules.mk | 4 ++++
qt-ui/globe.cpp | 9 +++++++++
2 files changed, 13 insertions(+)
diff --git a/Rules.mk b/Rules.mk
index a3eff13..63bfeeb 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 8662b2f..4b065c1 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);
--
1.8.2.2
More information about the subsurface
mailing list