X-Git-Url: http://git.johnwright.org/?p=fmit.git;a=blobdiff_plain;f=src%2FAutoQSettings.cpp;fp=src%2FAutoQSettings.cpp;h=476a432fb93e65d13056f6630f0af9341b874806;hp=6725b02352f559c0038c6ef9c6826390f22bbc9f;hb=49947d1cd4506f5574b3be62ee90e9f00227d9fd;hpb=82c9faab9421b3d87a0faa84a73f55aaccbbb689 diff --git a/src/AutoQSettings.cpp b/src/AutoQSettings.cpp index 6725b02..476a432 100644 --- a/src/AutoQSettings.cpp +++ b/src/AutoQSettings.cpp @@ -16,23 +16,56 @@ // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +#include using namespace std; #include #include "AutoQSettings.h" AutoQSettings::AutoQSettings(const QString& domain, const QString& product, const QString& setting_version) + : QSettings(QSettings::UserScope, domain, product) { - setPath(domain, product); beginGroup(QString("/")+product+setting_version+"/"); + cerr << "AutoQSettings: " << fileName().toStdString() << endl; +} + +void AutoQSettings::add(QCheckBox* el) +{ + assert(el->objectName()!=""); + m_elements_checkbox.push_back(el); +} +void AutoQSettings::add(QSpinBox* el) +{ + assert(el->objectName()!=""); + m_elements_spinbox.push_back(el); +} +void AutoQSettings::add(QLineEdit* el) +{ + assert(el->objectName()!=""); + m_elements_lineedit.push_back(el); +} +void AutoQSettings::add(QComboBox* el) +{ + assert(el->objectName()!=""); + m_elements_combobox.push_back(el); +} +void AutoQSettings::add(QGroupBox* el) +{ + assert(el->objectName()!=""); + m_elements_qgroupbox.push_back(el); +} +void AutoQSettings::add(QRadioButton* el) +{ + assert(el->objectName()!=""); + m_elements_qradiobutton.push_back(el); } void AutoQSettings::save(QCheckBox* el) { - writeEntry(el->name(), el->isChecked()); + setValue(el->objectName(), el->isChecked()); } void AutoQSettings::load(QCheckBox* el) { - el->setChecked(readBoolEntry(el->name(), el->isChecked())); + el->setChecked(value(el->objectName(), el->isChecked()).toBool()); } void AutoQSettings::save() @@ -40,22 +73,22 @@ void AutoQSettings::save() beginGroup("Auto/"); for(list::iterator it=m_elements_checkbox.begin(); it!=m_elements_checkbox.end(); it++) - writeEntry((*it)->name(), (*it)->isChecked()); + setValue((*it)->objectName(), (*it)->isChecked()); for(list::iterator it=m_elements_spinbox.begin(); it!=m_elements_spinbox.end(); it++) - writeEntry((*it)->name(), (*it)->value()); + setValue((*it)->objectName(), (*it)->value()); for(list::iterator it=m_elements_lineedit.begin(); it!=m_elements_lineedit.end(); it++) - writeEntry((*it)->name(), (*it)->text()); + setValue((*it)->objectName(), (*it)->text()); for(list::iterator it=m_elements_combobox.begin(); it!=m_elements_combobox.end(); it++) - writeEntry((*it)->name(), (*it)->currentItem()); + setValue((*it)->objectName(), (*it)->currentIndex()); for(list::iterator it=m_elements_qgroupbox.begin(); it!=m_elements_qgroupbox.end(); it++) - writeEntry((*it)->name(), (*it)->isChecked()); + setValue((*it)->objectName(), (*it)->isChecked()); for(list::iterator it=m_elements_qradiobutton.begin(); it!=m_elements_qradiobutton.end(); it++) - writeEntry((*it)->name(), (*it)->isChecked()); + setValue((*it)->objectName(), (*it)->isChecked()); endGroup(); } @@ -64,22 +97,22 @@ void AutoQSettings::load() beginGroup("Auto/"); for(list::iterator it=m_elements_checkbox.begin(); it!=m_elements_checkbox.end(); it++) - (*it)->setChecked(readBoolEntry((*it)->name(), (*it)->isChecked())); + (*it)->setChecked(value((*it)->objectName(), (*it)->isChecked()).toBool()); for(list::iterator it=m_elements_spinbox.begin(); it!=m_elements_spinbox.end(); it++) - (*it)->setValue(readNumEntry((*it)->name(), (*it)->value())); + (*it)->setValue(value((*it)->objectName(), (*it)->value()).toInt()); for(list::iterator it=m_elements_lineedit.begin(); it!=m_elements_lineedit.end(); it++) - (*it)->setText(readEntry((*it)->name(), ((*it)->text()))); + (*it)->setText(value((*it)->objectName(), ((*it)->text())).toString()); for(list::iterator it=m_elements_combobox.begin(); it!=m_elements_combobox.end(); it++) - (*it)->setCurrentItem(readNumEntry((*it)->name(), (*it)->currentItem())); + (*it)->setCurrentIndex(value((*it)->objectName(), (*it)->currentIndex()).toInt()); for(list::iterator it=m_elements_qgroupbox.begin(); it!=m_elements_qgroupbox.end(); it++) - (*it)->setChecked(readBoolEntry((*it)->name(), (*it)->isChecked())); + (*it)->setChecked(value((*it)->objectName(), (*it)->isChecked()).toBool()); for(list::iterator it=m_elements_qradiobutton.begin(); it!=m_elements_qradiobutton.end(); it++) - (*it)->setChecked(readBoolEntry((*it)->name(), (*it)->isChecked())); + (*it)->setChecked(value((*it)->objectName(), (*it)->isChecked()).toBool()); endGroup(); } @@ -88,16 +121,22 @@ void AutoQSettings::clear() beginGroup("Auto/"); for(list::iterator it=m_elements_checkbox.begin(); it!=m_elements_checkbox.end(); it++) - removeEntry((*it)->name()); + remove((*it)->objectName()); for(list::iterator it=m_elements_spinbox.begin(); it!=m_elements_spinbox.end(); it++) - removeEntry((*it)->name()); + remove((*it)->objectName()); for(list::iterator it=m_elements_lineedit.begin(); it!=m_elements_lineedit.end(); it++) - removeEntry((*it)->name()); + remove((*it)->objectName()); for(list::iterator it=m_elements_combobox.begin(); it!=m_elements_combobox.end(); it++) - removeEntry((*it)->name()); + remove((*it)->objectName()); - endGroup(); + for(list::iterator it=m_elements_qgroupbox.begin(); it!=m_elements_qgroupbox.end(); it++) + remove((*it)->objectName()); + + for(list::iterator it=m_elements_qradiobutton.begin(); it!=m_elements_qradiobutton.end(); it++) + remove((*it)->objectName()); + + endGroup(); }