From 27da7177ae40581f6a2f47813ac3ba421024f750 Mon Sep 17 00:00:00 2001 From: parker Date: Wed, 25 Jun 2025 15:42:42 +0100 Subject: [PATCH] feat: add viewport rounded corners --- src/gui/Interface.cpp | 3 +++ src/gui/network/Network.cpp | 5 +++-- src/gui/viewport/Viewport.cpp | 9 +++++++++ src/gui/viewport/Viewport.h | 1 + 4 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/gui/Interface.cpp b/src/gui/Interface.cpp index effcf59..4da24d4 100644 --- a/src/gui/Interface.cpp +++ b/src/gui/Interface.cpp @@ -16,6 +16,9 @@ EnzoUI::EnzoUI() constexpr float scale = 0.8; resize(1920*scale, 1080*scale); + // TODO: unify stylsheet + setStyleSheet("background-color:#1d2021;"); + Viewport* viewport = new Viewport(); Network* network = new Network(this); diff --git a/src/gui/network/Network.cpp b/src/gui/network/Network.cpp index eceacc4..8d65169 100644 --- a/src/gui/network/Network.cpp +++ b/src/gui/network/Network.cpp @@ -18,7 +18,7 @@ Network::Network(QWidget* parent) { mainLayout_ = new QVBoxLayout(parent); - mainLayout_->setContentsMargins(0,0,0,0); + // mainLayout_->setContentsMargins(0,0,0,0); this->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); @@ -73,7 +73,8 @@ Network::Network(QWidget* parent) void Network::resizeEvent(QResizeEvent *event) { QPainterPath path; - path.addRoundedRect(this->rect(), 15, 15); + constexpr float radius = 10; + path.addRoundedRect(mainLayout_->contentsRect(), radius, radius); QRegion region = QRegion(path.toFillPolygon().toPolygon()); this->setMask(region); } diff --git a/src/gui/viewport/Viewport.cpp b/src/gui/viewport/Viewport.cpp index b2b5d95..36808c7 100644 --- a/src/gui/viewport/Viewport.cpp +++ b/src/gui/viewport/Viewport.cpp @@ -3,6 +3,7 @@ #include #include #include +#include Viewport::Viewport(QWidget *parent, Qt::WindowFlags f) : QWidget(parent, f) @@ -22,3 +23,11 @@ Viewport::Viewport(QWidget *parent, Qt::WindowFlags f) } +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); +} diff --git a/src/gui/viewport/Viewport.h b/src/gui/viewport/Viewport.h index b4d5e67..8eedfdf 100644 --- a/src/gui/viewport/Viewport.h +++ b/src/gui/viewport/Viewport.h @@ -11,5 +11,6 @@ public: private: QVBoxLayout* mainLayout_; MyGLWidget* openGLWidget_; + void resizeEvent(QResizeEvent *event) override; };