Files
Renderive/YSGraphic_Core/DemoGallery/base/AxisTest.h
T
2026-07-23 13:41:30 +08:00

42 lines
1.1 KiB
C++

#pragma once
#include "../Tool.h"
static QWidget* createAxisTestPlot() {
class AxisTestPlot : public YSG::Plot {
public:
YSG::Axis *axis{};
QMenu *mMenu{};
void init() override {
Plot::init();
mObjectName = "AxisTestPlot";
axis = YSG::Axis::Builder(this, Qt::Horizontal)
.set_tickLength(-10)
.set_subTickLength(-5)
.set_coordRange({-12000, 12000})
.set_use_wheel(true)
.build();
}
protected:
void resizeEvent(QResizeEvent* event) override {
int space = 50;
axis->set_x(space);
axis->set_y(height()/2);
axis->set_pixelSize(width() - space * 2);
}
void contextMenuEvent(QContextMenuEvent* event) override {
if(!mMenu) {
auto ws =
bw( cw(axis), "");
mMenu = createMenu(this, ws);
}
mMenu->exec(event->globalPos());
}
};
auto w = new AxisTestPlot;
w->init();
return w;
}