From 2a56e7483e29b26808e796a41be8ac4fc08926fb Mon Sep 17 00:00:00 2001 From: Arno Date: Sat, 17 Nov 2012 08:10:18 +0100 Subject: More fallout from the MappingTreeModel fix Forgot to fix the Edit widget... While at it, refresh the view if mappings changed in PicturesWidget. --- mappingtreemodel.cpp | 2 +- pictureswidget.cpp | 4 +++- pictureswidget.h | 1 + 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/mappingtreemodel.cpp b/mappingtreemodel.cpp index eed7d51..3d595c1 100644 --- a/mappingtreemodel.cpp +++ b/mappingtreemodel.cpp @@ -191,7 +191,7 @@ bool MappingTreeModel::setData(const QModelIndex &index, const QVariant &value, q = mUpdateChildQ; } q->bindValue(":value", value); - q->bindValue(":id", item->data(MappingId)); + q->bindValue(":id", item->data(DescId)); if(q->exec()){ item->setData(Name, value); emit dataChanged(index, index); diff --git a/pictureswidget.cpp b/pictureswidget.cpp index 9708802..29506e6 100644 --- a/pictureswidget.cpp +++ b/pictureswidget.cpp @@ -41,6 +41,7 @@ PicturesWidget::PicturesWidget(QWidget *parent) : QWidget(parent), mWindowTitleB connect(mMappingTree, SIGNAL(mappingChanged(int)), this, SLOT(constructWindowTitle())); connect(mPictureView, SIGNAL(editPicsMappings()), this, SLOT(editMappings())); connect(mPictureView, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(showInPicViewer(QModelIndex))); + connect(this, SIGNAL(editMappingsDone()), mPictureView, SLOT(refresh())); splitter->addWidget(mMappingTree); splitter->addWidget(mPictureView); splitter->setStretchFactor(0, 1); @@ -87,7 +88,7 @@ void PicturesWidget::editMappings(){ mEditDialog->editWidget()->setMappings(mappings); int retval = mEditDialog->exec(); if(retval == QDialog::Accepted){ - QList selMappings = mEditDialog->editWidget()->model()->columnValues(MappingTreeResultModel::ParentId); + QList selMappings = mEditDialog->editWidget()->model()->columnValues(MappingTreeResultModel::MappingId); if(selMappings.isEmpty()){ QMessageBox::critical(this, tr("Error"), tr("No mappings selected! Cowardly bailing out.")); return; @@ -99,6 +100,7 @@ void PicturesWidget::editMappings(){ } mPictureView->filesModel()->changeMappings(fileIds, selMappings); } + emit editMappingsDone(); } void PicturesWidget::constructWindowTitle(){ diff --git a/pictureswidget.h b/pictureswidget.h index 4d8db73..17894d1 100644 --- a/pictureswidget.h +++ b/pictureswidget.h @@ -51,6 +51,7 @@ class PicturesWidget : public QWidget { signals: void needWindowTitleChange(QString); + void editMappingsDone(); private: MappingTreeWidget *mMappingTree; -- cgit v1.2.3-70-g09d2