From 5d084799518052ab2ff4e13bfd1a9fbe32ce2ac4 Mon Sep 17 00:00:00 2001 From: Christian Fillion Date: Sun, 14 Apr 2024 11:27:09 -0400 Subject: [PATCH] Release ReaImGui: ReaScript binding for Dear ImGui v0.9.0.1 (#93) Hotfix: repair v0.9 crashing when docking on Windows --- API/reaper_imgui.ext | 96 +------------------------------------------- 1 file changed, 2 insertions(+), 94 deletions(-) diff --git a/API/reaper_imgui.ext b/API/reaper_imgui.ext index 06a7820..a35a049 100644 --- a/API/reaper_imgui.ext +++ b/API/reaper_imgui.ext @@ -1,99 +1,7 @@ @description ReaImGui: ReaScript binding for Dear ImGui @author cfillion -@version 0.9 -@changelog - • Add an action to open the HTML documentation - • Add a setting to disable hardware acceleration [p=2763726] - • Add saving and restoring UI state in REAPER screensets - • Document the minimum compatible version of each API function - • Fix list clippers not always using the specified context - • Fix v0.8.7's incorrect shim of ListClipper_ForceDisplayRangeByIndices - • Implement error detection in the OpenGL renderer - • Improve accuracy when scaling up fonts for HiDPI - • Limit image width/height to 8192 pixels - • Reduce the maximum count of per-context attachments to 1024 - • Report an error when using an EEL callback function outside of a callback - • Support toggling WindowFlags_NoInputs after window creation - • Throw an error when resources are wastefully re-created every frame - • Update Dear ImGui to v1.90.5 - • Linux: fix input of multiple ponctuation keys (+ PrintScreen on every platform) - • Linux: fix more cases of window positions going out of sync with the WM [#16] - • Linux: workaround windows taking a long time to open on KDE + Wayland + Intel GPUs [p=2769385] - • Linux: macOS: fix detection of the mouse hovering another application - • macOS: disable the Metal renderer and default to OpenGL on macOS earlier than 10.11 - • macOS: don't stretch contents when resizing OpenGL windows using system decorations - • macOS: fix off-by-one mouse cursor position at the bottom of the screen - • macOS: fix stuck left mouse button if it's pressed before Ctrl and right click emulation is enabled - • macOS: fix the OpenGL renderer failing on macOS 10.9 [p=2766024] - • macOS: re-initialize OpenGL after moving a window to another monitor - • Windows: fix missing preview when dragging files from the Media Explorer - • Windows: fix possible file drop false positive when the cursor is near another window - - C++ bindings (reaper_imgui_functions.h): - • Add binary backward compatibility and minimum version check - • Add error reporting by locally throwing ImGui_Error - • Add ImGui::load() to initialize the API instead of lazy-loading on call - • Now requires C++17 or newer - • Pass optional scalars directly by value - - Lua bindings (imgui.lua): - • Complete redesign of the backward-compatibility shim system - • Return a table containing the functions from the requested API version -   - Allow multiple modules within the same action to use different API versions -   - Numeric constants are exposed as values rather than functions - • Simplify the recommended example snippets using GetBuiltinPath + require - - Python bindings: - • Remove ImGui_ prefix from function names and rename to imgui.py - - Demo script: - • Examples > Custom rendering > Draw Channels - • Layout & Scrolling > Child windows > Auto-resize with constraints - • Layout & Scrolling > Child windows > Manual-resize - • Layout & Scrolling > Overlap Mode - • Tables > Angled headers - • Tables > Row height - • Tools > Item Picker - • Widgets > Drag and Drop > Tooltip at target location - • Widgets > Text Input > Miscellaneous - • Widgets > Tooltips - - gfx2imgui.lua: - • Add REAPER v7.03's getchar(65536)&8 and getchar(65537), fix &4 - • Support setfont with more than one font flag - • Trigger gfx.triangle's line heuristic with more than 2 unique points - • Various performance optimizations - - API changes: - • Add 'alpha_mul' optional parameter to GetColorEx - • Add BeginItemTooltip and SetItemTooltip - • Add ChildFlags_{AlwaysAutoResize,AlwaysUseWindowPadding,{,Auto}Resize{X,Y},Border,FrameStyle,None} - • Add ComboFlags_WidthFitPreview - • Add ConfigVar_HoverStationaryDelay and _HoverFlagsForTooltip{Mouse,Nav} - • Add DebugFlashStyleColor and DebugStartItemPicker - • Add DrawList_AddConcavePolyFilled and DrawList_PathFillConcave - • Add DrawList_AddEllipse{,Filled} and DrawList_PathEllipticalArcTo - • Add GetBuiltinPath (shortcut for "$resource_path/Scripts/ReaTeam Extensions/API") - • Add HoveredFlags_AllowWhenOverlappedBy{Item,Window} and _ForTooltip - • Add IsKeyChordPressed - • Add Key_F{13..24} and Key_App{Back,Forward} - • Add ListClipper_IncludeItemByIndex and rename _IncludeRangeByIndices to _IncludeItemsByIndex - • Add PopupFlags_NoReopen - • Add StyleVar_{Tab,TabBar}BorderSize and TabItemFlags_NoAssumedClosure - • Add TableAngledHeadersRow, TableColumnFlags_AngledHeader and StyleVar_TableAngledHeadersAngle - • Add TableFlags_HighlightHoveredColumn - • Add TreeNodeFlags_SpanAllColumns - • Remove BeginChildFrame and EndChildFrame (use BeginChild+ChildFlags_FrameStyle instead) - • Remove DestroyContext (was not useful since 0.5) - • Remove support of Windows virtual key codes (was deprecated in 0.6) - • Remove TableGetColumnSortSpecs's redundant sort_order return value - • Remove WindowFlags_AlwaysUseWindowPadding - • Rename ShowStackToolWindow to ShowIDStackToolWindow - • Rename {Selectable,TreeNode}Flags_AllowItemOverlap to _AllowOverlap - • Replace BeginChild's (bool)border parameter with (int)child_flags - • Replace SetItemAllowOverlap (after the item) with SetNextItemAllowOverlap (before the item) - • Set TableNeedSort's has_specs output value to false when not sorting in tristate mode - • Swap the column_{index,user_id} return values of TableGetColumnSortSpecs +@version 0.9.0.1 +@changelog • Hotfix: repair v0.9 crashing when docking on Windows @provides [darwin32] reaper_imgui-i386.dylib https://github.com/cfillion/reaimgui/releases/download/v$version/$path [darwin64] reaper_imgui-x86_64.dylib https://github.com/cfillion/reaimgui/releases/download/v$version/$path