diff options
author | Jacek Antonelli | 2009-05-24 02:59:02 -0500 |
---|---|---|
committer | Jacek Antonelli | 2009-05-24 02:59:08 -0500 |
commit | 811454f47ea1f3c5cb8971f0fed0959b18bd0747 (patch) | |
tree | 1b8689df2dc8857cdc5a956a5233d5bf94b5c8d7 /linden/indra/llui/llmenugl.cpp | |
parent | Second Life viewer sources 1.23.0-RC (diff) | |
download | meta-impy-811454f47ea1f3c5cb8971f0fed0959b18bd0747.zip meta-impy-811454f47ea1f3c5cb8971f0fed0959b18bd0747.tar.gz meta-impy-811454f47ea1f3c5cb8971f0fed0959b18bd0747.tar.bz2 meta-impy-811454f47ea1f3c5cb8971f0fed0959b18bd0747.tar.xz |
Second Life viewer sources 1.23.1-RC
Diffstat (limited to 'linden/indra/llui/llmenugl.cpp')
-rw-r--r-- | linden/indra/llui/llmenugl.cpp | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/linden/indra/llui/llmenugl.cpp b/linden/indra/llui/llmenugl.cpp index f2f2aae..253b30b 100644 --- a/linden/indra/llui/llmenugl.cpp +++ b/linden/indra/llui/llmenugl.cpp | |||
@@ -2178,7 +2178,9 @@ void LLMenuGL::arrange( void ) | |||
2178 | { | 2178 | { |
2179 | if ((*item_iter)->getVisible()) | 2179 | if ((*item_iter)->getVisible()) |
2180 | { | 2180 | { |
2181 | if (!getTornOff() && width + (*item_iter)->getNominalWidth() > max_width - spillover_item_width) | 2181 | if (!getTornOff() |
2182 | && item_iter != mItems.begin() // Don't spillover the first item! | ||
2183 | && width + (*item_iter)->getNominalWidth() > max_width - spillover_item_width) | ||
2182 | { | 2184 | { |
2183 | // no room for any more items | 2185 | // no room for any more items |
2184 | createSpilloverBranch(); | 2186 | createSpilloverBranch(); |
@@ -2188,8 +2190,9 @@ void LLMenuGL::arrange( void ) | |||
2188 | { | 2190 | { |
2189 | LLMenuItemGL* itemp = (*spillover_iter); | 2191 | LLMenuItemGL* itemp = (*spillover_iter); |
2190 | removeChild(itemp); | 2192 | removeChild(itemp); |
2191 | mSpilloverMenu->append(itemp); | 2193 | mSpilloverMenu->appendNoArrange(itemp); // *NOTE:Mani Favor addChild() in merge with skinning |
2192 | } | 2194 | } |
2195 | mSpilloverMenu->arrange(); // *NOTE: Mani Remove line in merge with skinning/viewer2.0 branch | ||
2193 | mItems.erase(item_iter, mItems.end()); | 2196 | mItems.erase(item_iter, mItems.end()); |
2194 | 2197 | ||
2195 | mItems.push_back(mSpilloverBranch); | 2198 | mItems.push_back(mSpilloverBranch); |
@@ -2215,7 +2218,9 @@ void LLMenuGL::arrange( void ) | |||
2215 | { | 2218 | { |
2216 | if ((*item_iter)->getVisible()) | 2219 | if ((*item_iter)->getVisible()) |
2217 | { | 2220 | { |
2218 | if (!getTornOff() && height + (*item_iter)->getNominalHeight() > max_height - spillover_item_height) | 2221 | if (!getTornOff() |
2222 | && item_iter != mItems.begin() // Don't spillover the first item! | ||
2223 | && height + (*item_iter)->getNominalHeight() > max_height - spillover_item_height) | ||
2219 | { | 2224 | { |
2220 | // no room for any more items | 2225 | // no room for any more items |
2221 | createSpilloverBranch(); | 2226 | createSpilloverBranch(); |
@@ -2225,8 +2230,9 @@ void LLMenuGL::arrange( void ) | |||
2225 | { | 2230 | { |
2226 | LLMenuItemGL* itemp = (*spillover_iter); | 2231 | LLMenuItemGL* itemp = (*spillover_iter); |
2227 | removeChild(itemp); | 2232 | removeChild(itemp); |
2228 | mSpilloverMenu->append(itemp); | 2233 | mSpilloverMenu->appendNoArrange(itemp); // *NOTE:Mani Favor addChild() in merge with skinning |
2229 | } | 2234 | } |
2235 | mSpilloverMenu->arrange(); // *NOTE: Mani Remove line in merge with skinning/viewer2.0 branch | ||
2230 | mItems.erase(item_iter, mItems.end()); | 2236 | mItems.erase(item_iter, mItems.end()); |
2231 | mItems.push_back(mSpilloverBranch); | 2237 | mItems.push_back(mSpilloverBranch); |
2232 | addChild(mSpilloverBranch); | 2238 | addChild(mSpilloverBranch); |
@@ -2477,6 +2483,15 @@ BOOL LLMenuGL::append( LLMenuItemGL* item ) | |||
2477 | return TRUE; | 2483 | return TRUE; |
2478 | } | 2484 | } |
2479 | 2485 | ||
2486 | // *NOTE:Mani - appendNoArrange() should be removed when merging to skinning/viewer2.0 | ||
2487 | // Its added as a fix to a viewer 1.23 bug that has already been address by skinning work. | ||
2488 | BOOL LLMenuGL::appendNoArrange( LLMenuItemGL* item ) | ||
2489 | { | ||
2490 | mItems.push_back( item ); | ||
2491 | addChild( item ); | ||
2492 | return TRUE; | ||
2493 | } | ||
2494 | |||
2480 | // add a separator to this menu | 2495 | // add a separator to this menu |
2481 | BOOL LLMenuGL::appendSeparator( const std::string &separator_name ) | 2496 | BOOL LLMenuGL::appendSeparator( const std::string &separator_name ) |
2482 | { | 2497 | { |