mirror of
https://github.com/ApfelTeeSaft/vb01.git
synced 2026-08-26 19:33:45 +00:00
corrected text and GUI rectangle removal
This commit is contained in:
+11
-5
@@ -207,18 +207,20 @@ namespace vb01Gui{
|
||||
for (int i = 0; i < guiRectangles.size(); i++) {
|
||||
if (r == guiRectangles[i]) {
|
||||
guiRectangles.erase(guiRectangles.begin() + i);
|
||||
Root::getSingleton()->getGuiNode()->dettachChild(r);
|
||||
delete r;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//TODO delete node too
|
||||
void AbstractGuiManager::removeText(Text* t) {
|
||||
for (int i = 0; i < texts.size(); i++) {
|
||||
if (t == texts[i]) {
|
||||
texts.erase(texts.begin() + i);
|
||||
delete t;
|
||||
Node *textNode = t->getNode();
|
||||
Root::getSingleton()->getGuiNode()->dettachChild(textNode);
|
||||
delete textNode;
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -311,8 +313,10 @@ namespace vb01Gui{
|
||||
|
||||
while(targetId != guiRectangles.size()) {
|
||||
if(find(exceptions.begin(), exceptions.end(), guiRectangles[targetId]) == exceptions.end()){
|
||||
delete guiRectangles[guiRectangles.size() - 1];
|
||||
Node *guiRect = guiRectangles[guiRectangles.size() - 1];
|
||||
guiRectangles.pop_back();
|
||||
Root::getSingleton()->getGuiNode()->dettachChild(guiRect);
|
||||
delete guiRect;
|
||||
}
|
||||
else
|
||||
targetId++;
|
||||
@@ -322,10 +326,12 @@ namespace vb01Gui{
|
||||
void AbstractGuiManager::removeAllTexts(vector<Text*> exceptions) {
|
||||
int targetId = 0;
|
||||
|
||||
while(targetId != textboxes.size()) {
|
||||
while(targetId != texts.size()) {
|
||||
if(find(exceptions.begin(), exceptions.end(), texts[targetId]) == exceptions.end()){
|
||||
delete texts[texts.size() - 1];
|
||||
Node *textNode = texts[texts.size() - 1]->getNode();
|
||||
texts.pop_back();
|
||||
Root::getSingleton()->getGuiNode()->dettachChild(textNode);
|
||||
delete textNode;
|
||||
}
|
||||
else
|
||||
targetId++;
|
||||
|
||||
Reference in New Issue
Block a user