29 lines
533 B
C++
29 lines
533 B
C++
#pragma once
|
|
|
|
#include <QWidget>
|
|
|
|
#include "api.hxx"
|
|
|
|
class Viewport : public QWidget {
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit Viewport(QWidget* parent = nullptr, Qt::WindowFlags f = Qt::WindowFlags());
|
|
~Viewport() override;
|
|
QPaintEngine* paintEngine() const override;
|
|
|
|
void setView(RedrawArgs new_args);
|
|
|
|
protected:
|
|
bool event(QEvent* event) override;
|
|
void paintEvent(QPaintEvent* event) override;
|
|
void resizeEvent(QResizeEvent* event) override;
|
|
|
|
private:
|
|
BoxCore core;
|
|
RedrawArgs args = {};
|
|
|
|
void recreate();
|
|
void updateSize();
|
|
};
|