logplus/logPlus/QCPSizeHandleManager.h
jiayulong f78bed60d3 1.优化蝌蚪图,支持倾角类型的刻度。
2.测试自定义item,支持拖拉改变位置,大小
2025-12-01 17:13:17 +08:00

39 lines
1.0 KiB
C++

#include "qcustomplot.h"
#include "QCPSizeHandle.h"
struct ControlItemData {
bool showHandlesLines;
bool moveable;
bool resizeable;
QPen connectHandlePen;
QList<QCPSizeHandle*> handles;
//ControlItemData();
};
class QCP_LIB_DECL QCPSizeHandleManager : public QCPLayerable
{
Q_OBJECT
public:
explicit QCPSizeHandleManager(QCustomPlot *parent);
~QCPSizeHandleManager();
void addItem(QCPAbstractItem *item, bool showHandlesLines = false);
//void addItems(const QList<QCPAbstractItem *> items, bool showHandlesLines = false);
public slots:
void handleItemMove(QCPAbstractItem *item, const QPointF &delta);
void handleItemResize(QCPSizeHandle *sizeHandle, const QPointF &delta);
protected:
QMap<QCPAbstractItem *, ControlItemData> mHandles;
QCPSizeHandle *addHandleToPosition(QCPItemPosition *position);
virtual void applyDefaultAntialiasingHint(QCPPainter *painter) const Q_DECL_OVERRIDE;
virtual void draw(QCPPainter *painter) Q_DECL_OVERRIDE;
};