File indexing completed on 2024-04-28 03:50:24

0001 // SPDX-License-Identifier: LGPL-2.1-or-later
0002 //
0003 // SPDX-FileCopyrightText: 2011 Guillaume Martres <smarter@ubuntu.com>
0004 //
0005 
0006 #include "TrackerPluginItem.h"
0007 #include "GeoDataPlacemark.h"
0008 #include "MarbleDebug.h"
0009 
0010 namespace Marble {
0011 
0012 class TrackerPluginItemPrivate
0013 {
0014 public:
0015     TrackerPluginItemPrivate( const QString &name, GeoDataPlacemark *placemark )
0016         : m_name( name ),
0017           m_placemark( placemark ),
0018           m_enabled( false ),
0019           m_trackVisible( false )
0020     {
0021     }
0022 
0023     QString m_name;
0024     GeoDataPlacemark *m_placemark;
0025     bool m_enabled;
0026     bool m_trackVisible;
0027 };
0028 
0029 TrackerPluginItem::TrackerPluginItem( const QString &name )
0030     : d( new TrackerPluginItemPrivate( name, new GeoDataPlacemark( name ) ) )
0031 {
0032 }
0033 
0034 TrackerPluginItem::~TrackerPluginItem()
0035 {
0036     delete d;
0037 }
0038 
0039 QString TrackerPluginItem::name() const
0040 {
0041     return d->m_name;
0042 }
0043 
0044 GeoDataPlacemark* TrackerPluginItem::placemark()
0045 {
0046     return d->m_placemark;
0047 }
0048 
0049 bool TrackerPluginItem::isEnabled() const
0050 {
0051     return d->m_enabled;
0052 }
0053 
0054 void TrackerPluginItem::setEnabled( bool enabled )
0055 {
0056     d->m_enabled = enabled;
0057 }
0058 
0059 bool TrackerPluginItem::isVisible() const
0060 {
0061     return d->m_placemark->isVisible();
0062 }
0063 
0064 void TrackerPluginItem::setVisible( bool visible )
0065 {
0066     d->m_placemark->setVisible( visible );
0067 }
0068 
0069 bool TrackerPluginItem::isTrackVisible() const
0070 {
0071     return d->m_trackVisible;
0072 }
0073 
0074 void TrackerPluginItem::setTrackVisible( bool visible )
0075 {
0076     d->m_trackVisible = visible;
0077 }
0078 
0079 } // namespace Marble