Mon, 27 Mar 2017 14:56:05 +0300
LibraryCollection now derives from QObject and QVector<Library>
/* * LDForge: LDraw parts authoring CAD * Copyright (C) 2013 - 2017 Teemu Piippo * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ #include <QLineEdit> #include <QRadioButton> #include <QCheckBox> #include "../lddocument.h" #include "../mainwindow.h" #include "../linetypes/comment.h" #include "../linetypes/empty.h" #include "../miscallenous.h" #include "newpartdialog.h" #include "ui_newpartdialog.h" NewPartDialog::NewPartDialog (QWidget *parent) : QDialog {parent}, ui {*new Ui_NewPart} { ui.setupUi (this); QString authortext = configuration().defaultName(); if (not configuration().defaultUser().isEmpty()) authortext.append (format (" [%1]", configuration().defaultUser())); ui.author->setText (authortext); ui.useCaLicense->setChecked (configuration().useCaLicense()); } NewPartDialog::~NewPartDialog() { delete &ui; } BfcStatement NewPartDialog::getWinding() const { if (ui.windingCcw->isChecked()) return BfcStatement::CertifyCCW; if (ui.windingCw->isChecked()) return BfcStatement::CertifyCW; return BfcStatement::NoCertify; } bool NewPartDialog::useCaLicense() const { return ui.useCaLicense->isChecked(); } QString NewPartDialog::author() const { return ui.author->text(); } QString NewPartDialog::title() const { return ui.title->text(); } void NewPartDialog::fillHeader (LDDocument* newdoc) const { newdoc->append<LDComment>(title()); newdoc->append<LDComment>("Name: <untitled>.dat"); newdoc->append<LDComment>("Author: " + author()); newdoc->append<LDComment>("!LDRAW_ORG Unofficial_Part"); QString license = preferredLicenseText(); if (not license.isEmpty()) newdoc->append<LDComment>(license); newdoc->append<LDEmpty>(); newdoc->append<LDBfc>(getWinding()); newdoc->append<LDEmpty>(); }