#pragma once

#include <QObject>
#include <QQuickWindow>

class NavigationTurnIconSize : public QObject {
    Q_OBJECT
    Q_PROPERTY(int navigationTurnIconSizePixels
       READ navigationTurnIconSizePixels
       WRITE setNavigationTurnIconSizePixels
       NOTIFY navigationTurnIconSizePixelsChanged)
public:
    NavigationTurnIconSize() { m_sizePixels = 64; } //initial size
    int navigationTurnIconSizePixels() const { return m_sizePixels; }
    void setNavigationTurnIconSizePixels(int newValue) { m_sizePixels = (newValue < m_minSizePixels) ? m_minSizePixels : newValue > m_maxSizePixels ? m_maxSizePixels : newValue; emit navigationTurnIconSizePixelsChanged(); }

signals:
    void navigationTurnIconSizePixelsChanged();

private:
    const int m_minSizePixels = 16;
    const int m_maxSizePixels = 384;
    int m_sizePixels;
};
