diff --git a/apps/opencs/model/world/columns.hpp b/apps/opencs/model/world/columns.hpp index c0994f381e..23837959d1 100644 --- a/apps/opencs/model/world/columns.hpp +++ b/apps/opencs/model/world/columns.hpp @@ -37,7 +37,10 @@ namespace CSMWorld template struct StringIdColumn : public Column { - StringIdColumn() : Column ("ID", ColumnBase::Display_String) {} + StringIdColumn (bool hidden = false) + : Column ("ID", ColumnBase::Display_String, + hidden ? 0 : ColumnBase::Flag_Table | ColumnBase::Flag_Dialogue) + {} virtual QVariant get (const Record& record) const { diff --git a/apps/opencs/model/world/data.cpp b/apps/opencs/model/world/data.cpp index ed11d4af01..3921754425 100644 --- a/apps/opencs/model/world/data.cpp +++ b/apps/opencs/model/world/data.cpp @@ -128,6 +128,7 @@ CSMWorld::Data::Data() : mRefs (mCells) mCells.addColumn (new FlagColumn ("Interior Sky", ESM::Cell::QuasiEx)); mCells.addColumn (new RegionColumn); + mRefs.addColumn (new StringIdColumn (true)); mRefs.addColumn (new RecordStateColumn); mRefs.addColumn (new CellColumn); mRefs.addColumn (new IdColumn); diff --git a/apps/opencs/view/world/table.cpp b/apps/opencs/view/world/table.cpp index 1ec0dde09c..00a302191a 100644 --- a/apps/opencs/view/world/table.cpp +++ b/apps/opencs/view/world/table.cpp @@ -209,7 +209,7 @@ void CSVWorld::Table::updateEditorSetting (const QString &settingName, const QSt { if (settingName == "Record Status Display") { - dynamic_cast(this->itemDelegateForColumn(1))->updateEditorSetting (settingName, settingValue); + dynamic_cast (*itemDelegateForColumn(1)).updateEditorSetting (settingName, settingValue); emit dataChanged(mModel->index(0,1), mModel->index(mModel->rowCount()-1, 1)); } }