Skip to content

Commit 4625911

Browse files
committed
Change "ImTextureID" type to use sized integer type defined by imgui
1 parent ef65aec commit 4625911

File tree

8 files changed

+24
-24
lines changed

8 files changed

+24
-24
lines changed

REFERENCE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ Overlays are created with the use of [Dear ImGui version 1.86](https://github.co
5151
5252
```cpp
5353
#define IMGUI_DISABLE_INCLUDE_IMCONFIG_H
54-
#define ImTextureID unsigned long long // Change ImGui texture ID type to that of a 'reshade::api::resource_view' handle
54+
#define ImTextureID ImU64 // Change ImGui texture ID type to that of a 'reshade::api::resource_view' handle
5555
5656
#include <imgui.h>
5757
#include <reshade.hpp>

deps/ImGui.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<ItemDefinitionGroup>
55
<ClCompile>
66
<AdditionalIncludeDirectories>$(SolutionDir)deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
7-
<PreprocessorDefinitions>ImTextureID=unsigned long long;IMGUI_DEFINE_MATH_OPERATORS;IMGUI_DISABLE_OBSOLETE_FUNCTIONS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
7+
<PreprocessorDefinitions>ImTextureID=ImU64;IMGUI_DEFINE_MATH_OPERATORS;IMGUI_DISABLE_OBSOLETE_FUNCTIONS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
88
</ClCompile>
99
</ItemDefinitionGroup>
1010
</Project>

examples/06-history_window/history_window.vcxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
<WarningLevel>Level4</WarningLevel>
5858
<SDLCheck>true</SDLCheck>
5959
<Optimization>Disabled</Optimization>
60-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
60+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
6161
<ConformanceMode>true</ConformanceMode>
6262
<AdditionalIncludeDirectories>..\..\include;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
6363
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -73,7 +73,7 @@
7373
<WarningLevel>Level4</WarningLevel>
7474
<SDLCheck>true</SDLCheck>
7575
<Optimization>Disabled</Optimization>
76-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
76+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
7777
<ConformanceMode>true</ConformanceMode>
7878
<AdditionalIncludeDirectories>..\..\include;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
7979
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -90,7 +90,7 @@
9090
<Optimization>MaxSpeed</Optimization>
9191
<IntrinsicFunctions>true</IntrinsicFunctions>
9292
<FunctionLevelLinking>true</FunctionLevelLinking>
93-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
93+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9494
<ConformanceMode>true</ConformanceMode>
9595
<AdditionalIncludeDirectories>..\..\include;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
9696
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
@@ -109,7 +109,7 @@
109109
<Optimization>MaxSpeed</Optimization>
110110
<IntrinsicFunctions>true</IntrinsicFunctions>
111111
<FunctionLevelLinking>true</FunctionLevelLinking>
112-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
112+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113113
<ConformanceMode>true</ConformanceMode>
114114
<AdditionalIncludeDirectories>..\..\include;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
115115
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

examples/07-generic_depth/generic_depth.vcxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
<WarningLevel>Level4</WarningLevel>
5858
<SDLCheck>true</SDLCheck>
5959
<Optimization>Disabled</Optimization>
60-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
60+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
6161
<ConformanceMode>true</ConformanceMode>
6262
<AdditionalIncludeDirectories>..\..\include;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
6363
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -73,7 +73,7 @@
7373
<WarningLevel>Level4</WarningLevel>
7474
<SDLCheck>true</SDLCheck>
7575
<Optimization>Disabled</Optimization>
76-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
76+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
7777
<ConformanceMode>true</ConformanceMode>
7878
<AdditionalIncludeDirectories>..\..\include;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
7979
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -90,7 +90,7 @@
9090
<Optimization>MaxSpeed</Optimization>
9191
<IntrinsicFunctions>true</IntrinsicFunctions>
9292
<FunctionLevelLinking>true</FunctionLevelLinking>
93-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
93+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9494
<ConformanceMode>true</ConformanceMode>
9595
<AdditionalIncludeDirectories>..\..\include;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
9696
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
@@ -109,7 +109,7 @@
109109
<Optimization>MaxSpeed</Optimization>
110110
<IntrinsicFunctions>true</IntrinsicFunctions>
111111
<FunctionLevelLinking>true</FunctionLevelLinking>
112-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
112+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113113
<ConformanceMode>true</ConformanceMode>
114114
<AdditionalIncludeDirectories>..\..\include;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
115115
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

examples/08-texture_overlay/texturemod_overlay.vcxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
<WarningLevel>Level4</WarningLevel>
5858
<SDLCheck>true</SDLCheck>
5959
<Optimization>Disabled</Optimization>
60-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
60+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
6161
<ConformanceMode>true</ConformanceMode>
6262
<AdditionalIncludeDirectories>..\..\include;..\..\deps\stb;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
6363
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -73,7 +73,7 @@
7373
<WarningLevel>Level4</WarningLevel>
7474
<SDLCheck>true</SDLCheck>
7575
<Optimization>Disabled</Optimization>
76-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
76+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;_CRT_SECURE_NO_WARNINGS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
7777
<ConformanceMode>true</ConformanceMode>
7878
<AdditionalIncludeDirectories>..\..\include;..\..\deps\stb;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
7979
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -90,7 +90,7 @@
9090
<Optimization>MaxSpeed</Optimization>
9191
<IntrinsicFunctions>true</IntrinsicFunctions>
9292
<FunctionLevelLinking>true</FunctionLevelLinking>
93-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
93+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9494
<ConformanceMode>true</ConformanceMode>
9595
<AdditionalIncludeDirectories>..\..\include;..\..\deps\stb;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
9696
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
@@ -109,7 +109,7 @@
109109
<Optimization>MaxSpeed</Optimization>
110110
<IntrinsicFunctions>true</IntrinsicFunctions>
111111
<FunctionLevelLinking>true</FunctionLevelLinking>
112-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
112+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113113
<ConformanceMode>true</ConformanceMode>
114114
<AdditionalIncludeDirectories>..\..\include;..\..\deps\stb;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
115115
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

examples/11-effects_during_frame/effects_during_frame.vcxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
<WarningLevel>Level4</WarningLevel>
5858
<SDLCheck>true</SDLCheck>
5959
<Optimization>Disabled</Optimization>
60-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
60+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
6161
<ConformanceMode>true</ConformanceMode>
6262
<AdditionalIncludeDirectories>..\..\include;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
6363
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -73,7 +73,7 @@
7373
<WarningLevel>Level4</WarningLevel>
7474
<SDLCheck>true</SDLCheck>
7575
<Optimization>Disabled</Optimization>
76-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
76+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
7777
<ConformanceMode>true</ConformanceMode>
7878
<AdditionalIncludeDirectories>..\..\include;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
7979
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
@@ -90,7 +90,7 @@
9090
<Optimization>MaxSpeed</Optimization>
9191
<IntrinsicFunctions>true</IntrinsicFunctions>
9292
<FunctionLevelLinking>true</FunctionLevelLinking>
93-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
93+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
9494
<ConformanceMode>true</ConformanceMode>
9595
<AdditionalIncludeDirectories>..\..\include;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
9696
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
@@ -109,7 +109,7 @@
109109
<Optimization>MaxSpeed</Optimization>
110110
<IntrinsicFunctions>true</IntrinsicFunctions>
111111
<FunctionLevelLinking>true</FunctionLevelLinking>
112-
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=unsigned long long;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
112+
<PreprocessorDefinitions>WIN32_LEAN_AND_MEAN;NOMINMAX;ImTextureID=ImU64;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113113
<ConformanceMode>true</ConformanceMode>
114114
<AdditionalIncludeDirectories>..\..\include;..\..\deps\imgui;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
115115
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

include/reshade_overlay.hpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
#if defined(IMGUI_VERSION_NUM)
1010

1111
// Check that the 'ImTextureID' type has the same size as 'reshade::api::resource_view'
12-
static_assert(sizeof(ImTextureID) == 8, "missing \"#define ImTextureID unsigned long long\" before \"#include <imgui.h>\"");
12+
static_assert(sizeof(ImTextureID) == 8, "missing \"#define ImTextureID ImU64\" before \"#include <imgui.h>\"");
1313

1414
struct imgui_function_table
1515
{
@@ -268,9 +268,9 @@ struct imgui_function_table
268268
void(*EndTabItem)();
269269
bool(*TabItemButton)(const char* label, ImGuiTabItemFlags flags);
270270
void(*SetTabItemClosed)(const char* tab_or_docked_window_label);
271-
ImGuiID(*DockSpace)(ImGuiID id, const ImVec2& size, int flags, const struct ImGuiWindowClass* window_class);
271+
ImGuiID(*DockSpace)(ImGuiID id, const ImVec2& size, ImGuiDockNodeFlags flags, const ImGuiWindowClass* window_class);
272272
void(*SetNextWindowDockID)(ImGuiID dock_id, ImGuiCond cond);
273-
void(*SetNextWindowClass)(const struct ImGuiWindowClass* window_class);
273+
void(*SetNextWindowClass)(const ImGuiWindowClass* window_class);
274274
ImGuiID(*GetWindowDockID)();
275275
bool(*IsWindowDocked)();
276276
bool(*BeginDragDropSource)(ImGuiDragDropFlags flags);
@@ -697,9 +697,9 @@ namespace ImGui
697697
inline void EndTabItem() { imgui_function_table_instance()->EndTabItem(); }
698698
inline bool TabItemButton(const char* label, ImGuiTabItemFlags flags) { return imgui_function_table_instance()->TabItemButton(label, flags); }
699699
inline void SetTabItemClosed(const char* tab_or_docked_window_label) { imgui_function_table_instance()->SetTabItemClosed(tab_or_docked_window_label); }
700-
inline ImGuiID DockSpace(ImGuiID id, const ImVec2& size, int flags, const struct ImGuiWindowClass* window_class) { return imgui_function_table_instance()->DockSpace(id, size, flags, window_class); }
700+
inline ImGuiID DockSpace(ImGuiID id, const ImVec2& size, ImGuiDockNodeFlags flags, const ImGuiWindowClass* window_class) { return imgui_function_table_instance()->DockSpace(id, size, flags, window_class); }
701701
inline void SetNextWindowDockID(ImGuiID dock_id, ImGuiCond cond) { imgui_function_table_instance()->SetNextWindowDockID(dock_id, cond); }
702-
inline void SetNextWindowClass(const struct ImGuiWindowClass* window_class) { imgui_function_table_instance()->SetNextWindowClass(window_class); }
702+
inline void SetNextWindowClass(const ImGuiWindowClass* window_class) { imgui_function_table_instance()->SetNextWindowClass(window_class); }
703703
inline ImGuiID GetWindowDockID() { return imgui_function_table_instance()->GetWindowDockID(); }
704704
inline bool IsWindowDocked() { return imgui_function_table_instance()->IsWindowDocked(); }
705705
inline bool BeginDragDropSource(ImGuiDragDropFlags flags) { return imgui_function_table_instance()->BeginDragDropSource(flags); }

tools/update_imgui_function_table.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,7 @@ $function_definitions = @"
244244
#if defined(IMGUI_VERSION_NUM)
245245
246246
// Check that the 'ImTextureID' type has the same size as 'reshade::api::resource_view'
247-
static_assert(sizeof(ImTextureID) == 8, "Missing \"#define ImTextureID uint64_t\" before \"#include <imgui.h>\"");
247+
static_assert(sizeof(ImTextureID) == 8, "missing \"#define ImTextureID ImU64\" before \"#include <imgui.h>\"");
248248
249249
$function_table
250250

0 commit comments

Comments
 (0)