diff options
author | Arno <arno@disconnect.de> | 2016-03-30 06:07:22 +0200 |
---|---|---|
committer | Arno <arno@disconnect.de> | 2016-03-30 06:07:22 +0200 |
commit | 2e4e94a52824d2f85af739644461fdc184aed93d (patch) | |
tree | 1a76defe963bd3fe11df836d45f9523257ed5599 /mappingtreewidget.cpp | |
parent | 9f6d01e50f1f1d31e59fc407c852e4c69090d3b0 (diff) | |
download | SheMov-2e4e94a52824d2f85af739644461fdc184aed93d.tar.gz SheMov-2e4e94a52824d2f85af739644461fdc184aed93d.tar.bz2 SheMov-2e4e94a52824d2f85af739644461fdc184aed93d.zip |
Save mappings from slide dialog
Also fix a long standing bug in MappingTreeModel: also remove item from
mCurrentData when the removed item is a parent of one of the items.
Diffstat (limited to 'mappingtreewidget.cpp')
-rw-r--r-- | mappingtreewidget.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/mappingtreewidget.cpp b/mappingtreewidget.cpp index 094703b..a0518d1 100644 --- a/mappingtreewidget.cpp +++ b/mappingtreewidget.cpp @@ -431,6 +431,29 @@ void MappingEditWidget::shiftFocusMappings(){ mMappingTree->mappingTreeView()->setFocus(); } +void MappingEditWidget::saveMappings(QString where){ + const QList<MappingData> mappingData = model()->mappingData(); + QByteArray saveVal; + QDataStream in(&saveVal, QIODevice::WriteOnly); + foreach(MappingData md, mappingData){ + in << md; + } + QSettings s; + s.setValue(where, saveVal); +} + +void MappingEditWidget::loadMappings(QString from){ + QSettings s; + QByteArray val = s.value(from).toByteArray(); + QDataStream out(&val, QIODevice::ReadOnly); + MappingData md; + while(!out.atEnd()){ + out >> md; + model()->addItem(md); + } + expandAllResults(); +} + MappingInputDialog::MappingInputDialog(QWidget *parent, Qt::WindowFlags f) : QDialog(parent, f){ mOk = new QPushButton(tr("Ok")); connect(mOk, SIGNAL(clicked()), this, SLOT(accept())); |