feat: add geometry spreadsheet widget

This commit is contained in:
parker
2025-08-05 19:48:22 +01:00
parent 2a0afc7c24
commit ef372a9630
7 changed files with 249 additions and 6 deletions

View File

@@ -1,5 +1,6 @@
#include "Gui/Interface.h"
#include "Engine/Network/NetworkManager.h"
#include "Gui/GeometrySpreadsheetPanel/GeometrySpreadsheetPanel.h"
#include "Gui/ParametersPanel/ParametersPanel.h"
#include "Gui/Viewport/Viewport.h"
#include "Gui/Network/Network.h"
@@ -26,30 +27,35 @@ EnzoUI::EnzoUI()
Viewport* viewport = new Viewport();
Network* network = new Network();
ParametersPanel* parametersPanel = new ParametersPanel();
GeometrySpreadsheetPanel* geometrySpreadsheetPanel = new GeometrySpreadsheetPanel();
constexpr int margin = 2;
viewport->layout()->setContentsMargins(margin, margin, margin, margin);
network->layout()->setContentsMargins(margin, margin, margin, margin);
parametersPanel->layout()->setContentsMargins(margin, margin, margin, margin);
geometrySpreadsheetPanel->layout()->setContentsMargins(margin, margin, margin, margin);
mainLayout_->setContentsMargins(margin, margin, margin, margin);
// TODO: dynamic splitters
viewportSplitter_ = new Splitter(this);
networkSplitter_ = new Splitter(this);
spreadsheetSplitter_ = new Splitter(this);
networkSplitter_->setOrientation(Qt::Vertical);
spreadsheetSplitter_->setOrientation(Qt::Vertical);
spreadsheetSplitter_->addWidget(viewport);
spreadsheetSplitter_->addWidget(geometrySpreadsheetPanel);
spreadsheetSplitter_->setSizes({200,100});
viewportSplitter_->addWidget(viewport);
viewportSplitter_->addWidget(spreadsheetSplitter_);
viewportSplitter_->addWidget(networkSplitter_);
viewportSplitter_->setStretchFactor(0, 4);
viewportSplitter_->setStretchFactor(1, 1);
viewportSplitter_->setSizes({100,100});
networkSplitter_->addWidget(parametersPanel);
networkSplitter_->addWidget(network);
networkSplitter_->setStretchFactor(0, 10);
networkSplitter_->setStretchFactor(1, 1);
networkSplitter_->setSizes({40,100});
mainLayout_->addWidget(viewportSplitter_);