Bug fix: when loading project solo/visible/locked were not activated in the mapping list widgets.

This commit is contained in:
Tats
2016-05-14 15:41:23 +00:00
parent d162c19c69
commit 015b4f40d6
3 changed files with 14 additions and 13 deletions
+1 -1
View File
@@ -2660,7 +2660,7 @@ void MainWindow::addMappingItem(uid mappingId)
contentTab->setCurrentWidget(mappingSplitter);
// Add item to layerList widget.
mappingListModel->addItem(icon, label, mappingId);
mappingListModel->addItem(mapping, icon, label);
mappingListModel->updateModel();
setCurrentMapping(mappingId);
+10 -10
View File
@@ -60,10 +60,10 @@ QVariant MappingListModel::data(const QModelIndex &index, int role) const
return QVariant(mappingList.at(index.row()).id);
break;
case Qt::EditRole:
return QVariant(mappingList.at(index.row()).name);
return QVariant(mappingList.at(index.row()).label);
break;
case Qt::DisplayRole:
return QVariant(mappingList.at(index.row()).name);
return QVariant(mappingList.at(index.row()).label);
break;
case Qt::DecorationRole:
return mappingList.at(index.row()).icon;
@@ -193,8 +193,8 @@ bool MappingListModel::setData(const QModelIndex &index, const QVariant &value,
}
if (role == Qt::EditRole && index.column() == MM::IconAndNameColum) {
if (mappingList[index.row()].name != value.toString()) {
mappingList[index.row()].name = value.toString();
if (mappingList[index.row()].label != value.toString()) {
mappingList[index.row()].label = value.toString();
emit dataChanged(index, index);
return true;
}
@@ -209,16 +209,16 @@ void MappingListModel::removeItem(int index)
mappingList.erase(it + index);
}
void MappingListModel::addItem(const QIcon &icon, const QString &name, int id)
void MappingListModel::addItem(Mapping::ptr mapping, const QIcon &icon, const QString &label)
{
MappingItem item;
item.id = mapping->getId();
item.icon = icon;
item.name = name;
item.isVisible = true;
item.isLocked = false;
item.isSolo = false;
item.id = id;
item.label = label;
item.isVisible = mapping->isVisible();
item.isLocked = mapping->isLocked();
item.isSolo = mapping->isSolo();
mappingList.insert(0, item);
}
+3 -2
View File
@@ -27,6 +27,7 @@
#include <QMimeData>
#include "MM.h"
#include "Mapping.h"
MM_BEGIN_NAMESPACE
@@ -55,7 +56,7 @@ public:
bool setData(const QModelIndex &index, const QVariant &value, int role) Q_DECL_OVERRIDE;
void removeItem(int index);
void addItem(const QIcon &icon, const QString &name, int id);
void addItem(Mapping::ptr mapping, const QIcon &icon, const QString &label);
void updateModel();
void clear();
@@ -69,7 +70,7 @@ private:
struct MappingItem {
int id;
QIcon icon;
QString name;
QString label;
bool isLocked;
bool isVisible;
bool isSolo;