mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-11-03 22:51:06 +01:00 
			
		
		
		
	Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). (#3092)
This commit is contained in:
		@@ -37,6 +37,8 @@ HOW TO UPDATE?
 | 
			
		||||
 | 
			
		||||
Breaking Changes:
 | 
			
		||||
 | 
			
		||||
- Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop().
 | 
			
		||||
  Kept inline redirection functions (will obsolete).
 | 
			
		||||
- Moved the optional "courtesy maths operators" implementation from imgui_internal.h in imgui.h.
 | 
			
		||||
  Even though we encourage using your own maths types and operators by setting up IM_VEC2_CLASS_EXTRA,
 | 
			
		||||
  it has been frequently requested by people to use our own. We had an opt-in define which was
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										12
									
								
								imgui.cpp
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								imgui.cpp
									
									
									
									
									
								
							@@ -387,6 +387,7 @@ CODE
 | 
			
		||||
 When you are not sure about an old symbol or function name, try using the Search/Find function of your IDE to look for comments or references in all imgui files.
 | 
			
		||||
 You can read releases logs https://github.com/ocornut/imgui/releases for more details.
 | 
			
		||||
 | 
			
		||||
 - 2023/03/09 (1.89.4) - renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). Kept inline redirection functions (will obsolete).
 | 
			
		||||
 - 2023/03/09 (1.89.4) - tooltips: Added 'bool' return value to BeginTooltip() for API consistency. Please only submit contents and call EndTooltip() if BeginTooltip() returns true. In reality the function will _currently_ always return true, but further changes down the line may change this, best to clarify API sooner.
 | 
			
		||||
 - 2023/02/15 (1.89.4) - moved the optional "courtesy maths operators" implementation from imgui_internal.h in imgui.h.
 | 
			
		||||
                         Even though we encourage using your own maths types and operators by setting up IM_VEC2_CLASS_EXTRA,
 | 
			
		||||
@@ -7008,13 +7009,12 @@ void ImGui::EndDisabled()
 | 
			
		||||
        g.Style.Alpha = g.DisabledAlphaBackup; //PopStyleVar();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// FIXME: Look into renaming this once we have settled the new Focus/Activation/TabStop system.
 | 
			
		||||
void ImGui::PushAllowKeyboardFocus(bool allow_keyboard_focus)
 | 
			
		||||
