File indexing completed on 2025-03-09 03:57:15

0001 /* ============================================================
0002  *
0003  * This file is a part of digiKam project
0004  * https://www.digikam.org
0005  *
0006  * Date        : 2009-12-08
0007  * Description : Internal part of the Marble-backend for geolocation interface
0008  *
0009  * SPDX-FileCopyrightText: 2010-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
0010  * SPDX-FileCopyrightText: 2009-2010 by Michael G. Hansen <mike at mghansen dot de>
0011  *
0012  * SPDX-License-Identifier: GPL-2.0-or-later
0013  *
0014  * ============================================================ */
0015 
0016 #include "backendmarblelayer.h"
0017 
0018 // Marble includes
0019 
0020 #include "GeoPainter.h"
0021 
0022 // Local includes
0023 
0024 #include "backendmarble.h"
0025 
0026 namespace Digikam
0027 {
0028 
0029 BackendMarbleLayer::BackendMarbleLayer(BackendMarble* const pMarbleBackend)
0030     : marbleBackend(pMarbleBackend)
0031 {
0032 }
0033 
0034 BackendMarbleLayer::~BackendMarbleLayer()
0035 {
0036 }
0037 
0038 bool BackendMarbleLayer::render(Marble::GeoPainter* painter,
0039                                 Marble::ViewportParams* /*viewport*/,
0040                                 const QString& renderPos,
0041                                 Marble::GeoSceneLayer* /*layer*/)
0042 {
0043     if (marbleBackend && (renderPos == QLatin1String("HOVERS_ABOVE_SURFACE")))
0044     {
0045         marbleBackend->marbleCustomPaint(painter);
0046 
0047         return true;
0048     }
0049 
0050     return false;
0051 }
0052 
0053 QStringList BackendMarbleLayer::renderPosition () const
0054 {
0055     QStringList layerNames;
0056     layerNames << QLatin1String("HOVERS_ABOVE_SURFACE" );
0057 
0058     return layerNames;
0059 }
0060 
0061 void BackendMarbleLayer::setBackend(BackendMarble* const pMarbleBackend)
0062 {
0063     marbleBackend = pMarbleBackend;
0064 }
0065 
0066 } // namespace Digikam