@ -2591,7 +2591,7 @@ static void ShowDemoWindowWidgets()
static bool embed_all_inside_a_child_window = false ;
ImGui : : Checkbox ( " Embed everything inside a child window for testing _RootWindow flag. " , & embed_all_inside_a_child_window ) ;
if ( embed_all_inside_a_child_window )
ImGui : : BeginChild ( " outer_child " , ImVec2 ( 0 , ImGui : : GetFontSize ( ) * 20.0f ) , true ) ;
ImGui : : BeginChild ( " outer_child " , ImVec2 ( 0 , ImGui : : GetFontSize ( ) * 20.0f ) , ImGuiChildFlags_Border ) ;
// Testing IsWindowFocused() function with its various flags.
ImGui : : BulletText (
@ -2639,7 +2639,7 @@ static void ShowDemoWindowWidgets()
ImGui : : IsWindowHovered ( ImGuiHoveredFlags_AnyWindow ) ,
ImGui : : IsWindowHovered ( ImGuiHoveredFlags_Stationary ) ) ;
ImGui : : BeginChild ( " child " , ImVec2 ( 0 , 50 ) , true ) ;
ImGui : : BeginChild ( " child " , ImVec2 ( 0 , 50 ) , ImGuiChildFlags_Border ) ;
ImGui : : Text ( " This is another child window for testing the _ChildWindows flag. " ) ;
ImGui : : EndChild ( ) ;
if ( embed_all_inside_a_child_window )
@ -2723,7 +2723,7 @@ static void ShowDemoWindowLayout()
ImGuiWindowFlags window_flags = ImGuiWindowFlags_HorizontalScrollbar ;
if ( disable_mouse_wheel )
window_flags | = ImGuiWindowFlags_NoScrollWithMouse ;
ImGui : : BeginChild ( " ChildL " , ImVec2 ( ImGui : : GetContentRegionAvail ( ) . x * 0.5f , 260 ) , fals e, window_flags ) ;
ImGui : : BeginChild ( " ChildL " , ImVec2 ( ImGui : : GetContentRegionAvail ( ) . x * 0.5f , 260 ) , ImGuiChildFlags_Non e, window_flags ) ;
for ( int i = 0 ; i < 100 ; i + + )
ImGui : : Text ( " %04d: scrollable region " , i ) ;
ImGui : : EndChild ( ) ;
@ -2739,7 +2739,7 @@ static void ShowDemoWindowLayout()
if ( ! disable_menu )
window_flags | = ImGuiWindowFlags_MenuBar ;
ImGui : : PushStyleVar ( ImGuiStyleVar_ChildRounding , 5.0f ) ;
ImGui : : BeginChild ( " ChildR " , ImVec2 ( 0 , 260 ) , true , window_flags ) ;
ImGui : : BeginChild ( " ChildR " , ImVec2 ( 0 , 260 ) , ImGuiChildFlags_Border , window_flags ) ;
if ( ! disable_menu & & ImGui : : BeginMenuBar ( ) )
{
if ( ImGui : : BeginMenu ( " Menu " ) )
@ -2780,14 +2780,15 @@ static void ShowDemoWindowLayout()
ImGui : : SetCursorPosX ( ImGui : : GetCursorPosX ( ) + ( float ) offset_x ) ;
ImGui : : PushStyleColor ( ImGuiCol_ChildBg , IM_COL32 ( 255 , 0 , 0 , 100 ) ) ;
ImGui : : BeginChild ( " Red " , ImVec2 ( 200 , 100 ) , true , ImGuiWindowFlags_None ) ;
ImGui : : BeginChild ( " Red " , ImVec2 ( 200 , 100 ) , ImGuiChildFlags_Border , ImGuiWindowFlags_None ) ;
ImGui : : PopStyleColor ( ) ;
for ( int n = 0 ; n < 50 ; n + + )
ImGui : : Text ( " Some test %d " , n ) ;
ImGui : : EndChild ( ) ;
bool child_is_hovered = ImGui : : IsItemHovered ( ) ;
ImVec2 child_rect_min = ImGui : : GetItemRectMin ( ) ;
ImVec2 child_rect_max = ImGui : : GetItemRectMax ( ) ;
ImGui : : PopStyleColor ( ) ;
ImGui : : Text ( " Hovered: %d " , child_is_hovered ) ;
ImGui : : Text ( " Rect of child window is: (%.0f,%.0f) (%.0f,%.0f) " , child_rect_min . x , child_rect_min . y , child_rect_max . x , child_rect_max . y ) ;
}
@ -3176,7 +3177,7 @@ static void ShowDemoWindowLayout()
const ImGuiWindowFlags child_flags = enable_extra_decorations ? ImGuiWindowFlags_MenuBar : 0 ;
const ImGuiID child_id = ImGui : : GetID ( ( void * ) ( intptr_t ) i ) ;
const bool child_is_visible = ImGui : : BeginChild ( child_id , ImVec2 ( child_w , 200.0f ) , true , child_flags ) ;
const bool child_is_visible = ImGui : : BeginChild ( child_id , ImVec2 ( child_w , 200.0f ) , ImGuiChildFlags_Border , child_flags ) ;
if ( ImGui : : BeginMenuBar ( ) )
{
ImGui : : TextUnformatted ( " abc " ) ;
@ -3223,7 +3224,7 @@ static void ShowDemoWindowLayout()
float child_height = ImGui : : GetTextLineHeight ( ) + style . ScrollbarSize + style . WindowPadding . y * 2.0f ;
ImGuiWindowFlags child_flags = ImGuiWindowFlags_HorizontalScrollbar | ( enable_extra_decorations ? ImGuiWindowFlags_AlwaysVerticalScrollbar : 0 ) ;
ImGuiID child_id = ImGui : : GetID ( ( void * ) ( intptr_t ) i ) ;
bool child_is_visible = ImGui : : BeginChild ( child_id , ImVec2 ( - 100 , child_height ) , true , child_flags ) ;
bool child_is_visible = ImGui : : BeginChild ( child_id , ImVec2 ( - 100 , child_height ) , ImGuiChildFlags_Border , child_flags ) ;
if ( scroll_to_off )
ImGui : : SetScrollX ( scroll_to_off_px ) ;
if ( scroll_to_pos )
@ -3265,7 +3266,7 @@ static void ShowDemoWindowLayout()
ImGui : : PushStyleVar ( ImGuiStyleVar_FrameRounding , 3.0f ) ;
ImGui : : PushStyleVar ( ImGuiStyleVar_FramePadding , ImVec2 ( 2.0f , 1.0f ) ) ;
ImVec2 scrolling_child_size = ImVec2 ( 0 , ImGui : : GetFrameHeightWithSpacing ( ) * 7 + 30 ) ;
ImGui : : BeginChild ( " scrolling " , scrolling_child_size , true , ImGuiWindowFlags_HorizontalScrollbar ) ;
ImGui : : BeginChild ( " scrolling " , scrolling_child_size , ImGuiChildFlags_Border , ImGuiWindowFlags_HorizontalScrollbar ) ;
for ( int line = 0 ; line < lines ; line + + )
{
// Display random stuff. For the sake of this trivial demo we are using basic Button() + SameLine()
@ -3409,7 +3410,7 @@ static void ShowDemoWindowLayout()
}
if ( show_child )
{
ImGui : : BeginChild ( " child " , ImVec2 ( 0 , 0 ) , true ) ;
ImGui : : BeginChild ( " child " , ImVec2 ( 0 , 0 ) , ImGuiChildFlags_Border ) ;
ImGui : : EndChild ( ) ;
}
ImGui : : End ( ) ;
@ -5958,7 +5959,7 @@ static void ShowDemoWindowColumns()
{
ImGui : : SetNextWindowContentSize ( ImVec2 ( 1500.0f , 0.0f ) ) ;
ImVec2 child_size = ImVec2 ( 0 , ImGui : : GetFontSize ( ) * 20.0f ) ;
ImGui : : BeginChild ( " ##ScrollingRegion " , child_size , fals e, ImGuiWindowFlags_HorizontalScrollbar ) ;
ImGui : : BeginChild ( " ##ScrollingRegion " , child_size , ImGuiChildFlags_Non e, ImGuiWindowFlags_HorizontalScrollbar ) ;
ImGui : : Columns ( 10 ) ;
// Also demonstrate using clipper for large vertical lists
@ -6575,7 +6576,7 @@ void ImGui::ShowStyleEditor(ImGuiStyle* ref)
" Left-click on color square to open color picker, \n "
" Right-click to open edit options menu. " ) ;
ImGui : : BeginChild ( " ##colors " , ImVec2 ( 0 , 0 ) , true , ImGuiWindowFlags_AlwaysVerticalScrollbar | ImGuiWindowFlags_AlwaysHorizontalScrollbar | ImGuiWindowFlags_NavFlattened ) ;
ImGui : : BeginChild ( " ##colors " , ImVec2 ( 0 , 0 ) , ImGuiChildFlags_Border , ImGuiWindowFlags_AlwaysVerticalScrollbar | ImGuiWindowFlags_AlwaysHorizontalScrollbar | ImGuiWindowFlags_NavFlattened ) ;
ImGui : : PushItemWidth ( ImGui : : GetFontSize ( ) * - 12 ) ;
for ( int i = 0 ; i < ImGuiCol_COUNT ; i + + )
{
@ -6802,7 +6803,7 @@ static void ShowExampleMenuFile()
{
static bool enabled = true ;
ImGui : : MenuItem ( " Enabled " , " " , & enabled ) ;
ImGui : : BeginChild ( " child " , ImVec2 ( 0 , 60 ) , true ) ;
ImGui : : BeginChild ( " child " , ImVec2 ( 0 , 60 ) , ImGuiChildFlags_Border ) ;
for ( int i = 0 ; i < 10 ; i + + )
ImGui : : Text ( " Scrolling Text %d " , i ) ;
ImGui : : EndChild ( ) ;
@ -6968,7 +6969,7 @@ struct ExampleAppConsole
// Reserve enough left-over height for 1 separator + 1 input text
const float footer_height_to_reserve = ImGui : : GetStyle ( ) . ItemSpacing . y + ImGui : : GetFrameHeightWithSpacing ( ) ;
if ( ImGui : : BeginChild ( " ScrollingRegion " , ImVec2 ( 0 , - footer_height_to_reserve ) , fals e, ImGuiWindowFlags_HorizontalScrollbar ) )
if ( ImGui : : BeginChild ( " ScrollingRegion " , ImVec2 ( 0 , - footer_height_to_reserve ) , ImGuiChildFlags_Non e, ImGuiWindowFlags_HorizontalScrollbar ) )
{
if ( ImGui : : BeginPopupContextWindow ( ) )
{
@ -7279,7 +7280,7 @@ struct ExampleAppLog
ImGui : : Separator ( ) ;
if ( ImGui : : BeginChild ( " scrolling " , ImVec2 ( 0 , 0 ) , fals e, ImGuiWindowFlags_HorizontalScrollbar ) )
if ( ImGui : : BeginChild ( " scrolling " , ImVec2 ( 0 , 0 ) , ImGuiChildFlags_Non e, ImGuiWindowFlags_HorizontalScrollbar ) )
{
if ( clear )
Clear ( ) ;
@ -7398,7 +7399,7 @@ static void ShowExampleAppLayout(bool* p_open)
// Left
static int selected = 0 ;
{
ImGui : : BeginChild ( " left pane " , ImVec2 ( 150 , 0 ) , true ) ;
ImGui : : BeginChild ( " left pane " , ImVec2 ( 150 , 0 ) , ImGuiChildFlags_Border ) ;
for ( int i = 0 ; i < 100 ; i + + )
{
// FIXME: Good candidate to use ImGuiSelectableFlags_SelectOnNav
@ -7967,7 +7968,7 @@ static void ShowExampleAppCustomRendering(bool* p_open)
// To use a child window instead we could use, e.g:
// ImGui::PushStyleVar(ImGuiStyleVar_WindowPadding, ImVec2(0, 0)); // Disable padding
// ImGui::PushStyleColor(ImGuiCol_ChildBg, IM_COL32(50, 50, 50, 255)); // Set a background color
// ImGui::BeginChild("canvas", ImVec2(0.0f, 0.0f), true , ImGuiWindowFlags_NoMove);
// ImGui::BeginChild("canvas", ImVec2(0.0f, 0.0f), ImGuiChildFlags_Border , ImGuiWindowFlags_NoMove);
// ImGui::PopStyleColor();
// ImGui::PopStyleVar();
// [...]