mirror of
https://codeberg.org/comaps/comaps
synced 2025-12-19 13:03:36 +00:00
committed by
Konstantin Pastbin
parent
c9cbb64f12
commit
76ffc99abd
73
libs/map/user_mark_layer.cpp
Normal file
73
libs/map/user_mark_layer.cpp
Normal file
@@ -0,0 +1,73 @@
|
||||
#include "map/user_mark_layer.hpp"
|
||||
|
||||
|
||||
UserMarkLayer::UserMarkLayer(UserMark::Type type)
|
||||
: m_type(type)
|
||||
{
|
||||
}
|
||||
|
||||
bool UserMarkLayer::IsVisible() const
|
||||
{
|
||||
return m_isVisible;
|
||||
}
|
||||
|
||||
bool UserMarkLayer::IsVisibilityChanged() const
|
||||
{
|
||||
return m_isVisible != m_wasVisible;
|
||||
}
|
||||
|
||||
UserMark::Type UserMarkLayer::GetType() const
|
||||
{
|
||||
return m_type;
|
||||
}
|
||||
|
||||
void UserMarkLayer::Clear()
|
||||
{
|
||||
SetDirty();
|
||||
m_userMarks.clear();
|
||||
m_tracks.clear();
|
||||
}
|
||||
|
||||
bool UserMarkLayer::IsEmpty() const
|
||||
{
|
||||
return m_userMarks.empty() && m_tracks.empty();
|
||||
}
|
||||
|
||||
void UserMarkLayer::SetIsVisible(bool isVisible)
|
||||
{
|
||||
if (m_isVisible != isVisible)
|
||||
{
|
||||
SetDirty(false /* updateModificationDate */);
|
||||
m_isVisible = isVisible;
|
||||
}
|
||||
}
|
||||
|
||||
void UserMarkLayer::ResetChanges()
|
||||
{
|
||||
m_isDirty = false;
|
||||
m_wasVisible = m_isVisible;
|
||||
}
|
||||
|
||||
void UserMarkLayer::AttachUserMark(kml::MarkId markId)
|
||||
{
|
||||
SetDirty();
|
||||
m_userMarks.insert(markId);
|
||||
}
|
||||
|
||||
void UserMarkLayer::DetachUserMark(kml::MarkId markId)
|
||||
{
|
||||
SetDirty();
|
||||
m_userMarks.erase(markId);
|
||||
}
|
||||
|
||||
void UserMarkLayer::AttachTrack(kml::TrackId trackId)
|
||||
{
|
||||
SetDirty();
|
||||
m_tracks.insert(trackId);
|
||||
}
|
||||
|
||||
void UserMarkLayer::DetachTrack(kml::TrackId trackId)
|
||||
{
|
||||
SetDirty();
|
||||
m_tracks.erase(trackId);
|
||||
}
|
||||
Reference in New Issue
Block a user