Propagate proper ctx, fixes fetchMore
This commit is contained in:
parent
3cfdb4e0c1
commit
b8870bb99c
@ -297,7 +297,7 @@ void DesignWidget::newContext(Context *ctx)
|
||||
auto belGetter = [](Context *ctx, BelId id) { return ctx->getBelName(id); };
|
||||
|
||||
getTreeByElementType(ElementType::BEL)
|
||||
->loadData(std::unique_ptr<TreeModel::ElementXYRoot<BelId>>(
|
||||
->loadData(ctx, std::unique_ptr<TreeModel::ElementXYRoot<BelId>>(
|
||||
new TreeModel::ElementXYRoot<BelId>(ctx, belMap, belGetter, ElementType::BEL)));
|
||||
}
|
||||
|
||||
@ -312,7 +312,7 @@ void DesignWidget::newContext(Context *ctx)
|
||||
}
|
||||
auto wireGetter = [](Context *ctx, WireId id) { return ctx->getWireName(id); };
|
||||
getTreeByElementType(ElementType::WIRE)
|
||||
->loadData(std::unique_ptr<TreeModel::ElementXYRoot<WireId>>(
|
||||
->loadData(ctx, std::unique_ptr<TreeModel::ElementXYRoot<WireId>>(
|
||||
new TreeModel::ElementXYRoot<WireId>(ctx, wireMap, wireGetter, ElementType::WIRE)));
|
||||
}
|
||||
|
||||
@ -326,14 +326,14 @@ void DesignWidget::newContext(Context *ctx)
|
||||
}
|
||||
auto pipGetter = [](Context *ctx, PipId id) { return ctx->getPipName(id); };
|
||||
getTreeByElementType(ElementType::PIP)
|
||||
->loadData(std::unique_ptr<TreeModel::ElementXYRoot<PipId>>(
|
||||
->loadData(ctx, std::unique_ptr<TreeModel::ElementXYRoot<PipId>>(
|
||||
new TreeModel::ElementXYRoot<PipId>(ctx, pipMap, pipGetter, ElementType::PIP)));
|
||||
}
|
||||
#endif
|
||||
getTreeByElementType(ElementType::CELL)
|
||||
->loadData(std::unique_ptr<TreeModel::IdStringList>(new TreeModel::IdStringList(ElementType::CELL)));
|
||||
->loadData(ctx, std::unique_ptr<TreeModel::IdStringList>(new TreeModel::IdStringList(ElementType::CELL)));
|
||||
getTreeByElementType(ElementType::NET)
|
||||
->loadData(std::unique_ptr<TreeModel::IdStringList>(new TreeModel::IdStringList(ElementType::NET)));
|
||||
->loadData(ctx, std::unique_ptr<TreeModel::IdStringList>(new TreeModel::IdStringList(ElementType::NET)));
|
||||
}
|
||||
updateTree();
|
||||
}
|
||||
@ -367,8 +367,8 @@ void DesignWidget::updateTree()
|
||||
nets.push_back(pair.first);
|
||||
}
|
||||
|
||||
getTreeByElementType(ElementType::CELL)->updateElements(ctx, cells);
|
||||
getTreeByElementType(ElementType::NET)->updateElements(ctx, nets);
|
||||
getTreeByElementType(ElementType::CELL)->updateElements(cells);
|
||||
getTreeByElementType(ElementType::NET)->updateElements(nets);
|
||||
}
|
||||
}
|
||||
QtProperty *DesignWidget::addTopLevelProperty(const QString &id)
|
||||
|
@ -154,20 +154,21 @@ Model::Model(QObject *parent) : QAbstractItemModel(parent), root_(new Item("Elem
|
||||
|
||||
Model::~Model() {}
|
||||
|
||||
void Model::loadData(std::unique_ptr<Item> data)
|
||||
void Model::loadData(Context *ctx, std::unique_ptr<Item> data)
|
||||
{
|
||||
beginResetModel();
|
||||
ctx_ = ctx;
|
||||
root_ = std::move(data);
|
||||
endResetModel();
|
||||
}
|
||||
|
||||
void Model::updateElements(Context *ctx, std::vector<IdString> elements)
|
||||
void Model::updateElements(std::vector<IdString> elements)
|
||||
{
|
||||
if (!ctx)
|
||||
if (!ctx_)
|
||||
return;
|
||||
|
||||
beginResetModel();
|
||||
root_->updateElements(ctx, elements);
|
||||
root_->updateElements(ctx_, elements);
|
||||
endResetModel();
|
||||
}
|
||||
|
||||
|
@ -352,8 +352,8 @@ class Model : public QAbstractItemModel
|
||||
Model(QObject *parent = nullptr);
|
||||
~Model();
|
||||
|
||||
void loadData(std::unique_ptr<Item> data);
|
||||
void updateElements(Context *ctx, std::vector<IdString> elements);
|
||||
void loadData(Context *ctx, std::unique_ptr<Item> data);
|
||||
void updateElements(std::vector<IdString> elements);
|
||||
Item *nodeFromIndex(const QModelIndex &idx) const;
|
||||
QModelIndex indexFromNode(Item *node)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user