Files
Enzo/src/gui/viewport/Viewport.cpp
2025-06-26 09:09:35 +01:00

34 lines
1.1 KiB
C++

#include "gui/viewport/Viewport.h"
#include <qboxlayout.h>
#include <qpushbutton.h>
#include <iostream>
#include <QTimer>
#include <QPainterPath>
Viewport::Viewport(QWidget *parent, Qt::WindowFlags f)
: QWidget(parent, f)
{
mainLayout_=new QVBoxLayout();
openGLWidget_ = new ViewportGLWidget(this);
mainLayout_->addWidget(openGLWidget_);
openGLWidget_->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
this->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
// mainLayout_->addWidget(new QPushButton("hello world"));
this->setLayout(mainLayout_);
// this->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
// QTimer::singleShot(100, this, [=] {
// std::cout << "MyGLWidget size: " << openGLWidget_->width() << " x " << openGLWidget_->height() << std::endl;
// });
}
void Viewport::resizeEvent(QResizeEvent *event)
{
QPainterPath path;
constexpr float radius = 10;
path.addRoundedRect(mainLayout_->contentsRect(), radius, radius);
QRegion region = QRegion(path.toFillPolygon().toPolygon());
this->setMask(region);
}