File indexing completed on 2024-04-14 03:47:50
0001 /* 0002 SPDX-FileCopyrightText: 2004-2007 Torsten Rahn <tackat@kde.org> 0003 SPDX-FileCopyrightText: 2007 Inge Wallin <ingwa@kde.org> 0004 0005 SPDX-License-Identifier: LGPL-2.0-or-later 0006 */ 0007 0008 0009 #include "MarbleAboutDialog.h" 0010 #include "ui_MarbleAboutDialog.h" 0011 0012 #include <QFile> 0013 #include <QTextFrame> 0014 #include <QTextStream> 0015 #include <QPixmap> 0016 0017 #include "MarbleGlobal.h" 0018 #include "MarbleDirs.h" 0019 0020 namespace Marble 0021 { 0022 0023 class MarbleAboutDialogPrivate 0024 { 0025 public: 0026 MarbleAboutDialogPrivate(); 0027 0028 void loadPageContents( int idx ); 0029 0030 Ui::MarbleAboutDialog uiWidget; 0031 0032 bool authorsLoaded; 0033 bool dataLoaded; 0034 bool licenseLoaded; 0035 }; 0036 0037 MarbleAboutDialogPrivate::MarbleAboutDialogPrivate() : 0038 authorsLoaded( false ), 0039 dataLoaded( false ), 0040 licenseLoaded( false ) 0041 { 0042 } 0043 0044 MarbleAboutDialog::MarbleAboutDialog(QWidget *parent) 0045 : QDialog( parent ), 0046 d( new MarbleAboutDialogPrivate ) 0047 { 0048 d->uiWidget.setupUi( this ); 0049 0050 if( MarbleGlobal::getInstance()->profiles() & MarbleGlobal::SmallScreen ) { 0051 d->uiWidget.m_pMarbleTitleLabel->hide(); 0052 d->uiWidget.m_pMarbleVersionLabel->hide(); 0053 d->uiWidget.m_pMarbleLogoLabel->hide(); 0054 } 0055 else { 0056 d->uiWidget.m_pMarbleLogoLabel->setPixmap( 0057 QPixmap(MarbleDirs::path(QStringLiteral("svg/marble-logo-72dpi.png")))); 0058 } 0059 0060 QString const applicationTitle = QObject::tr( "Marble Virtual Globe" ); 0061 setApplicationTitle( applicationTitle ); 0062 0063 connect( d->uiWidget.tabWidget, SIGNAL(currentChanged(int)), 0064 this, SLOT(loadPageContents(int)) ); 0065 } 0066 0067 MarbleAboutDialog::~MarbleAboutDialog() 0068 { 0069 delete d; 0070 } 0071 0072 void MarbleAboutDialogPrivate::loadPageContents( int idx ) 0073 { 0074 if ( idx == 1 && !authorsLoaded ) 0075 { 0076 authorsLoaded = true; 0077 QTextBrowser *const browser = uiWidget.m_pMarbleAuthorsBrowser; 0078 browser->setHtml( QObject::tr("<b>Active Development Team of Marble</b>")+ 0079 QObject::tr("<p>Torsten Rahn <a href=\"mailto:rahn@kde.org\">rahn@kde.org</a><br />" 0080 "<i>Developer and Original Author</i></p>")+ 0081 QObject::tr("<p>Dennis Nienhüser <a href=\"mailto:nienhueser@kde.org\">nienhueser@kde.org</a><br />" 0082 "<i>Routing, Navigation, Mobile</i></p>")+ 0083 QObject::tr("<p>Bernhard Beschow <a href=\"mailto:bbeschow@cs.tu-berlin.de\">bbeschow@cs.tu-berlin.de</a><br />" 0084 "<i>WMS Support, Mobile, Performance</i></p>")+ 0085 QObject::tr("<p>Friedrich W. H. Kossebau, <a href=\"mailto:kossebau@kde.org\">kossebau@kde.org</a><br />" 0086 "<i>Plasma Integration, Bugfixes</i></p>")+ 0087 QObject::tr("<p>Thibaut Gridel <a href=\"mailto:tgridel@free.fr\">tgridel@free.fr</a><br />" 0088 "<i>Geodata</i></p>")+ 0089 QObject::tr("<p>Jens-Michael Hoffmann <a href=\"mailto:jensmh@gmx.de\">jensmh@gmx.de</a><br />" 0090 "<i>OpenStreetMap Support, Download Management</i></p>")+ 0091 QObject::tr("<p>Florian Eßer <a href=\"mailto:f.esser@rwth-aachen.de\">f.esser@rwth-aachen.de</a><br />" 0092 "<i>Elevation Profile</i></p>")+ 0093 QObject::tr("<p>Wes Hardaker <a href=\"mailto:marble@hardakers.net\">marble@hardakers.net</a><br />" 0094 "<i>Amateur Radio Support</i></p>")+ 0095 QObject::tr("<p>Bastian Holst, <a href=\"mailto:bastianholst@gmx.de\">bastianholst@gmx.de</a><br />" 0096 "<i>Online Services Support</i></p>")+ 0097 QObject::tr("<p>Guillaume Martres, <a href=\"mailto:smarter@ubuntu.com\">smarter@ubuntu.com</a><br />" 0098 "<i>Satellites</i></p>")+ 0099 QObject::tr("<p>René Küttner, <a href=\"mailto:rene@bitkanal.net\">rene@bitkanal.net</a><br />" 0100 "<i>Planetary Satellites</i></p>")+ 0101 QObject::tr("<p>Niko Sams <a href=\"mailto:niko.sams@gmail.com\">niko.sams@gmail.com</a><br />" 0102 "<i>Routing, Elevation Profile</i></p>")+ 0103 QObject::tr("<p>Patrick Spendrin <a href=\"pspendrin@gmail.com\">pspendrin@gmail.com</a><br />" 0104 "<i>KML and Windows Support</i></p>")+ 0105 QObject::tr("<p>Eckhart Wörner <a href=\"mailto:kde@ewsoftware.de\">kde@ewsoftware.de</a><br />" 0106 "<i>Bugfixes</i></p>")+ 0107 QObject::tr("<b>Developers</b>")+ 0108 QObject::tr("<p>Médéric Boquien <a href=\"mailto:mboquien@free.fr\">mboquien@free.fr</a><br />" 0109 "<i>Astronomical Observatories</i></p>")+ 0110 QObject::tr("<p>Harshit Jain <a href=\"mailto:sonu.itbhu@googlemail.com\">sonu.itbhu@googlemail.com</a><br />" 0111 "<i>Planet Filter, Bugfixes</i></p>")+ 0112 QObject::tr("<p>Andrew Manson <a href=\"mailto:g.real.ate@gmail.com\">g.real.ate@gmail.com</a><br />" 0113 "<i>Proxy Support</i></p>")+ 0114 QObject::tr("<p>Pino Toscano <a href=\"mailto:pino@kde.org\">pino@kde.org</a><br />" 0115 "<i>Network plugins</i></p>")+ 0116 QObject::tr("<p>Henry de Valence <a href=\"mailto:hdevalence@gmail.com\">hdevalence@gmail.com</a><br />" 0117 "<i>Marble Runners, World-Clock Plasmoid</i></p>")+ 0118 QObject::tr("<p>Magnus Valle<br /><i>Historical Maps</i></p>")+ 0119 QObject::tr("<p>Inge Wallin <a href=\"mailto:inge@lysator.liu.se\">inge@lysator.liu.se</a><br />" 0120 "<i>Original Co-Maintainer</i></p>")+ 0121 QObject::tr("<p><i>Development & Patches:</i> Simon Schmeisser, Claudiu Covaci, David Roberts, Nikolas Zimmermann, Jan Becker, " 0122 "Stefan Asserhäll, Laurent Montel, Prashanth Udupa, Anne-Marie Mahfouf, Josef Spillner, Frerich Raabe, " 0123 "Frederik Gladhorn, Fredrik Höglund, Albert Astals Cid, Thomas Zander, Joseph Wenninger, Kris Thomsen, " 0124 "Daniel Molkentin </p>")+ 0125 QObject::tr("<p><i>Platforms & Distributions:</i> " 0126 "Tim Sutton, Christian Ehrlicher, Ralf Habacker, Steffen Joeris, Marcus Czeslinski, Marcus D. Hanwell, Chitlesh Goorah, Sebastian Wiedenroth, Christophe Leske</p>")+ 0127 QObject::tr("<p><i>Artwork:</i> Nuno Pinheiro, Torsten Rahn</p>")+ 0128 QObject::tr("<b>Join us</b>")+ 0129 QObject::tr("<p>You can reach the developers of the Marble Project at <a href=\"mailto:marble-devel@kde.org\">marble-devel@kde.org</a></p>")+ 0130 QObject::tr("<b>ESA - Summer of Code in Space</b>")+ 0131 QObject::tr("<p> The Marble Team would like to thank its members who participated " 0132 "in ESA SoCiS for their successful work on Marble:</p>")+ 0133 QObject::tr("<p><b>2016</b></p>")+ 0134 QObject::tr("<p>Judit Bartha, <a href=\"mailto:bartha.m.judit@gmail.com\"> bartha.m.judit@gmail.com </a><br />" 0135 "<i>Project: Improving Marble's Satellite maps using Sentinel-2 mission data</i></p>")+ 0136 QObject::tr("<p><b>2015</b></p>")+ 0137 QObject::tr("<p>Ana Badescu, <a href=\"mailto:anabee.emacs@gmail.com\"> anabee.emacs@gmail.com </a><br />" 0138 "<i>Project: Integrate data provided by the Sentinel missions</i></p>")+ 0139 QObject::tr("<p><b>2014</b></p>")+ 0140 QObject::tr("<p>Gábor Péterffy, <a href=\"mailto:peterffy95@gmail.com\"> peterffy95@gmail.com </a><br />" 0141 "<i>Project: Panoramic Picture Support for celestial bodies in Marble </i></p>")+ 0142 QObject::tr("<p><b>2013</b></p>")+ 0143 QObject::tr("<p>Marek Hakala, <a href=\"mailto:hakala.marek@gmail.com\">hakala.marek@gmail.com</a><br />" 0144 "<i>Project: Displaying Solar / Lunar Eclipses in Marble </i></p>")+ 0145 QObject::tr("<p><b>2012</b></p>")+ 0146 QObject::tr("<p>René Küttner, <a href=\"mailto:rene@bitkanal.net\">rene@bitkanal.net</a><br />" 0147 "<i>Project: Visualization of planetary satellites</i></p>")+ 0148 QObject::tr("<p><b>2011</b></p>")+ 0149 QObject::tr("<p>Guillaume Martres, <a href=\"mailto:smarter@ubuntu.com\">smarter@ubuntu.com</a><br />" 0150 "<i>Project: Visualization of Satellite Orbits</i></p>")+ 0151 0152 QObject::tr("<b>Google Code-in</b>")+ 0153 QObject::tr("<p> The Marble Team would like to thank its members who participated " 0154 "in the Google Code-in for their successful work on Marble:</p>")+ 0155 QObject::tr("<p><b>2014</b></p>")+ 0156 QObject::tr( "Ilya Kowalewski <a href=\"mailto:illya.kovalevskyy@gmail.com\">illya.kovalevskyy@gmail.com</a><br />" ) + 0157 QObject::tr( "Mikhail Ivchenko <a href=\"mailto:ematirov@gmail.com\">ematirov@gmail.com</a><br />" ) + 0158 QObject::tr( "Sergey Popov <a href=\"mailto:sergobot256@gmail.com\">sergobot256@gmail.com</a><br />" ) + 0159 QObject::tr( "Daniel Pastushchak <a href=\"mailto:danikpastushchak90@gmail.com\">danikpastushchak90@gmail.com</a><br />" ) + 0160 0161 QObject::tr("<p><b>2013</b></p>")+ 0162 QObject::tr( "Ilya Kowalewski <a href=\"mailto:illya.kovalevskyy@gmail.com\">illya.kovalevskyy@gmail.com</a><br />" ) + 0163 QObject::tr( "Mikhail Ivchenko <a href=\"mailto:ematirov@gmail.com\">ematirov@gmail.com</a><br />" ) + 0164 QObject::tr( "Levente Kurusa <a href=\"mailto:levex@linux.com\">levex@linux.com</a><br />" ) + 0165 QObject::tr( "Benjamin Kaiser <a href=\"mailto:benjaminjkaiser@gmail.com\">benjaminjkaiser@gmail.com</a><br />" ) + 0166 QObject::tr( "<p><b>2012</b></p>" ) + 0167 QObject::tr( "Ilya Kowalewski <a href=\"mailto:illya.kovalevskyy@gmail.com\">illya.kovalevskyy@gmail.com</a><br />" ) + 0168 QObject::tr( "Mohammed Nafees <a href=\"mailto:nafees.technocool@gmail.com\">nafees.technocool@gmail.com</a></p><br />" ) + 0169 QObject::tr( "Mayank Madan <a href=\"mailto:maddiemadan@gmail.com\">maddiemadan@gmail.com</a><br />" ) + 0170 QObject::tr( "Timothy Lanzi <a href=\"mailto:trlanzi@gmail.com\">trlanzi@gmail.com</a></p>" ) + 0171 QObject::tr( "<p><b>2011</b></p>" ) + 0172 QObject::tr( "<p>Utku Aydın <a href=\"mailto:utkuaydin34@gmail.com\">utkuaydin34@gmail.com</a><br />" ) + 0173 QObject::tr( "Daniel Marth <a href=\"mailto:danielmarth@gmx.at\">danielmarth@gmx.at</a><br />" ) + 0174 QObject::tr( "Cezar Mocan <a href=\"mailto:mocancezar@gmail.com\">mocancezar@gmail.com</a><br />" ) + 0175 QObject::tr( "Furkan Üzümcü <a href=\"mailto:furkanuzumcu@gmail.com\">furkanuzumcu@gmail.com</a></p>" ) + 0176 0177 QObject::tr("<b>Google Summer of Code</b>")+ 0178 QObject::tr("<p> The Marble Team would like to thank its members who participated " 0179 "in the Google Summer of Code for their successful work on Marble:</p>")+ 0180 QObject::tr( "<p><b>2017</b></p>" ) + 0181 QObject::tr( "<p>Mohammed Nafees <a href=\"mailto:nafees.technocool@gmail.com\">nafees.technocool@gmail.com</a><br />" 0182 "<i>Project: Marble Indoor Maps</i></p>" ) + 0183 QObject::tr( "<p>Judit Bartha <a href=\"mailto:bartha.m.judit@gmail.com\">bartha.m.judit@gmail.com</a><br />" 0184 "<i>Project: Marble Material Maps</i></p>" ) + 0185 QObject::tr( "<p><b>2016</b></p>" ) + 0186 QObject::tr( "<p>Dávid Kolozsvári <a href=\"freedawson@gmail.com\">freedawson@gmail.com</a><br />" 0187 "<i>Project: Fluent graphics across every tile level in Marble's OSM vector map</i></p>" ) + 0188 QObject::tr( "<p>Akshat Tandon <a href=\"akshat.tandon@research.iiit.ac.in\">akshat.tandon@research.iiit.ac.in</a><br />" 0189 "<i>Project: Support for medium and low tile levels in the OSM Vector Map of Marble</i></p>" ) + 0190 QObject::tr( "<p><b>2015</b></p>" ) + 0191 QObject::tr( "<p>Dávid Kolozsvári <a href=\"freedawson@gmail.com\">freedawson@gmail.com</a><br />" 0192 "<i>Project: Improve Marble's OSM vector rendering support</i></p>" ) + 0193 QObject::tr( "<p>Gábor Péterffy <a href=\"gabor.peterffy@gmail.com\">gabor.peterffy@gmail.com</a><br />" 0194 "<i>Project: Porting Marble to Android platform</i></p>" ) + 0195 QObject::tr( "<p>Marius Valeriu Stanciu <a href=\"stanciumarius94@gmail.com\">stanciumarius94@gmail.com</a><br />" 0196 "<i>Project: Offering OpenStreetMap support and improving Edit Mode for Marble</i></p>" ) + 0197 QObject::tr( "<p><b>2014</b></p>" ) + 0198 QObject::tr( "<p>Abhinav Gangwar <a href=\"abhgang@gmail.com\">abhgang@gmail.com</a><br />" 0199 "<i>Project: Marble Game</i></p>" ) + 0200 QObject::tr( "<p>Calin Cruceru <a href=\"crucerucalincristian@gmail.com\">crucerucalincristian@gmail.com</a><br />" 0201 "<i>Project: Editing Mode for Polygons</i></p>" ) + 0202 QObject::tr( "<p>Sanjiban Bairagya <a href=\"sanjiban22393@gmail.com\">sanjiban22393@gmail.com</a><br />" 0203 "<i>Project: Interactive Tours </i></p>" ) + 0204 QObject::tr( "<p><b>2013</b></p>" ) + 0205 QObject::tr( "<p>Adrian Draghici <a href=\"draghici.adrian.b@gmail.com\">draghici.adrian.b@gmail.com</a><br />" 0206 "<i>Project: Marble KML Map Editor</i></p>" ) + 0207 QObject::tr( "<p>Andrei Duma <a href=\"andrei.duma.dorian@gmail.com\">andrei.duma.dorian@gmail.com</a><br />" 0208 "<i>Project: Marble meets ownCloud</i></p>" ) + 0209 QObject::tr( "<p>Utku Aydın <a href=\"utkuaydin34@gmail.com\">utkuaydin34@gmail.com</a><br />" 0210 "<i>Project: ownCloud storage and synchronization for Marble </i></p>" ) + 0211 QObject::tr( "<p>René Küttner <a href=\"rene@bitkanal.net\">rene@bitkanal.net</a><br />" 0212 "<i>Project: OpenGL SceneGraph</i></p>" ) + 0213 QObject::tr( "<p><b>2012</b></p>" ) + 0214 QObject::tr( "<p>Ander Pijoan <a href=\"ander.pijoan@deusto.es\">ander.pijoan@deusto.es</a><br />" 0215 "<i>Project: OpenStreetMap Vector Rendering</i></p>" ) + 0216 QObject::tr( "<p>Cezar Mocan <a href=\"mocancezar@gmail.com\">mocancezar@gmail.com</a><br />" 0217 "<i>Project: Natural Earth Vector Map</i></p>" ) + 0218 QObject::tr( "<p>Bernhard Beschow <a href=\"bbeschow@cs.tu-berlin.de\">bbeschow@cs.tu-berlin.de</a><br />" 0219 "<i>Project: OpenGL Mode for Marble</i></p>" ) + 0220 QObject::tr( "<p><b>2011</b></p>" ) + 0221 QObject::tr( "<p>Konstantin Oblaukhov <a href=\"oblaukhov.konstantin@gmail.com\">oblaukhov.konstantin@gmail.com</a><br />" 0222 "<i>Project: OpenStreetMap Vector Rendering</i></p>" ) + 0223 QObject::tr( "<p>Daniel Marth <a href=\"danielmarth@gmx.at\">danielmarth@gmx.at</a><br />" 0224 "<i>Project: Marble Touch on MeeGo</i></p>" ) + 0225 QObject::tr( "<p><b>2010</b></p>" ) + 0226 QObject::tr( "<p>Gaurav Gupta <a href=\"mailto:1989.gaurav@gmail.com\">1989.gaurav@gmail.com</a><br />" 0227 "<i>Project: Bookmarks</i></p>" ) + 0228 QObject::tr( "<p>Harshit Jain <a href=\"mailto:hjain.itbhu@gmail.com\">hjain.itbhu@gmail.com</a><br />" 0229 "<i>Project: Time Support</i></p>" ) + 0230 QObject::tr( "<p>Siddharth Srivastava <a href=\"mailto:akssps011@gmail.com\">akssps011@gmail.com</a><br />" 0231 "<i>Project: Turn-by-turn Navigation</i></p>" ) + 0232 QObject::tr( "<p><b>2009</b></p>" ) + 0233 QObject::tr( "<p>Andrew Manson <a href=\"mailto:g.real.ate@gmail.com\">g.real.ate@gmail.com</a><br />" 0234 "<i>Project: OSM Annotation</i></p>" ) + 0235 QObject::tr( "<p>Bastian Holst <a href=\"mailto:bastianholst@gmx.de\">bastianholst@gmx.de</a><br />" 0236 "<i>Project: Online Services</i></p>" ) + 0237 QObject::tr("<p><b>2008</b></p>")+ 0238 QObject::tr("<p>Patrick Spendrin <a href=\"pspendrin@gmail.com\">pspendrin@gmail.com</a><br />" 0239 "<i>Project: Vector Tiles for Marble</i></p>")+ 0240 QObject::tr("<p>Shashank Singh <a href=\"mailto:shashank.personal@gmail.com\">shashank.personal@gmail.com</a><br />" 0241 "<i>Project: Panoramio / Wikipedia -photo support for Marble</i></p>")+ 0242 QObject::tr("<b>2007</b>")+ 0243 QObject::tr("<p>Carlos Licea <a href=\"mailto:carlos.licea@kdemail.net\">carlos.licea@kdemail.net</a><br />" 0244 "<i>Project: Equirectangular Projection (\"Flat Map\")</i></p>")+ 0245 QObject::tr("<p>Andrew Manson <a href=\"mailto:g.real.ate@gmail.com\">g.real.ate@gmail.com</a><br />" 0246 "<i>Project: GPS Support for Marble</i></p>")+ 0247 QObject::tr("<p>Murad Tagirov <a href=\"mailto:tmurad@gmail.com\">tmurad@gmail.com</a><br />" 0248 "<i>Project: KML Support for Marble</i></p>")+ 0249 QObject::tr("<p>... and of course we'd like to thank the people at Google Inc. for making these projects possible.</p>")+ 0250 QObject::tr("<b>Credits</b>")+ 0251 QObject::tr("<p><i>Various Suggestions & Testing:</i> Stefan Jordan, Robert Scott, Lubos Petrovic, Benoit Sigoure, " 0252 "Martin Konold, Matthias Welwarsky, Rainer Endres, Luis Silva, Ralf Gesellensetter, Tim Alder</p>")+ 0253 QObject::tr("<p> We'd especially like to thank John Layt who provided an important source of inspiration " 0254 "by creating Marble's predecessor \"Kartographer\".</p>")); 0255 QTextFrameFormat format = browser->document()->rootFrame()->frameFormat(); 0256 format.setMargin(12); 0257 browser->document()->rootFrame()->setFrameFormat( format ); 0258 } 0259 0260 if ( idx == 2 && !dataLoaded ) 0261 { 0262 dataLoaded = true; 0263 QTextBrowser *const browser = uiWidget.m_pMarbleDataBrowser; 0264 browser->setHtml( QObject::tr("<b>Maps</b>")+ 0265 QObject::tr("<p><i>Blue Marble Next Generation (500 m / pixel)</i><br />" 0266 "NASA Goddard Space Flight Center Earth Observatory " 0267 "<a href=\"http://earthobservatory.nasa.gov/Newsroom/BlueMarble/\">" 0268 "http://earthobservatory.nasa.gov/Newsroom/BlueMarble/</a></p>")+ 0269 QObject::tr("<p><i>Earth's City Lights</i><br />" 0270 "Data courtesy Marc Imhoff of NASA GSFC and Christopher Elvidge of NOAA NGDC. " 0271 "Image by Craig Mayhew and Robert Simmon, NASA GSFC.</p>")+ 0272 QObject::tr("<p><i>Shuttle Radar Topography Mission (SRTM30, 1 km / pixel )</i><br />" 0273 "NASA Jet Propulsion Laboratory <a href=\"https://www2.jpl.nasa.gov/srtm/\">" 0274 "https://www2.jpl.nasa.gov/srtm/</a></p>")+ 0275 QObject::tr("<p><i>Micro World Data Bank in Polygons (\"MWDB-POLY / MWDBII\")</i><br />" 0276 "CIA ; Global Associates, Ltd.; Fred Pospeschil and Antonio Rivera</p>")+ 0277 QObject::tr("<p><i>Temperature and Precipitation Maps (July and December)</i><br />" 0278 "A combination of two datasets:" 0279 "<ul>" 0280 "<li>Legates, D.R. and Willmott, C.J. 1989. Average Monthly Surface Air Temperature and " 0281 "Precipitation. Digital Raster Data on a .5 degree Geographic (lat/long) 361x721 grid " 0282 "(centroid-registered on .5 degree meridians). Boulder CO: National Center for Atmospheric Research. " 0283 "<a href=\"http://www.ngdc.noaa.gov/ecosys/cdroms/ged_iia/datasets/a04/lw.htm\">" 0284 "http://www.ngdc.noaa.gov/ecosys/cdroms/ged_iia/datasets/a04/lw.htm</a></li>" 0285 "<li>CRU CL 2.0: New, M., Lister, D., Hulme, M. and Makin, I., 2002: A high-resolution " 0286 "data set of surface climate over global land areas. Climate Research 21." 0287 "<a href=\"https://crudata.uea.ac.uk/cru/data/hrg\">" 0288 "https://crudata.uea.ac.uk/cru/data/hrg</a></li></ul></p>")+ 0289 QObject::tr("<b>Street Map</b>")+ 0290 QObject::tr("<p><i>OpenStreetMap</i><br />" 0291 "The street maps used in Marble via download are provided by the <a href=\"" 0292 "https://www.openstreetmap.org\">OpenStreetMap</a> Project (\"OSM\"). " 0293 "OSM is an open community which creates free editable maps.<br />" 0294 "<i>License</i>: OpenStreetMap data can be used freely under the terms of the " 0295 "<a href=\"https://wiki.openstreetmap.org/index.php/OpenStreetMap_License\">" 0296 "Creative Commons Attribution-ShareAlike 2.0 license</a>.</p>")+ 0297 QObject::tr( "<p><i>Icons</i><br />" 0298 "Some icons are taken from <a href=\"https://www.sjjb.co.uk/mapicons\">SJJB Management</a> and <a href=\"https://thenounproject.com\">NounProject</a>. " 0299 "These icons can be used freely under the terms of the " 0300 "<a href=\"https://creativecommons.org/publicdomain/zero/1.0/\">CC0 1.0 Universal</a> license.</p>") + 0301 QObject::tr( "<p>Some icons are taken from <a href=\"https://fortawesome.github.com/Font-Awesome\">Font Awesome</a>. " 0302 "These icons can be used freely under the terms of the " 0303 "<a href=\"https://creativecommons.org/licenses/by/3.0/\">CC BY 3.0</a> license.</p>") + 0304 QObject::tr("<p><i>OpenRouteService</i><br />" 0305 "Some of the routes used in Marble via download are provided by the <a href=\"" 0306 "https://maps.openrouteservice.org\">OpenRouteService</a> Project (\"ORS\"). <br />" 0307 "<i>License</i>: OpenRouteService data can be used freely under the terms of the " 0308 "<a href=\"https://wiki.openstreetmap.org/index.php/OpenStreetMap_License\">" 0309 "Creative Commons Attribution-ShareAlike 2.0 license</a>.</p>")+ 0310 QObject::tr("<p><i>Open Source Routing Machine</i><br />" 0311 "Some of the routes used in Marble via download are provided by the <a href=\"" 0312 "http://project-osrm.org\">Open Source Routing Machine</a> Project (\"OSRM\"). <br />" 0313 "<i>License</i>: Open Source Routing Machine data can be used freely under the terms of the " 0314 "<a href=\"https://wiki.openstreetmap.org/index.php/OpenStreetMap_License\">" 0315 "Creative Commons Attribution-ShareAlike 2.0 license</a>.</p>")+ 0316 QObject::tr("<p><i>MapQuest</i><br />" 0317 "Some of the routes used in Marble via download are provided by <a href=\"" 0318 "https://www.mapquest.com/\">MapQuest</a> and their Open Data Map APIs and Web Services.<br />" 0319 "Directions courtesy of MapQuest working on OpenStreetMap data that can be used freely under the terms of the " 0320 "<a href=\"https://wiki.openstreetmap.org/index.php/OpenStreetMap_License\">" 0321 "Creative Commons Attribution-ShareAlike 2.0 license</a>. Usage of the MapQuest routing " 0322 "service is subject to the <a href=\"https://info.mapquest.com/terms-of-use/\">MapQuest terms of use</a>.</p>")+ 0323 QObject::tr("<b>Cities and Locations</b>")+ 0324 QObject::tr("<p><i>World Gazetteer</i><br />Stefan Helders " 0325 "<a href=\"http://www.world-gazetteer.com\">http://www.world-gazetteer.com</a></p>")+ 0326 QObject::tr("<p><i>Geonames.org</i><br />" 0327 "<a href=\"https://www.geonames.org/\">https://www.geonames.org/</a>" 0328 "<i>License</i>: Geonames.org data can be used freely under the terms of the " 0329 "<a href=\"https://creativecommons.org/licenses/by/3.0/\">Creative Commons Attribution 3.0 license</a>.</p>")+ 0330 QObject::tr("<p><i>Czech Statistical Office</i><br />Public database " 0331 "<a href=\"https://vdb.czso.cz/vdbvo2\">https://www.czso.cz</a></p>")+ 0332 QObject::tr("<b>Flags</b>")+ 0333 QObject::tr("<p><i>Flags of the World</i><br />The flags were taken from Wikipedia " 0334 "(<a href=\"https://www.wikipedia.org\">https://www.wikipedia.org</a>) " 0335 "which in turn took a subset from <a href=\"https://www.openclipart.org\">" 0336 "https://www.openclipart.org</a> and reworked them. " 0337 "All flags are under the public domain (see comments inside the svg files).</p>")+ 0338 QObject::tr("<b>Stars</b>")+ 0339 QObject::tr("<p><i>The Bright Star Catalogue</i><br />5th Revised Ed. (Preliminary Version) " // krazy:exclude=spelling 0340 "Hoffleit D., Warren Jr W.H., Astronomical Data Center, NSSDC/ADC (1991)" 0341 "<a href=\"https://heasarc.gsfc.nasa.gov/W3Browse/star-catalog/bsc5p.html\"> " 0342 "https://heasarc.gsfc.nasa.gov</a></p>") ); 0343 QTextFrameFormat format = browser->document()->rootFrame()->frameFormat(); 0344 format.setMargin(12); 0345 browser->document()->rootFrame()->setFrameFormat( format ); 0346 } 0347 0348 if ( idx == 3 && !licenseLoaded ) 0349 { 0350 licenseLoaded = true; 0351 QTextBrowser *const browser = uiWidget.m_pMarbleLicenseBrowser; 0352 const QString filename = MarbleDirs::path(QStringLiteral("LICENSE.txt")); 0353 if( !filename.isEmpty() ) 0354 { 0355 QFile f( filename ); 0356 if( f.open( QIODevice::ReadOnly ) ) 0357 { 0358 QTextStream ts( &f ); 0359 browser->setText( ts.readAll() ); 0360 } 0361 f.close(); 0362 } 0363 QTextFrameFormat format = browser->document()->rootFrame()->frameFormat(); 0364 format.setMargin(12); 0365 browser->document()->rootFrame()->setFrameFormat( format ); 0366 } 0367 } 0368 0369 void MarbleAboutDialog::setApplicationTitle( const QString &title ) 0370 { 0371 QString const titleHtml = QLatin1String("<b>") + title + QLatin1String("</b>"); 0372 d->uiWidget.m_pMarbleTitleLabel->setText( titleHtml ); 0373 QString const applicationVersion = tr( "Using Marble Library version %1" ).arg( MARBLE_VERSION_STRING ); 0374 d->uiWidget.m_pMarbleVersionLabel->setText( applicationVersion ); 0375 QTextBrowser* browser = d->uiWidget.m_pMarbleAboutBrowser; 0376 QString text; 0377 if( MarbleGlobal::getInstance()->profiles() & MarbleGlobal::SmallScreen ) { 0378 text = titleHtml + QLatin1String("<br />") + applicationVersion + QLatin1String("<br />"); 0379 } 0380 browser->setHtml( text + tr("<br />(c) 2007-%1 by the authors of Marble Virtual Globe<br /><br /><a href=\"https://edu.kde.org/marble\">https://edu.kde.org/marble</a>").arg( 2023 ) ); 0381 QTextFrameFormat format = browser->document()->rootFrame()->frameFormat(); 0382 format.setMargin(12); 0383 browser->document()->rootFrame()->setFrameFormat( format ); 0384 } 0385 0386 void MarbleAboutDialog::setInitialTab( MarbleAboutDialog::Tab tab ) 0387 { 0388 d->uiWidget.tabWidget->setCurrentIndex( tab ); 0389 } 0390 0391 } 0392 0393 #include "moc_MarbleAboutDialog.cpp"