aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/llui/llfloater.cpp
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--linden/indra/llui/llfloater.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/linden/indra/llui/llfloater.cpp b/linden/indra/llui/llfloater.cpp
index 5c46d54..f6451a1 100644
--- a/linden/indra/llui/llfloater.cpp
+++ b/linden/indra/llui/llfloater.cpp
@@ -2171,6 +2171,37 @@ void LLFloaterView::destroyAllChildren()
2171 LLView::deleteAllChildren(); 2171 LLView::deleteAllChildren();
2172} 2172}
2173 2173
2174void LLFloaterView::minimizeAllChildren()
2175{
2176 // iterate over a copy of the list, because closing windows will destroy
2177 // some windows on the list.
2178 child_list_t child_list = *(getChildList());
2179
2180 for (child_list_const_iter_t it = child_list.begin(); it != child_list.end(); ++it)
2181 {
2182 LLView* viewp = *it;
2183 child_list_const_iter_t exists = std::find(getChildList()->begin(), getChildList()->end(), viewp);
2184 if (exists == getChildList()->end())
2185 {
2186 // this floater has already been removed
2187 continue;
2188 }
2189
2190 LLFloater* floaterp = (LLFloater*)viewp;
2191
2192 if (floaterp)
2193 {
2194 if (!floaterp->isDead()
2195 && floaterp->getVisible()
2196 && floaterp->isMinimizeable()
2197 && !floaterp->isMinimized())
2198 {
2199 floaterp->setMinimized(TRUE);
2200 }
2201 }
2202 }
2203}
2204
2174void LLFloaterView::closeAllChildren(bool app_quitting) 2205void LLFloaterView::closeAllChildren(bool app_quitting)
2175{ 2206{
2176 // iterate over a copy of the list, because closing windows will destroy 2207 // iterate over a copy of the list, because closing windows will destroy