Drag and Drop: Exposed some internals.
diff --git a/imgui.cpp b/imgui.cpp
index dc418eb..b032d54 100644
--- a/imgui.cpp
+++ b/imgui.cpp
@@ -673,7 +673,6 @@
namespace ImGui
{
-static void ClearDragDrop();
static void FocusPreviousWindow();
}
@@ -11151,7 +11150,7 @@
// DRAG AND DROP
//-----------------------------------------------------------------------------
-static void ImGui::ClearDragDrop()
+void ImGui::ClearDragDrop()
{
ImGuiContext& g = *GImGui;
g.DragDropActive = false;
@@ -11340,6 +11339,12 @@
return true;
}
+bool ImGui::IsDragDropPayloadBeingAccepted()
+{
+ ImGuiContext& g = *GImGui;
+ return g.DragDropActive && g.DragDropAcceptIdPrev != 0;
+}
+
const ImGuiPayload* ImGui::AcceptDragDropPayload(const char* type, ImGuiDragDropFlags flags)
{
ImGuiContext& g = *GImGui;
diff --git a/imgui_internal.h b/imgui_internal.h
index 5c0705a..b8f7e99 100644
--- a/imgui_internal.h
+++ b/imgui_internal.h
@@ -873,6 +873,8 @@
IMGUI_API bool SplitterBehavior(ImGuiID id, const ImRect& bb, ImGuiAxis axis, float* size1, float* size2, float min_size1, float min_size2, float hover_extend = 0.0f);
IMGUI_API bool BeginDragDropTargetCustom(const ImRect& bb, ImGuiID id);
+ IMGUI_API void ClearDragDrop();
+ IMGUI_API bool IsDragDropPayloadBeingAccepted();
// FIXME-WIP: New Columns API
IMGUI_API void BeginColumns(const char* id, int count, ImGuiColumnsFlags flags = 0); // setup number of columns. use an identifier to distinguish multiple column sets. close with EndColumns().