mirror of
https://github.com/narzoul/DDrawCompat
synced 2024-12-30 08:55:36 +01:00
Moved unrelated functions from CompatGdiDcFunctions to a new namespace
This commit is contained in:
parent
0b5247d93d
commit
53ae753ae0
@ -4,6 +4,7 @@
|
|||||||
#include "CompatGdiCaret.h"
|
#include "CompatGdiCaret.h"
|
||||||
#include "CompatGdiDcCache.h"
|
#include "CompatGdiDcCache.h"
|
||||||
#include "CompatGdiDcFunctions.h"
|
#include "CompatGdiDcFunctions.h"
|
||||||
|
#include "CompatGdiScrollFunctions.h"
|
||||||
#include "CompatGdiWinProc.h"
|
#include "CompatGdiWinProc.h"
|
||||||
#include "CompatPrimarySurface.h"
|
#include "CompatPrimarySurface.h"
|
||||||
#include "DDrawProcs.h"
|
#include "DDrawProcs.h"
|
||||||
@ -285,6 +286,7 @@ namespace CompatGdi
|
|||||||
}
|
}
|
||||||
|
|
||||||
CompatGdiDcFunctions::installHooks();
|
CompatGdiDcFunctions::installHooks();
|
||||||
|
CompatGdiScrollFunctions::installHooks();
|
||||||
CompatGdiWinProc::installHooks();
|
CompatGdiWinProc::installHooks();
|
||||||
CompatGdiCaret::installHooks();
|
CompatGdiCaret::installHooks();
|
||||||
}
|
}
|
||||||
|
@ -101,31 +101,6 @@ namespace
|
|||||||
{
|
{
|
||||||
return &compatGdiDcFunc<OrigFuncPtr, origFunc, Result, Params...>;
|
return &compatGdiDcFunc<OrigFuncPtr, origFunc, Result, Params...>;
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOL WINAPI scrollWindow(
|
|
||||||
_In_ HWND hWnd,
|
|
||||||
_In_ int XAmount,
|
|
||||||
_In_ int YAmount,
|
|
||||||
_In_ const RECT *lpRect,
|
|
||||||
_In_ const RECT *lpClipRect)
|
|
||||||
{
|
|
||||||
InvalidateRect(hWnd, nullptr, TRUE);
|
|
||||||
return CALL_ORIG_GDI(ScrollWindow)(hWnd, XAmount, YAmount, lpRect, lpClipRect);
|
|
||||||
}
|
|
||||||
|
|
||||||
int WINAPI scrollWindowEx(
|
|
||||||
_In_ HWND hWnd,
|
|
||||||
_In_ int dx,
|
|
||||||
_In_ int dy,
|
|
||||||
_In_ const RECT *prcScroll,
|
|
||||||
_In_ const RECT *prcClip,
|
|
||||||
_In_ HRGN hrgnUpdate,
|
|
||||||
_Out_ LPRECT prcUpdate,
|
|
||||||
_In_ UINT flags)
|
|
||||||
{
|
|
||||||
InvalidateRect(hWnd, nullptr, TRUE);
|
|
||||||
return CALL_ORIG_GDI(ScrollWindowEx)(hWnd, dx, dy, prcScroll, prcClip, hrgnUpdate, prcUpdate, flags);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#define HOOK_GDI_DC_FUNCTION(module, func) \
|
#define HOOK_GDI_DC_FUNCTION(module, func) \
|
||||||
@ -226,8 +201,6 @@ namespace CompatGdiDcFunctions
|
|||||||
|
|
||||||
// Scroll bar functions
|
// Scroll bar functions
|
||||||
HOOK_GDI_DC_FUNCTION(user32, ScrollDC);
|
HOOK_GDI_DC_FUNCTION(user32, ScrollDC);
|
||||||
HOOK_GDI_FUNCTION(user32, ScrollWindow, scrollWindow);
|
|
||||||
HOOK_GDI_FUNCTION(user32, ScrollWindowEx, scrollWindowEx);
|
|
||||||
|
|
||||||
DetourTransactionCommit();
|
DetourTransactionCommit();
|
||||||
}
|
}
|
||||||
|
43
DDrawCompat/CompatGdiScrollFunctions.cpp
Normal file
43
DDrawCompat/CompatGdiScrollFunctions.cpp
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
#include "CompatGdi.h"
|
||||||
|
#include "CompatGdiScrollFunctions.h"
|
||||||
|
|
||||||
|
#include <detours.h>
|
||||||
|
|
||||||
|
namespace
|
||||||
|
{
|
||||||
|
BOOL WINAPI scrollWindow(
|
||||||
|
_In_ HWND hWnd,
|
||||||
|
_In_ int XAmount,
|
||||||
|
_In_ int YAmount,
|
||||||
|
_In_ const RECT *lpRect,
|
||||||
|
_In_ const RECT *lpClipRect)
|
||||||
|
{
|
||||||
|
InvalidateRect(hWnd, nullptr, TRUE);
|
||||||
|
return CALL_ORIG_GDI(ScrollWindow)(hWnd, XAmount, YAmount, lpRect, lpClipRect);
|
||||||
|
}
|
||||||
|
|
||||||
|
int WINAPI scrollWindowEx(
|
||||||
|
_In_ HWND hWnd,
|
||||||
|
_In_ int dx,
|
||||||
|
_In_ int dy,
|
||||||
|
_In_ const RECT *prcScroll,
|
||||||
|
_In_ const RECT *prcClip,
|
||||||
|
_In_ HRGN hrgnUpdate,
|
||||||
|
_Out_ LPRECT prcUpdate,
|
||||||
|
_In_ UINT flags)
|
||||||
|
{
|
||||||
|
InvalidateRect(hWnd, nullptr, TRUE);
|
||||||
|
return CALL_ORIG_GDI(ScrollWindowEx)(hWnd, dx, dy, prcScroll, prcClip, hrgnUpdate, prcUpdate, flags);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace CompatGdiScrollFunctions
|
||||||
|
{
|
||||||
|
void installHooks()
|
||||||
|
{
|
||||||
|
DetourTransactionBegin();
|
||||||
|
HOOK_GDI_FUNCTION(user32, ScrollWindow, scrollWindow);
|
||||||
|
HOOK_GDI_FUNCTION(user32, ScrollWindowEx, scrollWindowEx);
|
||||||
|
DetourTransactionCommit();
|
||||||
|
}
|
||||||
|
}
|
6
DDrawCompat/CompatGdiScrollFunctions.h
Normal file
6
DDrawCompat/CompatGdiScrollFunctions.h
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
namespace CompatGdiScrollFunctions
|
||||||
|
{
|
||||||
|
void installHooks();
|
||||||
|
};
|
@ -151,6 +151,7 @@
|
|||||||
<ClInclude Include="CompatGdiDcCache.h" />
|
<ClInclude Include="CompatGdiDcCache.h" />
|
||||||
<ClInclude Include="CompatGdiDcFunctions.h" />
|
<ClInclude Include="CompatGdiDcFunctions.h" />
|
||||||
<ClInclude Include="CompatGdiScrollBar.h" />
|
<ClInclude Include="CompatGdiScrollBar.h" />
|
||||||
|
<ClInclude Include="CompatGdiScrollFunctions.h" />
|
||||||
<ClInclude Include="CompatGdiTitleBar.h" />
|
<ClInclude Include="CompatGdiTitleBar.h" />
|
||||||
<ClInclude Include="CompatGdiWinProc.h" />
|
<ClInclude Include="CompatGdiWinProc.h" />
|
||||||
<ClInclude Include="Config.h" />
|
<ClInclude Include="Config.h" />
|
||||||
@ -178,6 +179,7 @@
|
|||||||
<ClCompile Include="CompatGdiDcCache.cpp" />
|
<ClCompile Include="CompatGdiDcCache.cpp" />
|
||||||
<ClCompile Include="CompatGdiDcFunctions.cpp" />
|
<ClCompile Include="CompatGdiDcFunctions.cpp" />
|
||||||
<ClCompile Include="CompatGdiScrollBar.cpp" />
|
<ClCompile Include="CompatGdiScrollBar.cpp" />
|
||||||
|
<ClCompile Include="CompatGdiScrollFunctions.cpp" />
|
||||||
<ClCompile Include="CompatGdiTitleBar.cpp" />
|
<ClCompile Include="CompatGdiTitleBar.cpp" />
|
||||||
<ClCompile Include="CompatGdiWinProc.cpp" />
|
<ClCompile Include="CompatGdiWinProc.cpp" />
|
||||||
<ClCompile Include="CompatVtable.cpp" />
|
<ClCompile Include="CompatVtable.cpp" />
|
||||||
|
@ -87,6 +87,9 @@
|
|||||||
<ClInclude Include="CompatGdiDcFunctions.h">
|
<ClInclude Include="CompatGdiDcFunctions.h">
|
||||||
<Filter>Header Files</Filter>
|
<Filter>Header Files</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
<ClInclude Include="CompatGdiScrollFunctions.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="DllMain.cpp">
|
<ClCompile Include="DllMain.cpp">
|
||||||
@ -146,6 +149,9 @@
|
|||||||
<ClCompile Include="CompatGdiDcFunctions.cpp">
|
<ClCompile Include="CompatGdiDcFunctions.cpp">
|
||||||
<Filter>Source Files</Filter>
|
<Filter>Source Files</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
|
<ClCompile Include="CompatGdiScrollFunctions.cpp">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="DDrawCompat.def">
|
<None Include="DDrawCompat.def">
|
||||||
|
Loading…
x
Reference in New Issue
Block a user