common scene: code refactoring.

keep it clean and less LOC.
This commit is contained in:
Hermet Park 2021-06-22 11:46:42 +09:00 committed by Hermet Park
parent b791924983
commit 39bf94e506
2 changed files with 6 additions and 12 deletions

View file

@ -172,19 +172,13 @@ struct Scene::Impl
void clear(bool free) void clear(bool free)
{ {
//Clear render target before drawing auto dispose = renderer ? true : false;
if (renderer && renderer->clear()) {
for (auto paint = paints.data; paint < (paints.data + paints.count); ++paint) { for (auto paint = paints.data; paint < (paints.data + paints.count); ++paint) {
(*paint)->pImpl->dispose(*renderer); if (dispose) (*paint)->pImpl->dispose(*renderer);
} if (free) delete(*paint);
renderer = nullptr; renderer = nullptr;
} }
//free paints
if (free) {
for (auto paint = paints.data; paint < (paints.data + paints.count); ++paint) {
delete(*paint);
}
}
paints.clear(); paints.clear();
} }
}; };