void ImGui::PushTabStop(bool tab_stop)
 | 
			
		||||
{
 | 
			
		||||
    PushItemFlag(ImGuiItemFlags_NoTabStop, !allow_keyboard_focus);
 | 
			
		||||
    PushItemFlag(ImGuiItemFlags_NoTabStop, !tab_stop);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void ImGui::PopAllowKeyboardFocus()
 | 
			
		||||
void ImGui::PopTabStop()
 | 
			
		||||
{
 | 
			
		||||
    PopItemFlag();
 | 
			
		||||
}
 | 
			
		||||
@@ -12471,10 +12471,10 @@ void ImGui::LogButtons()
 | 
			
		||||
#endif
 | 
			
		||||
    const bool log_to_file = Button("Log To File"); SameLine();
 | 
			
		||||
    const bool log_to_clipboard = Button("Log To Clipboard"); SameLine();
 | 
			
		||||
    PushAllowKeyboardFocus(false);
 | 
			
		||||
    PushTabStop(false);
 | 
			
		||||
    SetNextItemWidth(80.0f);
 | 
			
		||||
    SliderInt("Default Depth", &g.LogDepthToExpandDefault, 0, 9, NULL);
 | 
			
		||||
    PopAllowKeyboardFocus();
 | 
			
		||||
    PopTabStop();
 | 
			
		||||
    PopID();
 | 
			
		||||
 | 
			
		||||
    // Start logging at the end of the function so that the buttons don't appear in the log
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										9
									
								
								imgui.h
									
									
									
									
									
								
							
							
						
						
									
										9
									
								
								imgui.h
									
									
									
									
									
								
							@@ -23,7 +23,7 @@
 | 
			
		||||
// Library Version
 | 
			
		||||
// (Integer encoded as XYYZZ for use in #if preprocessor conditionals, e.g. '#if IMGUI_VERSION_NUM > 12345')
 | 
			
		||||
#define IMGUI_VERSION               "1.89.4 WIP"
 | 
			
		||||
#define IMGUI_VERSION_NUM           18935
 | 
			
		||||
#define IMGUI_VERSION_NUM           18936
 | 
			
		||||
#define IMGUI_HAS_TABLE
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
@@ -405,8 +405,8 @@ namespace ImGui
 | 
			
		||||
    IMGUI_API void          PushStyleVar(ImGuiStyleVar idx, float val);                     // modify a style float variable. always use this if you modify the style after NewFrame().
 | 
			
		||||
    IMGUI_API void          PushStyleVar(ImGuiStyleVar idx, const ImVec2& val);             // modify a style ImVec2 variable. always use this if you modify the style after NewFrame().
 | 
			
		||||
    IMGUI_API void          PopStyleVar(int count = 1);
 | 
			
		||||
    IMGUI_API void          PushAllowKeyboardFocus(bool allow_keyboard_focus);              // == tab stop enable. Allow focusing using TAB/Shift-TAB, enabled by default but you can disable it for certain widgets
 | 
			
		||||
    IMGUI_API void          PopAllowKeyboardFocus();
 | 
			
		||||
    IMGUI_API void          PushTabStop(bool tab_stop);                                     // == tab stop enable. Allow focusing using TAB/Shift-TAB, enabled by default but you can disable it for certain widgets
 | 
			
		||||
    IMGUI_API void          PopTabStop();
 | 
			
		||||
    IMGUI_API void          PushButtonRepeat(bool repeat);                                  // in 'repeat' mode, Button*() functions return repeated true in a typematic manner (using io.KeyRepeatDelay/io.KeyRepeatRate setting). Note that you can call IsItemActive() after any Button() to tell if the button is held in the current frame.
 | 
			
		||||
    IMGUI_API void          PopButtonRepeat();
 | 
			
		||||
 | 
			
		||||
@@ -3004,6 +3004,9 @@ namespace ImGui
 | 
			
		||||
#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
 | 
			
		||||
namespace ImGui
 | 
			
		||||
{
 | 
			
		||||
    // OBSOLETED in 1.89.4 (from March 2023)
 | 
			
		||||
    static inline void  PushAllowKeyboardFocus(bool tab_stop)                               { PushTabStop(tab_stop); }
 | 
			
		||||
    static inline void  PopAllowKeyboardFocus()                                             { PopTabStop(); }
 | 
			
		||||
    // OBSOLETED in 1.89 (from August 2022)
 | 
			
		||||
    IMGUI_API bool      ImageButton(ImTextureID user_texture_id, const ImVec2& size, const ImVec2& uv0 = ImVec2(0, 0), const ImVec2& uv1 = ImVec2(1, 1), int frame_padding = -1, const ImVec4& bg_col = ImVec4(0, 0, 0, 0), const ImVec4& tint_col = ImVec4(1, 1, 1, 1)); // Use new ImageButton() signature (explicit item id, regular FramePadding)
 | 
			
		||||
    // OBSOLETED in 1.88 (from May 2022)
 | 
			
		||||
 
 | 
			
		||||
@@ -5828,10 +5828,10 @@ static void ShowDemoWindowInputs()
 | 
			
		||||
            ImGui::InputText("1", buf, IM_ARRAYSIZE(buf));
 | 
			
		||||
            ImGui::InputText("2", buf, IM_ARRAYSIZE(buf));
 | 
			
		||||
            ImGui::InputText("3", buf, IM_ARRAYSIZE(buf));
 | 
			
		||||
            ImGui::PushAllowKeyboardFocus(false);
 | 
			
		||||
            ImGui::PushTabStop(false);
 | 
			
		||||
            ImGui::InputText("4 (tab skip)", buf, IM_ARRAYSIZE(buf));
 | 
			
		||||
            ImGui::SameLine(); HelpMarker("Item won't be cycled through when using TAB or Shift+Tab.");
 | 
			
		||||
            ImGui::PopAllowKeyboardFocus();
 | 
			
		||||
            ImGui::PopTabStop();
 | 
			
		||||
            ImGui::InputText("5", buf, IM_ARRAYSIZE(buf));
 | 
			
		||||
            ImGui::TreePop();
 | 
			
		||||
        }
 | 
			
		||||
@@ -5853,12 +5853,12 @@ static void ShowDemoWindowInputs()
 | 
			
		||||
            ImGui::InputText("2", buf, IM_ARRAYSIZE(buf));
 | 
			
		||||
            if (ImGui::IsItemActive()) has_focus = 2;
 | 
			
		||||
 | 
			
		||||
            ImGui::PushAllowKeyboardFocus(false);
 | 
			
		||||
            ImGui::PushTabStop(false);
 | 
			
		||||
            if (focus_3) ImGui::SetKeyboardFocusHere();
 | 
			
		||||
            ImGui::InputText("3 (tab skip)", buf, IM_ARRAYSIZE(buf));
 | 
			
		||||
            if (ImGui::IsItemActive()) has_focus = 3;
 | 
			
		||||
            ImGui::SameLine(); HelpMarker("Item won't be cycled through when using TAB or Shift+Tab.");
 | 
			
		||||
            ImGui::PopAllowKeyboardFocus();
 | 
			
		||||
            ImGui::PopTabStop();
 | 
			
		||||
 | 
			
		||||
            if (has_focus)
 | 
			
		||||
                ImGui::Text("Item with focus: %d", has_focus);
 | 
			
		||||
 
 | 
			
		||||
@@ -789,10 +789,10 @@ enum ImGuiItemFlags_
 | 
			
		||||
{
 | 
			
		||||
    // Controlled by user
 | 
			
		||||
    ImGuiItemFlags_None                     = 0,
 | 
			
		||||
    ImGuiItemFlags_NoTabStop                = 1 << 0,  // false     // Disable keyboard tabbing (FIXME: should merge with _NoNav)
 | 
			
		||||
    ImGuiItemFlags_NoTabStop                = 1 << 0,  // false     // Disable keyboard tabbing. This is a "lighter" version of ImGuiItemFlags_NoNav.
 | 
			
		||||
    ImGuiItemFlags_ButtonRepeat             = 1 << 1,  // false     // Button() will return true multiple times based on io.KeyRepeatDelay and io.KeyRepeatRate settings.
 | 
			
		||||
    ImGuiItemFlags_Disabled                 = 1 << 2,  // false     // Disable interactions but doesn't affect visuals. See BeginDisabled()/EndDisabled(). See github.com/ocornut/imgui/issues/211
 | 
			
		||||
    ImGuiItemFlags_NoNav                    = 1 << 3,  // false     // Disable keyboard/gamepad directional navigation (FIXME: should merge with _NoTabStop)
 | 
			
		||||
    ImGuiItemFlags_NoNav                    = 1 << 3,  // false     // Disable any form of focusing (keyboard/gamepad directional navigation and SetKeyboardFocusHere() calls)
 | 
			
		||||
    ImGuiItemFlags_NoNavDefaultFocus        = 1 << 4,  // false     // Disable item being a candidate for default focus (e.g. used by title bar items)
 | 
			
		||||
    ImGuiItemFlags_SelectableDontClosePopup = 1 << 5,  // false     // Disable MenuItem/Selectable() automatically closing their popup window
 | 
			
		||||
    ImGuiItemFlags_MixedValue               = 1 << 6,  // false     // [BETA] Represent a mixed/indeterminate value, generally multi-selection where values differ. Currently only supported by Checkbox() (later should support all sorts of widgets)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user