File indexing completed on 2024-04-28 09:37:01
0001 /* 0002 This file is part of KCachegrind. 0003 0004 SPDX-FileCopyrightText: 2009-2016 Josef Weidendorfer <Josef.Weidendorfer@gmx.de> 0005 0006 SPDX-License-Identifier: GPL-2.0-only 0007 */ 0008 0009 /* 0010 * General settings config page 0011 */ 0012 0013 #include "generalsettings.h" 0014 #include "globalconfig.h" 0015 0016 // 0017 // GeneralSettings 0018 // 0019 0020 GeneralSettings::GeneralSettings(QWidget* parent) 0021 : ConfigPage(parent, 0022 QObject::tr("General"), QObject::tr("General Settings")) 0023 { 0024 ui.setupUi(this); 0025 0026 GlobalConfig* c = GlobalConfig::config(); 0027 ui.maxListEdit->setText(QString::number(c->maxListCount())); 0028 ui.symbolCount->setText(QString::number(c->maxSymbolCount())); 0029 ui.symbolLength->setText(QString::number(c->maxSymbolLength())); 0030 ui.precisionEdit->setText(QString::number(c->percentPrecision())); 0031 ui.contextEdit->setText(QString::number(c->context())); 0032 0033 _names.insert(QStringLiteral("maxListEdit"), ui.maxListEdit); 0034 _names.insert(QStringLiteral("symbolCount"), ui.symbolCount); 0035 _names.insert(QStringLiteral("symbolLength"), ui.symbolLength); 0036 _names.insert(QStringLiteral("precisionEdit"), ui.precisionEdit); 0037 _names.insert(QStringLiteral("contextEdit"), ui.contextEdit); 0038 } 0039 0040 0041 bool GeneralSettings::check(QString& errorMsg, QString& errorItem) 0042 { 0043 int v; 0044 v = ui.maxListEdit->text().toUInt(); 0045 if ((v <1) || (v >500)) { 0046 errorMsg = inRangeError(1, 500); 0047 errorItem = QStringLiteral("maxListEdit"); 0048 return false; 0049 } 0050 0051 v = ui.symbolCount->text().toInt(); 0052 if ((v <1) || (v >50)) { 0053 errorMsg = inRangeError(1, 50); 0054 errorItem = QStringLiteral("symbolCount"); 0055 return false; 0056 } 0057 0058 v = ui.symbolLength->text().toInt(); 0059 if ((v <1) || (v >1000)) { 0060 errorMsg = inRangeError(1, 1000); 0061 errorItem = QStringLiteral("symbolLength"); 0062 return false; 0063 } 0064 0065 v = ui.precisionEdit->text().toInt(); 0066 if ((v <1) || (v >5)) { 0067 errorMsg = inRangeError(1, 5); 0068 errorItem = QStringLiteral("precisionEdit"); 0069 return false; 0070 } 0071 0072 v = ui.contextEdit->text().toInt(); 0073 if ((v <1) || (v >500)) { 0074 errorMsg = inRangeError(1, 500); 0075 errorItem = QStringLiteral("contextEdit"); 0076 return false; 0077 } 0078 0079 return true; 0080 } 0081 0082 void GeneralSettings::accept() 0083 { 0084 GlobalConfig* c = GlobalConfig::config(); 0085 0086 c->setMaxListCount(ui.maxListEdit->text().toUInt()); 0087 c->setMaxSymbolCount(ui.symbolCount->text().toInt()); 0088 c->setMaxSymbolLength(ui.symbolLength->text().toInt()); 0089 c->setPercentPrecision(ui.precisionEdit->text().toInt()); 0090 c->setContext(ui.contextEdit->text().toInt()); 0091 } 0092 0093 #include "moc_generalsettings.cpp"