mirror of
https://gitlab.com/OpenMW/openmw.git
synced 2025-02-04 03:40:14 +00:00
Hide base land textures.
This commit is contained in:
parent
dfcbee3ab1
commit
137ea872d3
@ -18,7 +18,7 @@ opencs_hdrs_noqt (model/doc
|
|||||||
|
|
||||||
|
|
||||||
opencs_units (model/world
|
opencs_units (model/world
|
||||||
idtable idtableproxymodel regionmap data commanddispatcher idtablebase resourcetable nestedtableproxymodel idtree infotableproxymodel
|
idtable idtableproxymodel regionmap data commanddispatcher idtablebase resourcetable nestedtableproxymodel idtree infotableproxymodel landtexturetableproxymodel
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
21
apps/opencs/model/world/landtexturetableproxymodel.cpp
Normal file
21
apps/opencs/model/world/landtexturetableproxymodel.cpp
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
#include "landtexturetableproxymodel.hpp"
|
||||||
|
|
||||||
|
#include "idtable.hpp"
|
||||||
|
|
||||||
|
namespace CSMWorld
|
||||||
|
{
|
||||||
|
LandTextureTableProxyModel::LandTextureTableProxyModel(QObject* parent)
|
||||||
|
: IdTableProxyModel(parent)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
bool LandTextureTableProxyModel::filterAcceptsRow (int sourceRow, const QModelIndex& sourceParent) const
|
||||||
|
{
|
||||||
|
int columnIndex = mSourceModel->findColumnIndex(Columns::ColumnId_Modification);
|
||||||
|
QModelIndex index = mSourceModel->index(sourceRow, columnIndex);
|
||||||
|
if (mSourceModel->data(index).toInt() != RecordBase::State_ModifiedOnly)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return IdTableProxyModel::filterAcceptsRow(sourceRow, sourceParent);
|
||||||
|
}
|
||||||
|
}
|
22
apps/opencs/model/world/landtexturetableproxymodel.hpp
Normal file
22
apps/opencs/model/world/landtexturetableproxymodel.hpp
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
#ifndef CSM_WORLD_LANDTEXTURETABLEPROXYMODEL_H
|
||||||
|
#define CSM_WORLD_LANDTEXTURETABLEPROXYMODEL_H
|
||||||
|
|
||||||
|
#include "idtableproxymodel.hpp"
|
||||||
|
|
||||||
|
namespace CSMWorld
|
||||||
|
{
|
||||||
|
/// \brief Removes base records from filtered results.
|
||||||
|
class LandTextureTableProxyModel : public IdTableProxyModel
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
public:
|
||||||
|
|
||||||
|
LandTextureTableProxyModel(QObject* parent = nullptr);
|
||||||
|
|
||||||
|
protected:
|
||||||
|
|
||||||
|
bool filterAcceptsRow (int sourceRow, const QModelIndex& sourceParent) const override;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
@ -16,6 +16,7 @@
|
|||||||
#include "../../model/world/idtableproxymodel.hpp"
|
#include "../../model/world/idtableproxymodel.hpp"
|
||||||
#include "../../model/world/idtablebase.hpp"
|
#include "../../model/world/idtablebase.hpp"
|
||||||
#include "../../model/world/idtable.hpp"
|
#include "../../model/world/idtable.hpp"
|
||||||
|
#include "../../model/world/landtexturetableproxymodel.hpp"
|
||||||
#include "../../model/world/record.hpp"
|
#include "../../model/world/record.hpp"
|
||||||
#include "../../model/world/columns.hpp"
|
#include "../../model/world/columns.hpp"
|
||||||
#include "../../model/world/commanddispatcher.hpp"
|
#include "../../model/world/commanddispatcher.hpp"
|
||||||
@ -236,10 +237,15 @@ CSVWorld::Table::Table (const CSMWorld::UniversalId& id,
|
|||||||
|
|
||||||
bool isInfoTable = id.getType() == CSMWorld::UniversalId::Type_TopicInfos ||
|
bool isInfoTable = id.getType() == CSMWorld::UniversalId::Type_TopicInfos ||
|
||||||
id.getType() == CSMWorld::UniversalId::Type_JournalInfos;
|
id.getType() == CSMWorld::UniversalId::Type_JournalInfos;
|
||||||
|
bool isLtexTable = (id.getType() == CSMWorld::UniversalId::Type_LandTextures);
|
||||||
if (isInfoTable)
|
if (isInfoTable)
|
||||||
{
|
{
|
||||||
mProxyModel = new CSMWorld::InfoTableProxyModel(id.getType(), this);
|
mProxyModel = new CSMWorld::InfoTableProxyModel(id.getType(), this);
|
||||||
}
|
}
|
||||||
|
else if (isLtexTable)
|
||||||
|
{
|
||||||
|
mProxyModel = new CSMWorld::LandTextureTableProxyModel (this);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
mProxyModel = new CSMWorld::IdTableProxyModel (this);
|
mProxyModel = new CSMWorld::IdTableProxyModel (this);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user