diff --git a/Configure.mk b/Configure.mk index a08a5541f..fd9467ef0 100644 --- a/Configure.mk +++ b/Configure.mk @@ -83,20 +83,28 @@ endif # Use qmake to find out which Qt version we are building for. QT_VERSION_MAJOR = $(shell $(QMAKE) -query QT_VERSION | cut -d. -f1) ifeq ($(QT_VERSION_MAJOR), 5) - QT_MODULES = Qt5Widgets Qt5Svg - QT_CORE = Qt5Core - QTBINDIR = $(shell $(QMAKE) -query QT_HOST_BINS) - # Tool paths are not stored in .pc files in Qt 5.0 - MOC = $(QTBINDIR)/moc - UIC = $(QTBINDIR)/uic - RCC = $(QTBINDIR)/rcc -else +# QT_MODULES = Qt5Widgets Qt5Svg +# QT_CORE = Qt5Core +# QTBINDIR = $(shell $(QMAKE) -query QT_HOST_BINS) +# # Tool paths are not stored in .pc files in Qt 5.0 +# MOC = $(QTBINDIR)/moc +# UIC = $(QTBINDIR)/uic +# RCC = $(QTBINDIR)/rcc +# if qmake is qt5, try to get the qt4 one. + QMAKE = { qmake-qt4 -v >/dev/null 2>&1 && echo qmake-qt4; } +#else +endif + +ifeq ($(strip $(QMAKE)),) +$(error Could not find qmake or qmake-qt4 in $$PATH for the Qt4 version they failed) +endif + QT_MODULES = QtGui QtSvg QT_CORE = QtCore MOC = $(shell $(PKGCONFIG) --variable=moc_location QtCore) UIC = $(shell $(PKGCONFIG) --variable=uic_location QtGui) RCC = $(shell $(PKGCONFIG) --variable=rcc_location QtGui) -endif +#endif # we need GLIB2CFLAGS for gettext QTCXXFLAGS = $(shell $(PKGCONFIG) --cflags $(QT_MODULES)) $(GLIB2CFLAGS) diff --git a/Makefile b/Makefile index add90b308..0bd3e5c27 100644 --- a/Makefile +++ b/Makefile @@ -40,6 +40,7 @@ HEADERS = \ qt-ui/starwidget.h \ qt-ui/modeldelegates.h \ qt-ui/profilegraphics.h \ + qt-ui/globe.h SOURCES = \ @@ -70,6 +71,7 @@ SOURCES = \ qt-ui/starwidget.cpp \ qt-ui/modeldelegates.cpp \ qt-ui/profilegraphics.cpp \ + qt-ui/globe.cpp \ $(RESFILE) @@ -112,7 +114,7 @@ else endif LIBS = $(LIBQT) $(LIBXML2) $(LIBXSLT) $(LIBSQLITE3) $(LIBGCONF2) $(LIBDIVECOMPUTER) \ - $(EXTRALIBS) $(LIBZIP) -lpthread -lm $(LIBOSMGPSMAP) $(LIBSOUP) $(LIBWINSOCK) + $(EXTRALIBS) $(LIBZIP) -lpthread -lm $(LIBOSMGPSMAP) $(LIBSOUP) $(LIBWINSOCK) -lmarblewidget MSGLANGS=$(notdir $(wildcard po/*.po)) diff --git a/qt-ui/globe.cpp b/qt-ui/globe.cpp new file mode 100644 index 000000000..770e51b02 --- /dev/null +++ b/qt-ui/globe.cpp @@ -0,0 +1,25 @@ +#include "globe.h" +#include + +using namespace Marble; + +GlobeGPS::GlobeGPS(QWidget* parent) : MarbleWidget(parent) +{ + setMapThemeId("earth/bluemarble/bluemarble.dgml"); + setProjection( Marble::Spherical ); + + // Enable the cloud cover and enable the country borders + setShowClouds( true ); + setShowBorders( true ); + + // Hide the FloatItems: Compass and StatusBar + setShowOverviewMap(false); + setShowScaleBar(false); + + Q_FOREACH( AbstractFloatItem * floatItem, floatItems() ){ + if ( floatItem && floatItem->nameId() == "compass" ) { + floatItem->setPosition( QPoint( 10, 10 ) ); + floatItem->setContentSize( QSize( 50, 50 ) ); + } + } +} diff --git a/qt-ui/globe.h b/qt-ui/globe.h new file mode 100644 index 000000000..bdf40fb1a --- /dev/null +++ b/qt-ui/globe.h @@ -0,0 +1,13 @@ +#ifndef GLOBE_H +#define GLOBE_H + +#include + +class GlobeGPS : public Marble::MarbleWidget{ + Q_OBJECT +public: + GlobeGPS(QWidget *parent); + +}; + +#endif diff --git a/qt-ui/mainwindow.ui b/qt-ui/mainwindow.ui index b2969ac61..ab0cd5f49 100644 --- a/qt-ui/mainwindow.ui +++ b/qt-ui/mainwindow.ui @@ -14,8 +14,8 @@ MainWindow - - + + Qt::Vertical @@ -27,9 +27,13 @@ - - - QTreeView { + + + Qt::Horizontal + + + + QTreeView { show-decoration-selected: 1; } @@ -58,25 +62,27 @@ } - - - true - - - QAbstractItemView::ExtendedSelection - - - true - - - true - - - true - - - true - + + + true + + + QAbstractItemView::ExtendedSelection + + + true + + + true + + + true + + + true + + + @@ -88,7 +94,7 @@ 0 0 763 - 20 + 25 @@ -365,6 +371,12 @@ QGraphicsView
profilegraphics.h
+ + GlobeGPS + QWidget +
globe.h
+ 1 +