Added a basic location marker manager.

This commit is contained in:
AdenKoperczak 2024-10-05 13:09:55 -04:00
parent 84233868d6
commit 19415cd0a1
16 changed files with 806 additions and 44 deletions

View file

@ -2,8 +2,6 @@
#include <scwx/qt/types/marker_types.hpp>
#include <string>
#include <QObject>
namespace scwx
@ -21,16 +19,20 @@ public:
explicit MarkerManager();
~MarkerManager();
size_t marker_count();
types::MarkerInfo get_marker(size_t index);
types::MarkerInfo get_marker(const std::string& name);
void set_marker(size_t index, const types::MarkerInfo& marker);
void set_marker(const std::string& name, const types::MarkerInfo& marker);
size_t marker_count();
const types::MarkerInfo& get_marker(size_t index);
void set_marker(size_t index, const types::MarkerInfo& marker);
void add_marker(const types::MarkerInfo& marker);
void remove_marker(size_t index);
void move_marker(size_t from, size_t to);
static std::shared_ptr<MarkerManager> Instance();
signals:
void MarkersUpdated();
void MarkerAdded();
void MarkerRemoved(size_t index);
private:
class Impl;
std::unique_ptr<Impl> p;