File indexing completed on 2025-01-26 03:34:13
0001 /* 0002 File : PlotPrivate.h 0003 Project : LabPlot 0004 Description : Plot - private implementation 0005 -------------------------------------------------------------------- 0006 SPDX-FileCopyrightText: 2022-2023 Alexander Semke <alexander.semke@web.de> 0007 0008 SPDX-License-Identifier: GPL-2.0-or-later 0009 */ 0010 0011 #ifndef PLOTPRIVATE_H 0012 #define PLOTPRIVATE_H 0013 0014 #include "backend/worksheet/WorksheetElementPrivate.h" 0015 #include "backend/worksheet/plots/cartesian/Plot.h" 0016 0017 class PlotPrivate : public WorksheetElementPrivate { 0018 public: 0019 explicit PlotPrivate(Plot*); 0020 virtual bool activatePlot(QPointF mouseScenePos, double maxDist = -1); 0021 Plot* const q; 0022 bool legendVisible{true}; 0023 0024 protected: 0025 void drawFillingPollygon(const QPolygonF&, QPainter*, const Background*) const; 0026 virtual void contextMenuEvent(QGraphicsSceneContextMenuEvent*) override; 0027 0028 protected: 0029 QPixmap m_pixmap; 0030 QImage m_hoverEffectImage; 0031 QImage m_selectionEffectImage; 0032 bool m_hoverEffectImageIsDirty{false}; 0033 bool m_selectionEffectImageIsDirty{false}; 0034 }; 0035 0036 #endif