mirror of
https://github.com/firestar5683/StarPilot.git
synced 2026-07-15 22:32:11 +08:00
cabana: only repaint changed cells in BinaryView::highlight (#27046)
dont update all cells on highlight old-commit-hash: de5f792b3e893711a47c8f4db04162ab259ef286
This commit is contained in:
@@ -40,8 +40,14 @@ QSize BinaryView::minimumSizeHint() const {
|
||||
|
||||
void BinaryView::highlight(const Signal *sig) {
|
||||
if (sig != hovered_sig) {
|
||||
for (int i = 0; i < model->items.size(); ++i) {
|
||||
auto &item_sigs = model->items[i].sigs;
|
||||
if ((sig && item_sigs.contains(sig)) || (hovered_sig && item_sigs.contains(hovered_sig))) {
|
||||
auto index = model->index(i / model->columnCount(), i % model->columnCount());
|
||||
emit model->dataChanged(index, index, {Qt::DisplayRole});
|
||||
}
|
||||
}
|
||||
hovered_sig = sig;
|
||||
model->dataChanged(model->index(0, 0), model->index(model->rowCount() - 1, model->columnCount() - 1));
|
||||
emit signalHovered(hovered_sig);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user