Conversation
… to format script
…oss multiple files
demo: enable Direct2D demo support and define LUI_STATIC for Windows src: link against additional Direct2D libraries and define necessary GUIDs
- Created Direct2D backend implementation (win_direct2d.c, direct2d.cpp, direct2d.hpp) - Integrated Direct2D into Windows build system - Added MinGW cross-compilation toolchain (cmake/mingw32.cmake) - Updated all copyright notices from Michael Fisher to Kushview, LLC - Added Windows MSVC build job to CI alongside existing MinGW job - Unified build and test steps in CI to work across all platforms
Wrapped std::min and std::max in parentheses in public headers (color.hpp, rectangle.hpp, path.hpp) to prevent Windows min/max macro expansion without requiring users to define NOMINMAX.
- Renamed win_direct2d.c to win_direct2d.cpp - Converted C API calls to C++ method syntax (CreateHwndRenderTarget, Release, etc.) - Added proper extern C linkage for puglDirect2DBackend function - Wrapped win.h include in extern C block for correct linkage - Removed COBJMACROS and manual GUID definitions (not needed in C++) - Updated CMakeLists.txt to reference .cpp file
- Renamed win_direct2d.c to win_direct2d.cpp - Converted C API calls to C++ Direct2D/DirectWrite methods - Wrapped pugl win.h include in extern C block for proper linkage - Added WIN32 flag to demo executables for WinMain entry point - Updated CMakeLists.txt to reference .cpp file MSVC requires C++ for Direct2D headers which contain C++-specific syntax like static_cast and enum bitfields. MinGW can compile these headers in either C or C++ mode, but MSVC only supports C++.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #3