diff options
| author | a1xd <[email protected]> | 2020-07-31 17:56:46 -0400 |
|---|---|---|
| committer | GitHub <[email protected]> | 2020-07-31 17:56:46 -0400 |
| commit | 1fcbb0fa51dbc35958d211026e4d40384a049049 (patch) | |
| tree | efb65bf3f305f376ea75f4f687b08bf8998c020f /wrapper | |
| parent | Merge pull request #6 from a1xd/st-refactor (diff) | |
| parent | Show no settings for off, remove unused class for PR (diff) | |
| download | rawaccel-1fcbb0fa51dbc35958d211026e4d40384a049049.tar.xz rawaccel-1fcbb0fa51dbc35958d211026e4d40384a049049.zip | |
Merge pull request #7 from JacobPalecki/GUI
Add GUI
Diffstat (limited to 'wrapper')
| -rw-r--r-- | wrapper/wrapper.cpp | 44 | ||||
| -rw-r--r-- | wrapper/wrapper.hpp | 21 | ||||
| -rw-r--r-- | wrapper/wrapper.vcxproj | 2 | ||||
| -rw-r--r-- | wrapper/wrapper.vcxproj.filters | 6 | ||||
| -rw-r--r-- | wrapper/wrapper_writer.cpp | 9 | ||||
| -rw-r--r-- | wrapper/wrapper_writer.hpp | 7 |
6 files changed, 86 insertions, 3 deletions
diff --git a/wrapper/wrapper.cpp b/wrapper/wrapper.cpp index 26d05ec..ceee1a1 100644 --- a/wrapper/wrapper.cpp +++ b/wrapper/wrapper.cpp @@ -1,7 +1,6 @@ #pragma once -#include "..\common\rawaccel.hpp"; -#include "wrapper.hpp"; +#include "wrapper.hpp" using namespace rawaccel; using namespace System; @@ -14,4 +13,43 @@ Tuple<double, double>^ ManagedAccel::Accelerate(int x, int y, double time) vec2d output = (*modifier_instance).modify_with_accel(input_vec2d, (milliseconds)time); return gcnew Tuple<double, double>(output.x, output.y); -}
\ No newline at end of file +} + +void ManagedAccel::UpdateAccel( + int mode, + double rotation, + double sensitivityX, + double sensitivityY, + double weightX, + double weightY, + double capX, + double capY, + double offset, + double accel, + double lim_exp, + double midpoint) +{ + delete modifier_instance; + + modifier_args args{}; + args.acc_fn_args.accel_mode = mode; + args.degrees = rotation; + args.sens.x = sensitivityX; + args.sens.y = sensitivityY; + args.acc_fn_args.acc_args.weight.x = weightX; + args.acc_fn_args.acc_args.weight.y = weightY; + args.acc_fn_args.cap.x = capX; + args.acc_fn_args.cap.y = capY; + args.acc_fn_args.acc_args.offset = offset; + args.acc_fn_args.acc_args.accel = accel; + args.acc_fn_args.acc_args.limit = lim_exp; + args.acc_fn_args.acc_args.exponent = lim_exp; + args.acc_fn_args.acc_args.midpoint = midpoint; + + modifier_instance = new mouse_modifier(args); +} + +void ManagedAccel::WriteToDriver() +{ + driverWriter->writeToDriver(modifier_instance); +} diff --git a/wrapper/wrapper.hpp b/wrapper/wrapper.hpp index 42f5865..870aca7 100644 --- a/wrapper/wrapper.hpp +++ b/wrapper/wrapper.hpp @@ -1,5 +1,6 @@ #pragma once +#include "wrapper_writer.hpp" #include "..\common\rawaccel.hpp"; #include "..\common\accel-error.hpp"; #include <iostream> @@ -15,15 +16,18 @@ public ref class ManagedAccel { protected: mouse_modifier* modifier_instance; + writer* driverWriter; public: ManagedAccel(mouse_modifier* accel) : modifier_instance(accel) { + driverWriter = new writer(); } ManagedAccel(System::IntPtr args) { modifier_instance = new mouse_modifier(*reinterpret_cast<modifier_args*>(args.ToPointer())); + driverWriter = new writer(); } virtual ~ManagedAccel() @@ -47,4 +51,21 @@ public: } Tuple<double, double>^ Accelerate(int x, int y, double time); + + void UpdateAccel( + int mode, + double rotation, + double sensitivityX, + double sensitivityY, + double weightX, + double weightY, + double capX, + double capY, + double offset, + double accel, + double lim_exp, + double midpoint); + + + void WriteToDriver(); };
\ No newline at end of file diff --git a/wrapper/wrapper.vcxproj b/wrapper/wrapper.vcxproj index d27266d..28acbe7 100644 --- a/wrapper/wrapper.vcxproj +++ b/wrapper/wrapper.vcxproj @@ -116,9 +116,11 @@ </ItemDefinitionGroup> <ItemGroup> <ClInclude Include="wrapper.hpp" /> + <ClInclude Include="wrapper_writer.hpp" /> </ItemGroup> <ItemGroup> <ClCompile Include="wrapper.cpp" /> + <ClCompile Include="wrapper_writer.cpp" /> </ItemGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <ImportGroup Label="ExtensionTargets"> diff --git a/wrapper/wrapper.vcxproj.filters b/wrapper/wrapper.vcxproj.filters index 22d967d..28b22ba 100644 --- a/wrapper/wrapper.vcxproj.filters +++ b/wrapper/wrapper.vcxproj.filters @@ -18,10 +18,16 @@ <ClInclude Include="wrapper.hpp"> <Filter>Header Files</Filter> </ClInclude> + <ClInclude Include="wrapper_writer.hpp"> + <Filter>Header Files</Filter> + </ClInclude> </ItemGroup> <ItemGroup> <ClCompile Include="wrapper.cpp"> <Filter>Source Files</Filter> </ClCompile> + <ClCompile Include="wrapper_writer.cpp"> + <Filter>Source Files</Filter> + </ClCompile> </ItemGroup> </Project>
\ No newline at end of file diff --git a/wrapper/wrapper_writer.cpp b/wrapper/wrapper_writer.cpp new file mode 100644 index 0000000..0a74105 --- /dev/null +++ b/wrapper/wrapper_writer.cpp @@ -0,0 +1,9 @@ +#pragma once + +#include "..\console\console_write.cpp" +#include "wrapper_writer.hpp" + +void writer::writeToDriver(rawaccel::mouse_modifier* modifier) +{ + write(*modifier); +} diff --git a/wrapper/wrapper_writer.hpp b/wrapper/wrapper_writer.hpp new file mode 100644 index 0000000..591f62f --- /dev/null +++ b/wrapper/wrapper_writer.hpp @@ -0,0 +1,7 @@ +#pragma once + +#include "..\common\rawaccel.hpp" + +struct writer { + void writeToDriver(rawaccel::mouse_modifier* modifier); +};
\ No newline at end of file |