Port dirty block handling from JGRPP

This commit is contained in:
dP
2023-03-29 21:47:07 +04:00
parent ef7d1c5f04
commit ef9f6aa7f3
22 changed files with 837 additions and 193 deletions

View File

@@ -1829,6 +1829,15 @@ public:
{
for (NWidgetBase *child_wid = this->head; child_wid != nullptr; child_wid = child_wid->next) child_wid->Draw(w);
}
void FillDirtyWidgets(std::vector<NWidgetBase *> &dirty_widgets) override
{
if (this->base_flags & WBF_DIRTY) {
dirty_widgets.push_back(this);
} else {
for (NWidgetBase *child_wid = this->head; child_wid != nullptr; child_wid = child_wid->next) child_wid->FillDirtyWidgets(dirty_widgets);
}
}
};
/** Widget parts of the smallmap display. */