From 8b59ed070895b319a5f11f816ad0feb682fed30e Mon Sep 17 00:00:00 2001 From: omar Date: Tue, 12 Dec 2017 23:37:27 +0100 Subject: [PATCH] Drag and Drop: Exposed some internals. --- imgui.cpp | 9 +++++++-- imgui_internal.h | 2 ++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/imgui.cpp b/imgui.cpp index dc418eba3..b032d549f 100644 --- a/imgui.cpp +++ b/imgui.cpp @@ -673,7 +673,6 @@ static bool DataTypeApplyOpFromText(const char* buf, const char* ini namespace ImGui { -static void ClearDragDrop(); static void FocusPreviousWindow(); } @@ -11151,7 +11150,7 @@ void ImGui::Value(const char* prefix, float v, const char* float_format) // DRAG AND DROP //----------------------------------------------------------------------------- -static void ImGui::ClearDragDrop() +void ImGui::ClearDragDrop() { ImGuiContext& g = *GImGui; g.DragDropActive = false; @@ -11340,6 +11339,12 @@ bool ImGui::BeginDragDropTarget() 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 5c0705ad7..b8f7e9920 100644 --- a/imgui_internal.h +++ b/imgui_internal.h @@ -873,6 +873,8 @@ namespace ImGui 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().