minor refactor
This commit is contained in:
@@ -240,7 +240,7 @@ Hud::~Hud() {
|
|||||||
// removing all controlled ui
|
// removing all controlled ui
|
||||||
gui->remove(grabbedItemView);
|
gui->remove(grabbedItemView);
|
||||||
for (auto& element : elements) {
|
for (auto& element : elements) {
|
||||||
remove(element);
|
onRemove(element);
|
||||||
}
|
}
|
||||||
gui->remove(hotbarView);
|
gui->remove(hotbarView);
|
||||||
gui->remove(darkOverlay);
|
gui->remove(darkOverlay);
|
||||||
@@ -331,7 +331,7 @@ void Hud::update(bool visible) {
|
|||||||
for (auto& element : elements) {
|
for (auto& element : elements) {
|
||||||
element.update(pause, inventoryOpen, player->debug);
|
element.update(pause, inventoryOpen, player->debug);
|
||||||
if (element.isRemoved()) {
|
if (element.isRemoved()) {
|
||||||
remove(element);
|
onRemove(element);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -440,7 +440,7 @@ void Hud::add(HudElement element) {
|
|||||||
elements.push_back(element);
|
elements.push_back(element);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Hud::remove(HudElement& element) {
|
void Hud::onRemove(HudElement& element) {
|
||||||
auto document = element.getDocument();
|
auto document = element.getDocument();
|
||||||
if (document) {
|
if (document) {
|
||||||
Inventory* inventory = nullptr;
|
Inventory* inventory = nullptr;
|
||||||
@@ -456,12 +456,11 @@ void Hud::remove(HudElement& element) {
|
|||||||
gui->remove(element.getNode());
|
gui->remove(element.getNode());
|
||||||
}
|
}
|
||||||
|
|
||||||
// todo: refactor this garbage
|
|
||||||
void Hud::remove(std::shared_ptr<gui::UINode> node) {
|
void Hud::remove(std::shared_ptr<gui::UINode> node) {
|
||||||
for (auto& element : elements) {
|
for (auto& element : elements) {
|
||||||
if (element.getNode() == node) {
|
if (element.getNode() == node) {
|
||||||
element.setRemoved();
|
element.setRemoved();
|
||||||
remove(element);
|
onRemove(element);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
cleanup();
|
cleanup();
|
||||||
|
|||||||
+1
-1
@@ -148,7 +148,7 @@ public:
|
|||||||
void openPermanent(UiDocument* doc);
|
void openPermanent(UiDocument* doc);
|
||||||
|
|
||||||
void add(HudElement element);
|
void add(HudElement element);
|
||||||
void remove(HudElement& element);
|
void onRemove(HudElement& element);
|
||||||
void remove(std::shared_ptr<gui::UINode> node);
|
void remove(std::shared_ptr<gui::UINode> node);
|
||||||
|
|
||||||
Player* getPlayer() const;
|
Player* getPlayer() const;
|
||||||
|
|||||||
Reference in New Issue
Block a user