File indexing completed on 2024-05-26 05:40:54
0001 #include "sheetproperties.h" 0002 #include "ui_sheetproperties.h" 0003 0004 #include <QFileDialog> 0005 #include <QFontDatabase> 0006 0007 #include "controllers/qmlgeneratorcontroller.h" 0008 0009 SheetProperties::SheetProperties(QmlGeneratorController* ctrl, QWidget* parent) 0010 : QDialog(parent), ui(new Ui::SheetProperties), m_ctrl(ctrl) 0011 { 0012 ui->setupUi(this); 0013 ui->listView->setModel(&m_model); 0014 0015 connect(ui->m_addFontBtn, &QToolButton::clicked, this, [=] { 0016 QStringList files 0017 = QFileDialog::getOpenFileNames(this, tr("Add Font file"), QDir::homePath(), "font (*.ttf *.otf)"); 0018 if(!files.isEmpty()) 0019 { 0020 m_fontUri.append(files); 0021 m_model.setStringList(m_fontUri); 0022 for(auto uri : m_fontUri) 0023 { 0024 QFontDatabase::addApplicationFont(uri); 0025 } 0026 } 0027 }); 0028 0029 connect(ui->m_removeFontBtn, &QToolButton::clicked, this, [=] { 0030 auto index= ui->listView->currentIndex(); 0031 if(index.isValid()) 0032 { 0033 m_fontUri.removeAt(index.row()); 0034 m_model.setStringList(m_fontUri); 0035 } 0036 }); 0037 0038 init(); 0039 } 0040 0041 SheetProperties::~SheetProperties() 0042 { 0043 delete ui; 0044 } 0045 0046 void SheetProperties::init() 0047 { 0048 ui->m_additionnalHeadCode->document()->setPlainText(m_ctrl->headCode()); 0049 ui->m_additionnalBottomCode->document()->setPlainText(m_ctrl->bottomCode()); 0050 ui->m_additionnalImport->setPlainText(m_ctrl->importCode()); 0051 ui->m_fixedScale->setValue(m_ctrl->fixedScale()); 0052 0053 m_fontUri= m_ctrl->fonts(); 0054 m_model.setStringList(m_fontUri); 0055 } 0056 0057 void SheetProperties::accept() 0058 { 0059 m_ctrl->setHeadCode(ui->m_additionnalHeadCode->document()->toPlainText()); 0060 m_ctrl->setBottomCode(ui->m_additionnalBottomCode->document()->toPlainText()); 0061 m_ctrl->setImportCode(ui->m_additionnalImport->document()->toPlainText()); 0062 m_ctrl->setFixedScale(ui->m_fixedScale->value()); 0063 m_ctrl->setFonts(m_fontUri); 0064 0065 QDialog::accept(); 0066 }