diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-06-15 23:10:56 +0300 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-06-15 23:11:22 +0300 |
commit | 44e746c2068aa983c15336277fc8f988fcb94303 (patch) | |
tree | 01d9410b3f23176c70212cd3e5714463ef290d33 /indra | |
parent | 4de5576fb4bea538f3381f581d3caf54ee03fb05 (diff) |
Revert "SL-18977 Borders of inventory view in inventory floater seem to be cut a bit"
This reverts commit 7ac094e92105122b22b4693dafae7f0cee72d9a0.
Commit breaks gallery panel, it is not ready.
Diffstat (limited to 'indra')
-rw-r--r-- | indra/llui/llscrollcontainer.cpp | 8 | ||||
-rw-r--r-- | indra/llui/lltabcontainer.cpp | 8 | ||||
-rw-r--r-- | indra/newview/llinventorypanel.cpp | 1 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/floater_my_inventory.xml | 26 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/panel_main_inventory.xml | 473 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/sidepanel_inventory.xml | 244 |
6 files changed, 401 insertions, 359 deletions
diff --git a/indra/llui/llscrollcontainer.cpp b/indra/llui/llscrollcontainer.cpp index 5872b79bb0..c4cb739f0a 100644 --- a/indra/llui/llscrollcontainer.cpp +++ b/indra/llui/llscrollcontainer.cpp @@ -124,9 +124,9 @@ LLScrollContainer::LLScrollContainer(const LLScrollContainer::Params& p) mScrollbar[VERTICAL] = LLUICtrlFactory::create<LLScrollbar> (sbparams); LLView::addChild( mScrollbar[VERTICAL] ); - LLRect horizontal_scroll_rect; - horizontal_scroll_rect.mRight = mInnerRect.getWidth(); - horizontal_scroll_rect.mTop = scrollbar_size; + LLRect horizontal_scroll_rect = mInnerRect; + horizontal_scroll_rect.mTop = horizontal_scroll_rect.mBottom + scrollbar_size; + horizontal_scroll_rect.mLeft += 3; sbparams.name("scrollable horizontal"); sbparams.rect(horizontal_scroll_rect); sbparams.orientation(LLScrollbar::HORIZONTAL); @@ -135,7 +135,7 @@ LLScrollContainer::LLScrollContainer(const LLScrollContainer::Params& p) sbparams.page_size(mInnerRect.getWidth()); sbparams.step_size(VERTICAL_MULTIPLE); sbparams.visible(false); - sbparams.follows.flags(FOLLOWS_LEFT | FOLLOWS_RIGHT | FOLLOWS_BOTTOM); + sbparams.follows.flags(FOLLOWS_LEFT | FOLLOWS_RIGHT); sbparams.change_callback(p.scroll_callback); mScrollbar[HORIZONTAL] = LLUICtrlFactory::create<LLScrollbar> (sbparams); LLView::addChild( mScrollbar[HORIZONTAL] ); diff --git a/indra/llui/lltabcontainer.cpp b/indra/llui/lltabcontainer.cpp index d5d337848c..8c841540a5 100644 --- a/indra/llui/lltabcontainer.cpp +++ b/indra/llui/lltabcontainer.cpp @@ -986,7 +986,7 @@ void LLTabContainer::addTabPanel(const TabPanelParams& panel) // Tab panel S32 tab_panel_top; S32 tab_panel_bottom; - if (!getTabsHidden()) + if (!getTabsHidden()) { if( getTabPosition() == LLTabContainer::TOP ) { @@ -1002,7 +1002,7 @@ void LLTabContainer::addTabPanel(const TabPanelParams& panel) } else { - // Skip tab button space if tabs are invisible (EXT-576) + //Scip tab button space if they are invisible(EXT - 576) tab_panel_top = getRect().getHeight(); tab_panel_bottom = LLPANEL_BORDER_WIDTH; } @@ -1017,9 +1017,9 @@ void LLTabContainer::addTabPanel(const TabPanelParams& panel) } else { - tab_panel_rect = LLRect(LLPANEL_BORDER_WIDTH * 2, + tab_panel_rect = LLRect(LLPANEL_BORDER_WIDTH, tab_panel_top, - getRect().getWidth(), + getRect().getWidth()-LLPANEL_BORDER_WIDTH, tab_panel_bottom ); } child->setFollowsAll(); diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp index 2fefacf90b..f7a24a09c0 100644 --- a/indra/newview/llinventorypanel.cpp +++ b/indra/newview/llinventorypanel.cpp @@ -298,6 +298,7 @@ void LLInventoryPanel::initFolderRoot() // Scroller LLRect scroller_view_rect = getRect(); scroller_view_rect.translate(-scroller_view_rect.mLeft, -scroller_view_rect.mBottom); + scroller_view_rect.mTop -= 3; LLScrollContainer::Params scroller_params(mParams.scroll()); scroller_params.rect(scroller_view_rect); mScroller = LLUICtrlFactory::create<LLFolderViewScrollContainer>(scroller_params); diff --git a/indra/newview/skins/default/xui/en/floater_my_inventory.xml b/indra/newview/skins/default/xui/en/floater_my_inventory.xml index b75744d432..a9900f05b7 100644 --- a/indra/newview/skins/default/xui/en/floater_my_inventory.xml +++ b/indra/newview/skins/default/xui/en/floater_my_inventory.xml @@ -1,22 +1,22 @@ <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <floater - name="floater_my_inventory" - title="INVENTORY" - help_topic="sidebar_inventory" positioning="cascading" - width="363" + can_close="true" + can_resize="true" height="570" + help_topic="sidebar_inventory" min_width="363" min_height="270" - can_close="true" - can_resize="true" + name="floater_my_inventory" save_rect="true" save_visibility="true" - reuse_instance="true" > - <panel - name="main_panel" - class="sidepanel_inventory" - filename="sidepanel_inventory.xml" - follows="all" - top="0" /> + reuse_instance="true" + title="INVENTORY" + width="363" > + <panel + class="sidepanel_inventory" + name="main_panel" + filename="sidepanel_inventory.xml" + follows="all" + top="0"/> </floater> diff --git a/indra/newview/skins/default/xui/en/panel_main_inventory.xml b/indra/newview/skins/default/xui/en/panel_main_inventory.xml index b170885178..64b885c222 100644 --- a/indra/newview/skins/default/xui/en/panel_main_inventory.xml +++ b/indra/newview/skins/default/xui/en/panel_main_inventory.xml @@ -1,12 +1,13 @@ <?xml version="1.0" encoding="utf-8" standalone="yes" ?> <panel - name="main inventory panel" follows="all" height="423" label="Things" layout="topleft" min_height="300" - min_width="240" > + min_width="240" + name="main inventory panel" + width="355"> <panel.string name="Itemcount"> </panel.string> @@ -26,18 +27,18 @@ <panel.string name="default_mode_btn">Multi_Folder_Mode</panel.string> <panel.string name="single_folder_mode_btn">Single_Folder_Mode</panel.string> <text - name="ItemcountText" - type="string" - length="1" - follows="left|top|right" - layout="topleft" - height="13" - left="10" - right="-10" - font="SansSerifMedium" - text_color="InventoryItemLinkColor" - use_ellipses="true" - top_pad="0"> + type="string" + length="1" + follows="left|top|right" + height="13" + layout="topleft" + left="12" + name="ItemcountText" + font="SansSerifMedium" + text_color="InventoryItemLinkColor" + use_ellipses="true" + top_pad="0" + width="300"> Items: </text> <layout_stack @@ -45,282 +46,298 @@ height="25" animate="false" top_pad="10" - left="8" + left="2" orientation="horizontal"> <layout_panel - name="nav_buttons" - width="65" - height="25" border="false" bevel_style="in" user_resize="false" auto_resize="false" + height="25" + width="65" + name="nav_buttons" visible="false"> - <button - name="back_btn" - follows="top|left" - image_selected="Single_Folder_Back" - image_pressed="Single_Folder_Back" - image_unselected="Single_Folder_Back" - scale_image="false" - layout="topleft" - top="2" - left="3" - width="20" - height="23" - tool_tip="Back" /> - <button - name="forward_btn" - follows="top|left" - image_selected="Single_Folder_Forward" - image_pressed="Single_Folder_Forward" - image_unselected="Single_Folder_Forward" - scale_image="false" - layout="topleft" - width="20" - height="23" - left_pad="1" - tool_tip="Forward" /> - <button - name="up_btn" - follows="top|left" - image_selected="Single_Folder_Up" - image_pressed="Single_Folder_Up" - image_unselected="Single_Folder_Up" - scale_image="false" - layout="topleft" - width="20" - height="23" - left_pad="1" - tool_tip="Go up one level" /> + <button + follows="top|left" + height="23" + image_selected="Single_Folder_Back" + image_pressed="Single_Folder_Back" + image_unselected="Single_Folder_Back" + scale_image="false" + layout="topleft" + left="3" + top="2" + name="back_btn" + tool_tip="Back" + width="20" /> + <button + follows="top|left" + height="23" + image_selected="Single_Folder_Forward" + image_pressed="Single_Folder_Forward" + image_unselected="Single_Folder_Forward" + scale_image="false" + layout="topleft" + left_pad="1" + name="forward_btn" + tool_tip="Forward" + width="20" /> + <button + follows="top|left" + height="23" + image_selected="Single_Folder_Up" + image_pressed="Single_Folder_Up" + image_unselected="Single_Folder_Up" + scale_image="false" + layout="topleft" + left_pad="1" + name="up_btn" + tool_tip="Go up one level" + width="20" /> </layout_panel> <layout_panel - width="381" - height="25" - border="false" - bevel_style="in" - user_resize="false"> + border="false" + bevel_style="in" + user_resize="false" + height="25" + width="375" + visible="true"> <combo_box - name="search_type" - follows="top|left" + height="23" layout="topleft" left="2" - width="67" - height="23" - tool_tip="Search by" > - <item - name="Name" - label="Name" - value="search_by_name"/> - <item - name="Creator" - label="Creator" - value="search_by_creator"/> - <item - name="Description" - label="Description" - value="search_by_description"/> - <item - name="UUID" - label="UUID" - value="search_by_UUID"/> + top="0" + name="search_type" + tool_tip="Search by" + follows="top|left" + width="67"> + <item + label="Name" + name="Name" + value="search_by_name"/> + <item + label="Creator" + name="Creator" + value="search_by_creator"/> + <item + label="Description" + name="Description" + value="search_by_description"/> + <item + label="UUID" + name="UUID" + value="search_by_UUID"/> </combo_box> <menu_button - name="options_visibility_btn" follows="top|left" - layout="topleft" - width="31" + tool_tip="Search visibility options" height="23" + image_overlay="Inv_Toolbar_SearchVisibility" + layout="topleft" left_pad="1" - tool_tip="Search visibility options" - image_overlay="Inv_Toolbar_SearchVisibility" /> + name="options_visibility_btn" + width="31" /> <filter_editor - name="inventory search editor" - label="Enter search text" text_pad_left="10" follows="left|top|right" - layout="topleft" - width="150" height="23" + label="Enter search text" + layout="topleft" left_pad="1" max_length_chars="300" - highlight_text_field="true" /> + highlight_text_field="true" + name="inventory search editor" + width="150" /> <menu_button - name="options_gear_btn" follows="top|right" - layout="topleft" - width="31" - height="23" - left_pad="1" tool_tip="Actions" + height="23" + image_hover_unselected="Toolbar_Middle_Over" image_overlay="OptionsMenu_Off" image_selected="Toolbar_Middle_Selected" image_unselected="Toolbar_Middle_Off" - image_hover_unselected="Toolbar_Middle_Over" /> - <menu_button - name="view_btn" - follows="top|right" layout="topleft" - width="31" - height="23" left_pad="1" + name="options_gear_btn" + width="31" /> + <menu_button + follows="top|right" tool_tip="View & sort options" + height="23" + image_hover_unselected="Toolbar_Middle_Over" image_overlay="Conv_toolbar_sort" image_selected="Toolbar_Middle_Selected" image_unselected="Toolbar_Middle_Off" - image_hover_unselected="Toolbar_Middle_Over" /> + layout="topleft" + left_pad="1" + name="view_btn" + width="31" /> <button - name="add_btn" follows="top|right" - layout="topleft" - width="31" height="23" - left_pad="1" - tool_tip="Create new item" + image_hover_unselected="Toolbar_Middle_Over" image_overlay="AddItem_Off" image_selected="Toolbar_Middle_Selected" image_unselected="Toolbar_Middle_Off" - image_hover_unselected="Toolbar_Middle_Over" /> - <button - name="view_mode_btn" - follows="top|right" layout="topleft" - width="31" - height="23" left_pad="1" + name="add_btn" + tool_tip="Create new item" + width="31" /> + <button + follows="top|right" tool_tip="Switch between views" + height="23" + image_hover_unselected="Toolbar_Middle_Over" image_overlay="Single_Folder_Mode" image_selected="Toolbar_Middle_Selected" image_unselected="Toolbar_Middle_Off" - image_hover_unselected="Toolbar_Middle_Over" /> + layout="topleft" + left_pad="1" + name="view_mode_btn" + width="31" /> </layout_panel> - </layout_stack> - <panel - name="default_inventory_panel" - layout="topleft" - follows="all" - height="372" - top_pad="10" - halign="center"> - <tab_container - name="inventory filter tabs" + </layout_stack> + <panel follows="all" + halign="center" + height="372" layout="topleft" - top="0" - bottom="-1" - tab_height="30" - tab_position="top" - tab_min_width="100" - halign="center"> - <inventory_panel - name="All Items" - label="MY INVENTORY" - bg_opaque_color="DkGray2" - bg_alpha_color="DkGray2" - background_visible="true" - layout="topleft" + left="7" + name="default_inventory_panel" + top_pad="10" + width="312"> + <tab_container follows="all" - help_topic="my_inventory_tab" - show_item_link_overlays="true" - preinitialize_views="false" - sort_order_setting="InventorySortOrder" - scroll.reserve_scroll_corner="false"> - <folder double_click_override="true"/> - </inventory_panel> - <recent_inventory_panel - name="Recent Items" - label="RECENT" - bg_opaque_color="DkGray2" - bg_alpha_color="DkGray2" - background_visible="true" + halign="center" + height="372" layout="topleft" - follows="all" - left_pad="10" - help_topic="recent_inventory_tab" - show_item_link_overlays="true" - preinitialize_views="false" - scroll.reserve_scroll_corner="false"> - <folder double_click_override="true"/> - </recent_inventory_panel> - <inventory_panel - name="Worn Items" - label="WORN" - bg_opaque_color="DkGray2" - bg_alpha_color="DkGray2" - background_visible="true" - layout="topleft" - follows="all" - show_item_link_overlays="true" - preinitialize_views="false" - show_empty_message="false" - scroll.reserve_scroll_corner="false"> - <folder double_click_override="true"/> - </inventory_panel> - </tab_container> - </panel> - <panel - follows="all" - halign="center" - height="372" - layout="topleft" - left="7" - name="combination_view_inventory" - top_delta="0" - visible="false" - xwidth="306"> - <layout_stack + left="0" + name="inventory filter tabs" + tab_height="30" + tab_position="top" + tab_min_width="100" + top="0" + width="312"> + <inventory_panel + bg_opaque_color="DkGray2" + bg_alpha_color="DkGray2" + background_visible="true" + border="false" + bevel_style="none" + follows="all" + height="338" + label="MY INVENTORY" + help_topic="my_inventory_tab" + layout="topleft" + left="0" + name="All Items" + sort_order_setting="InventorySortOrder" + show_item_link_overlays="true" + preinitialize_views="false" + top="16" + width="288"> + <folder double_click_override="true"/> + </inventory_panel> + <recent_inventory_panel + bg_opaque_color="DkGray2" + bg_alpha_color="DkGray2" + background_visible="true" + border="false" + bevel_style="none" + follows="all" + height="338" + label="RECENT" + help_topic="recent_inventory_tab" + layout="topleft" + left_delta="0" + name="Recent Items" + show_item_link_overlays="true" + preinitialize_views="false" + width="290"> + <folder double_click_override="true"/> + </recent_inventory_panel> + <inventory_panel + name="Worn Items" + label="WORN" + show_empty_message="false" + follows="all" + layout="topleft" + width="290" + bg_opaque_color="DkGray2" + bg_alpha_color="DkGray2" + background_visible="true" + preinitialize_views="false" + border="false" + bevel_style="none" + scroll.reserve_scroll_corner="false"> + <folder double_click_override="true"/> + </inventory_panel> + </tab_container> + </panel> + <panel follows="all" - layout="topleft" + halign="center" height="372" - xwidth="306" - animate="false" - drag_handle_gap="13" - drag_handle_thickness="6" - drag_handle_first_indent="18" - drag_handle_second_indent="18" - drag_handle_shift="5" - show_drag_handle="true" - top="0" - left="0" - orientation="vertical"> - <layout_panel - border="false" - bevel_style="in" - user_resize="true" - auto_resize="true" - height="246" - xwidth="306" - min_width="150" - name="comb_gallery_layout"> + layout="topleft" + left="7" + name="combination_view_inventory" + top_delta="0" + visible="false" + width="312"> + <layout_stack + follows="all" + layout="topleft" + height="372" + width="312" + animate="false" + drag_handle_gap="13" + drag_handle_thickness="6" + drag_handle_first_indent="18" + drag_handle_second_indent="18" + drag_handle_shift="5" + show_drag_handle="true" + top="0" + left="0" + orientation="vertical"> + <layout_panel + border="false" + bevel_style="in" + user_resize="true" + auto_resize="true" + height="246" + width="312" + min_width="150" + name="comb_gallery_layout"> <panel class="inventory_gallery" filename="panel_inventory_gallery.xml" left="0" top="1" height="246" - xwidth="304" + width="312" name="comb_gallery_view_inv" background_visible="true" follows="all" layout="topleft"> </panel> - </layout_panel> - <layout_panel - border="false" - bevel_style="in" - user_resize="true" - auto_resize="true" - height="126" - xwidth="306" - min_height="100" - name="comb_inventory_layout"> + </layout_panel> + <layout_panel + border="false" + bevel_style="in" + user_resize="true" + auto_resize="true" + height="126" + width="312" + min_height="100" + name="comb_inventory_layout"> <single_folder_inventory_panel name="comb_single_folder_inv" follows="all" left="0" top="1" height="126" - xwidth="304" + width="312" layout="topleft" show_item_link_overlays="true" bg_opaque_color="DkGray2" @@ -329,14 +346,14 @@ border="false" bevel_style="none" scroll.reserve_scroll_corner="false"> - <item - single_folder_mode="true" - folder_indentation="-8"/> - <folder - single_folder_mode="true" - folder_indentation="-8"/> + <item + single_folder_mode="true" + folder_indentation="-8"/> + <folder + single_folder_mode="true" + folder_indentation="-8"/> </single_folder_inventory_panel> - </layout_panel> - </layout_stack> - </panel> + </layout_panel> + </layout_stack> + </panel> </panel> diff --git a/indra/newview/skins/default/xui/en/sidepanel_inventory.xml b/indra/newview/skins/default/xui/en/sidepanel_inventory.xml index c1c534f734..dfd3e3bf9d 100644 --- a/indra/newview/skins/default/xui/en/sidepanel_inventory.xml +++ b/indra/newview/skins/default/xui/en/sidepanel_inventory.xml @@ -1,113 +1,137 @@ <?xml version="1.0" encoding="utf-8" standalone="yes" ?> <panel - name="objects panel" - label="Things" - layout="topleft" - follows="all" - height="570" - min_height="350" - min_width="240"> - <panel - name="sidepanel_inventory_panel" - layout="topleft" - follows="all" - top="0" - height="570" - default_tab_group="1"> - <layout_stack - name="inventory_layout_stack" - layout="topleft" - follows="all" - top="0" - height="560" - tab_group="1" - orientation="vertical"> - <layout_panel - name="main_inventory_layout_panel" - layout="topleft" - follows="bottom|left|right" - height="300" - auto_resize="true" - user_resize="true" - min_dim="150"> - <panel - name="panel_main_inventory" - class="panel_main_inventory" - filename="panel_main_inventory.xml" - layout="topleft" - follows="all" - top="0" - height="300" /> - </layout_panel> - <layout_panel - name="inbox_layout_panel" - follows="left|right|top" - layout="topleft" - min_dim="35" - expanded_min_dim="90" - auto_resize="false" - user_resize="true" > - <panel - name="marketplace_inbox" - class="panel_marketplace_inbox" - layout="topleft" - follows="all" > - <string name="InboxLabelWithArg">Received items ([NUM])</string> - <string name="InboxLabelNoArg">Received items</string> - <button - name="inbox_btn" - control_name="InventoryInboxToggleState" - label="Received items" - font="SansSerifMedium" - follows="top|left|right" - height="35" - image_unselected="MarketplaceBtn_Off" - image_selected="MarketplaceBtn_Selected" - pad_left="35" - left="10" - right="-10" - halign="left" - is_toggle="true" - tab_stop="false" - handle_right_mouse="false" /> - <text - name="inbox_fresh_new_count" - font="SansSerifMedium" - type="string" - length="1" - follows="right|top" - layout="topleft" - height="13" - top_pad="0" - top="10" - right="-20" - halign="right"> - [NUM] new - </text> - <panel - name="inbox_inventory_placeholder_panel" - bg_opaque_color="InventoryBackgroundColor" - background_visible="true" - background_opaque="true" - follows="all" - top="36" - right="-10" - bottom="10" - tool_tip="Drag and drop items to your inventory to use them" > - <text - name="inbox_inventory_placeholder" - type="string" - follows="all" - layout="topleft" - top="1" - bottom="-1" - wrap="true" - halign="center"> - Purchases from the marketplace will be delivered here. - </text> - </panel> - </panel> - </layout_panel> - </layout_stack> - </panel> + follows="all" + height="570" + label="Things" + layout="topleft" + min_height="350" + min_width="240" + name="objects panel" + width="358"> + <panel + follows="all" + layout="topleft" + left="0" + name="sidepanel_inventory_panel" + top="0" + label="" + height="570" + visible="true" + default_tab_group="1" + width="395"> + <layout_stack + follows="left|right|top|bottom" + layout="topleft" + left="0" + top="0" + tab_group="1" + orientation="vertical" + name="inventory_layout_stack" + height="565" + width="395"> + <layout_panel + name="main_inventory_layout_panel" + layout="topleft" + auto_resize="true" + user_resize="true" + min_dim="150" + width="395" + follows="bottom|left|right" + height="300"> + <panel + class="panel_main_inventory" + filename="panel_main_inventory.xml" + follows="all" + layout="topleft" + left="0" + name="panel_main_inventory" + top="0" + label="" + height="300" + width="395" /> + </layout_panel> + <layout_panel + width="355" + layout="topleft" + auto_resize="false" + user_resize="true" + follows="left|right|top" + name="inbox_layout_panel" + visible="true" + min_dim="35" + expanded_min_dim="90" + height="235"> + <panel + follows="all" + layout="topleft" + left="0" + name="marketplace_inbox" + class="panel_marketplace_inbox" + top="0" + label="" + height="235" + width="330"> + <string name="InboxLabelWithArg">Received items ([NUM])</string> + <string name="InboxLabelNoArg">Received items</string> + <button + control_name="InventoryInboxToggleState" + label="Received items" + font="SansSerifMedium" + name="inbox_btn" + height="35" + width="308" + image_unselected="MarketplaceBtn_Off" + image_selected="MarketplaceBtn_Selected" + halign="left" + handle_right_mouse="false" + follows="top|left|right" + is_toggle="true" + tab_stop="false" + pad_left="35" + top="0" + left="10" /> + <text + type="string" + length="1" + follows="right|top" + layout="topleft" + height="13" + top="10" + right="-20" + name="inbox_fresh_new_count" + font="SansSerifMedium" + halign="right" + top_pad="0" + width="300"> + [NUM] new + </text> + <panel + name="inbox_inventory_placeholder_panel" + follows="all" + left="10" + bottom="235" + width="308" + top="35" + bg_opaque_color="InventoryBackgroundColor" + background_visible="true" + background_opaque="true" + tool_tip="Drag and drop items to your inventory to use them" + > + <text name="inbox_inventory_placeholder" + type="string" + follows="all" + layout="topleft" + top="0" + left="0" + width="308" + height="200" + wrap="true" + halign="center"> +Purchases from the marketplace will be delivered here. + </text> + </panel> + </panel> + </layout_panel> + </layout_stack> + </panel> </panel> |