Files
qt6-migration-pipeline/Lts/Common/LtsWidgets/lts_height_plot_widget.h
T

70 lines
1.2 KiB
C++
Executable File

#pragma once
#include <QWidget>
#include <QtCore/QVector>
#include <QtCore/QPointF>
#include <QtCore/QPair>
#include "lts_widgets_export.h"
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;
};