Skip to content

Commit

Permalink
Internals: Wired a ImGuiItemStatusFlags_ValueChanged into ItemStatusF…
Browse files Browse the repository at this point in the history
…lags, for an hypothetical IsItemValueChanged() function. (#2034)
  • Loading branch information
ocornut committed Aug 22, 2018
1 parent 102d5e6 commit abaa274
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 2 deletions.
2 changes: 2 additions & 0 deletions imgui.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2344,7 +2344,9 @@ void ImGui::MarkItemValueChanged(ImGuiID id)
(void)id; // Avoid unused variable warnings when asserts are compiled out.
ImGuiContext& g = *GImGui;
IM_ASSERT(g.ActiveId == id || g.ActiveId == 0 || g.DragDropActive);
//IM_ASSERT(g.CurrentWindow->DC.LastItemId == id);
g.ActiveIdValueChanged = true;
g.CurrentWindow->DC.LastItemStatusFlags |= ImGuiItemStatusFlags_ValueChanged;
}

static inline bool IsWindowContentHoverable(ImGuiWindow* window, ImGuiHoveredFlags flags)
Expand Down
5 changes: 3 additions & 2 deletions imgui_internal.h
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,8 @@ enum ImGuiItemStatusFlags_
{
ImGuiItemStatusFlags_None = 0,
ImGuiItemStatusFlags_HoveredRect = 1 << 0,
ImGuiItemStatusFlags_HasDisplayRect = 1 << 1
ImGuiItemStatusFlags_HasDisplayRect = 1 << 1,
ImGuiItemStatusFlags_ValueChanged = 1 << 2 // Value exposed by item was edited in the current frame (should match the bool return value of most widgets)
};

// FIXME: this is in development, not exposed/functional as a generic feature yet.
Expand Down Expand Up @@ -648,7 +649,7 @@ struct ImGuiContext
float ActiveIdTimer;
bool ActiveIdIsJustActivated; // Set at the time of activation for one frame
bool ActiveIdAllowOverlap; // Active widget allows another widget to steal active id (generally for overlapping widgets, but not always)
bool ActiveIdValueChanged;
bool ActiveIdValueChanged; // Was the value associated to the widget changed over the course of the Active state.
bool ActiveIdPreviousFrameIsAlive;
bool ActiveIdPreviousFrameValueChanged;
int ActiveIdAllowNavDirFlags; // Active widget allows using directional navigation (e.g. can activate a button and move away from it)
Expand Down

0 comments on commit abaa274

Please sign in to comment.