/
levovix
/
kittycad
Обзор
Документация
Войти
/
levovix
/
kittycad
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/gui/welcome.cpp
83 строки
3 KB
levovix
fix: icons are now embeded into binary
07 янв 2026, 19:47
07 янв 2026, 19:47
48fb22d
Код
Авторство
О чём код?
#include "welcome.h" #include "gui/utils.h" #include <QVBoxLayout> #include <QHBoxLayout> #include <QLabel> #include <QPushButton> #include <qboxlayout.h> #include <qobject.h> #include <qpushbutton.h> #include <qwidget.h> Welcome::Welcome(ref<data::Config> config, QObject* parent) : QWidget() , m_config(config) { initUi(); } Welcome::~Welcome() {} void Welcome::initUi() { auto newDocWindowLayout = new QHBoxLayout(this); auto newDocWindowNestedLayout = new QVBoxLayout(); newDocWindowLayout->addStretch(); newDocWindowNestedLayout->addStretch(); { auto TopButtonsLayout = new QHBoxLayout(); TopButtonsLayout->addStretch(); auto new_document_button = new QPushButton(this); new_document_button->setText(tr("New document")); new_document_button->setIcon(qIconFromResources("document-new")); QObject::connect(new_document_button, &QPushButton::clicked, this, &Welcome::new_document_button_clicked); TopButtonsLayout->addWidget(new_document_button); auto open_file_button = new QPushButton(this); open_file_button->setText(tr("Open...")); open_file_button->setIcon(qIconFromResources("document-open")); QObject::connect(open_file_button, &QPushButton::clicked, this, &Welcome::open_file_button_clicked); TopButtonsLayout->addWidget(open_file_button); TopButtonsLayout->addStretch(); newDocWindowNestedLayout->addLayout(TopButtonsLayout); } { if (!m_config->recent_files.empty()) { auto lbl = new QLabel(this); lbl->setText(tr("Recent documents:")); lbl->setAlignment(Qt::AlignHCenter); newDocWindowNestedLayout->addWidget(lbl); } } { auto doc_list = new QGridLayout(); int c = 0; for (auto file : m_config->recent_files) { auto button = new QPushButton(this); auto filename = QString::fromStdString(file); filename = filename.right(filename.size() - filename.lastIndexOf("/") - 1); button->setText(filename); button->setMinimumWidth(300); button->setMinimumHeight(84); QObject::connect(button, &QPushButton::clicked, [this, file](){ recent_document_button_clicked(file); }); doc_list->addWidget(button, c / 2, c % 2); c++; } newDocWindowNestedLayout->addLayout(doc_list); } newDocWindowNestedLayout->addStretch(); newDocWindowLayout->addLayout(newDocWindowNestedLayout); newDocWindowLayout->addStretch(); }