It's pure implementation detail, so should not be publicly visible
Also fixed the crash of the QOpenGLWidget demo application.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
1. Finish the simple title bar of the QOpenGLWidget demo
2. Minor improvements of the Quick implementation
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
Previously Qt5 can't recognize the Anchor enum, it's fixed now.
Also rename framelesshelper_quick to framelessquickhelper, the
former name was to avoid conflict with an already removed class.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
1. Fix build on 32bit platforms: the "Ptr" suffixed APIs not available on 32bit platforms
2. Reduce the confusion caused by the original "UseStandardWindowLayout" option
3. Minor tweaks of the quick implementation
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
1. Adds some more comments
2. Fixed a typo in QMainWindow example
3. Commented out a block of code that may cause issues
4. Return WVR_REDRAW by default in WM_NCCALCSIZE
5. Other minor tweaks
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
QStringView introduced in Qt 5.10.0
qExchange() introduced in Qt 5.14.0
qSwap() is deprecated, use std::swap() instead
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
1. On Win11 we don't need to paint the frame border, the OS will always draw one for us.
2. Fix the wrong coordinate of the right and bottom frame border of the widget example.
3. Improve the Qt Quick example.
4. Correctly detect the OS version when building against Qt below 5.9.
5. Other minor tweaks.
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
1. The QWinRegistryKey class was introduced in 5.14.0. The implementation is quite clean, so just copy the sources files from Qt repo in case the user is linking against a version older than 5.14.
2. Fixes the rounding error of the self-painted frame border of the examples.
3. Other minor tweaks.
Fixes: #95
Task-number: #94
Signed-off-by: Yuhang Zhao <2546789017@qq.com>
1. Load dwmapi.dll and winmm.dll dynamically at runtime, to remove the dependency on those dlls
2. Use QSystemLibrary to load dlls, it can make the loading of system dlls safer, and avoid duplicating the code
3. Use QWinRegistryKey to access registry, no need to use QSettings in such scenarios
4. Adapt to new code when building against Qt 6.3 and newer.
5. Other minor tweaks.
Fixes: #94