56 lines
1.2 KiB
C++
56 lines
1.2 KiB
C++
|
|
|
|
#pragma once
|
|
#include "lts_widgets_export.h"
|
|
|
|
#include <QObject>
|
|
#include <QWidget>
|
|
#include <QtCore/QPair>
|
|
#include <QtCore/QPointF>
|
|
#include <QtCore/QVector>
|
|
|
|
class LTSWIDGETS_EXPORT LtsHeightPlotWidget final : public QWidget
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
explicit LtsHeightPlotWidget(QWidget* parent = nullptr);
|
|
virtual ~LtsHeightPlotWidget();
|
|
|
|
void clearView();
|
|
|
|
void setData(const QVector<QPair<QPointF, double>>& data);
|
|
|
|
void setMarks(const QVector<QPointF>& data);
|
|
|
|
void setBackgroundBrush(const QBrush& brush);
|
|
|
|
void setTextFont(const QFont& f);
|
|
|
|
void setAxisPen(const QPen& pen);
|
|
|
|
void setPositionPen(const QPen& pen);
|
|
|
|
void setViewLinePen(const QPen& pen);
|
|
|
|
void setContourBrush(const QBrush& brush);
|
|
|
|
void setMarkerPen(const QPen& pen);
|
|
|
|
Q_SIGNALS:
|
|
|
|
void mousePositionChanged(const QPointF& curPoint, double curHeight, double mouseHeight);
|
|
|
|
void startLineOfSight(const QPointF& startPoint);
|
|
|
|
void stopLineOfSight();
|
|
|
|
protected:
|
|
void resizeEvent(QResizeEvent* e) override;
|
|
void paintEvent(QPaintEvent* e) override;
|
|
void mouseMoveEvent(QMouseEvent* e) override;
|
|
void mouseReleaseEvent(QMouseEvent* e) override;
|
|
|
|
class Private;
|
|
Private* const d;
|
|
};
|