Skip to content

Commit

Permalink
Barebones GUI Implementation
Browse files Browse the repository at this point in the history
Implements Barebone GUI.
Lightbar color on GUI is the same as in the controller
Shows Battery level
Analog Sticks move on screen
  • Loading branch information
Denellyne committed Jan 4, 2024
1 parent de13693 commit e1e5706
Show file tree
Hide file tree
Showing 46 changed files with 62,835 additions and 27 deletions.
67 changes: 56 additions & 11 deletions DualSenseToXInput.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -77,18 +77,26 @@
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>.\customInclude;.\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>.\Include\tray;.\imgui\cpp;.\imgui\header;.\imgui\header\GLFW;.\customInclude;.\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalOptions>/sdl /w34996 %(AdditionalOptions)</AdditionalOptions>
<AssemblerOutput>AssemblyAndSourceCode</AssemblerOutput>
<AssemblerOutput>NoListing</AssemblerOutput>
<TreatWarningAsError>false</TreatWarningAsError>
<LanguageStandard>stdcpp20</LanguageStandard>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<LanguageStandard_C>Default</LanguageStandard_C>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>XInput.lib;dxguid.lib;setupapi.lib;.\Include\ViGEm\ViGEmClient.lib;.\Include\hidapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>XInput.lib;dxguid.lib;setupapi.lib;.\Include\ViGEm\ViGEmClient.lib;.\Include\hidapi.lib;.\imgui\header\GLFW\glfw3dll.lib;opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<Driver>NotSet</Driver>
<AllowIsolation>false</AllowIsolation>
<Profile>true</Profile>
<DelayLoadDLLs>
</DelayLoadDLLs>
<IgnoreSpecificDefaultLibraries>
</IgnoreSpecificDefaultLibraries>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
Expand All @@ -99,7 +107,7 @@
<SDLCheck>false</SDLCheck>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>.\customInclude;.\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>.\Include\tray;.\imgui\cpp;.\imgui\header;.\imgui\header\GLFW;.\customInclude;.\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<DebugInformationFormat>None</DebugInformationFormat>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
Expand All @@ -109,15 +117,19 @@
<BufferSecurityCheck>false</BufferSecurityCheck>
<ControlFlowGuard>false</ControlFlowGuard>
<EnableParallelCodeGeneration>true</EnableParallelCodeGeneration>
<LanguageStandard>stdcpp20</LanguageStandard>
<LanguageStandard_C>Default</LanguageStandard_C>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>XInput.lib;dxguid.lib;setupapi.lib;.\Include\ViGEm\ViGEmClient.lib;.\Include\hidapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>XInput.lib;dxguid.lib;setupapi.lib;.\Include\ViGEm\ViGEmClient.lib;.\Include\hidapi.lib;.\imgui\header\GLFW\glfw3dll.lib;opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<Driver>NotSet</Driver>
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
<DelayLoadDLLs>
</DelayLoadDLLs>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
Expand All @@ -126,18 +138,26 @@
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>.\customInclude;.\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>.\Include\tray;.\imgui\cpp;.\imgui\header;.\imgui\header\GLFW;.\customInclude;.\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalOptions>/sdl /w34996 %(AdditionalOptions)</AdditionalOptions>
<AssemblerOutput>AssemblyAndSourceCode</AssemblerOutput>
<AssemblerOutput>NoListing</AssemblerOutput>
<TreatWarningAsError>false</TreatWarningAsError>
<LanguageStandard>stdcpp20</LanguageStandard>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
<LanguageStandard_C>Default</LanguageStandard_C>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>XInput.lib;dxguid.lib;setupapi.lib;.\Include\ViGEm\ViGEmClient.lib;.\Include\hidapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>XInput.lib;dxguid.lib;setupapi.lib;.\Include\ViGEm\ViGEmClient.lib;.\Include\hidapi.lib;.\imgui\header\GLFW\glfw3dll.lib;opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<Driver>NotSet</Driver>
<AllowIsolation>false</AllowIsolation>
<Profile>true</Profile>
<DelayLoadDLLs>
</DelayLoadDLLs>
<IgnoreSpecificDefaultLibraries>
</IgnoreSpecificDefaultLibraries>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
Expand All @@ -148,7 +168,7 @@
<SDLCheck>false</SDLCheck>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>.\customInclude;.\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>.\Include\tray;.\imgui\cpp;.\imgui\header;.\imgui\header\GLFW;.\customInclude;.\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<DebugInformationFormat>None</DebugInformationFormat>
<MultiProcessorCompilation>true</MultiProcessorCompilation>
Expand All @@ -158,24 +178,49 @@
<BufferSecurityCheck>false</BufferSecurityCheck>
<ControlFlowGuard>false</ControlFlowGuard>
<EnableParallelCodeGeneration>true</EnableParallelCodeGeneration>
<LanguageStandard>stdcpp20</LanguageStandard>
<LanguageStandard_C>Default</LanguageStandard_C>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>XInput.lib;dxguid.lib;setupapi.lib;.\Include\ViGEm\ViGEmClient.lib;.\Include\hidapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>XInput.lib;dxguid.lib;setupapi.lib;.\Include\ViGEm\ViGEmClient.lib;.\Include\hidapi.lib;.\imgui\header\GLFW\glfw3dll.lib;opengl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<Driver>NotSet</Driver>
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
<DelayLoadDLLs>
</DelayLoadDLLs>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="customInclude\GUI.cpp" />
<ClCompile Include="customInclude\util.cpp" />
<ClCompile Include="Include\ViGEm\Client.cpp" />
<ClCompile Include="imgui\cpp\imgui.cpp" />
<ClCompile Include="imgui\cpp\imgui_draw.cpp" />
<ClCompile Include="imgui\cpp\imgui_impl_glfw.cpp" />
<ClCompile Include="imgui\cpp\imgui_impl_opengl3.cpp" />
<ClCompile Include="imgui\cpp\imgui_stdlib.cpp" />
<ClCompile Include="imgui\cpp\imgui_tables.cpp" />
<ClCompile Include="imgui\cpp\imgui_widgets.cpp" />
<ClCompile Include="main.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="customInclude\GUI.h" />
<ClInclude Include="customInclude\util.h" />
<ClInclude Include="imgui\header\GLFW\glfw3.h" />
<ClInclude Include="imgui\header\GLFW\glfw3native.h" />
<ClInclude Include="imgui\header\imconfig.h" />
<ClInclude Include="imgui\header\imgui.h" />
<ClInclude Include="imgui\header\imgui_impl_glfw.h" />
<ClInclude Include="imgui\header\imgui_impl_opengl3.h" />
<ClInclude Include="imgui\header\imgui_impl_opengl3_loader.h" />
<ClInclude Include="imgui\header\imgui_internal.h" />
<ClInclude Include="imgui\header\imgui_stdlib.h" />
<ClInclude Include="imgui\header\imstb_rectpack.h" />
<ClInclude Include="imgui\header\imstb_textedit.h" />
<ClInclude Include="imgui\header\imstb_truetype.h" />
<ClInclude Include="imgui\header\stb_image.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
Expand Down
85 changes: 80 additions & 5 deletions DualSenseToXInput.vcxproj.filters
Original file line number Diff line number Diff line change
Expand Up @@ -13,21 +13,96 @@
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
</Filter>
<Filter Include="Source Files\Backend">
<UniqueIdentifier>{d07c9697-9dce-438e-94e2-0c124e526e1c}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\FrontEnd">
<UniqueIdentifier>{342b1684-87df-4838-a1c3-93169f5947b7}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\ImGui">
<UniqueIdentifier>{cebe3235-338e-4573-92a3-fb0489e937e3}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\systemTray">
<UniqueIdentifier>{20663cb5-520f-41bf-bfdc-65f95074fe48}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="main.cpp">
<Filter>Source Files</Filter>
<Filter>Source Files\Backend</Filter>
</ClCompile>
<ClCompile Include="customInclude\util.cpp">
<Filter>Source Files</Filter>
<Filter>Source Files\Backend</Filter>
</ClCompile>
<ClCompile Include="customInclude\GUI.cpp">
<Filter>Source Files\FrontEnd</Filter>
</ClCompile>
<ClCompile Include="imgui\cpp\imgui.cpp">
<Filter>Source Files\ImGui</Filter>
</ClCompile>
<ClCompile Include="imgui\cpp\imgui_draw.cpp">
<Filter>Source Files\ImGui</Filter>
</ClCompile>
<ClCompile Include="Include\ViGEm\Client.cpp">
<Filter>Source Files</Filter>
<ClCompile Include="imgui\cpp\imgui_impl_glfw.cpp">
<Filter>Source Files\ImGui</Filter>
</ClCompile>
<ClCompile Include="imgui\cpp\imgui_impl_opengl3.cpp">
<Filter>Source Files\ImGui</Filter>
</ClCompile>
<ClCompile Include="imgui\cpp\imgui_stdlib.cpp">
<Filter>Source Files\ImGui</Filter>
</ClCompile>
<ClCompile Include="imgui\cpp\imgui_tables.cpp">
<Filter>Source Files\ImGui</Filter>
</ClCompile>
<ClCompile Include="imgui\cpp\imgui_widgets.cpp">
<Filter>Source Files\ImGui</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="customInclude\util.h">
<Filter>Source Files</Filter>
<Filter>Source Files\Backend</Filter>
</ClInclude>
<ClInclude Include="customInclude\GUI.h">
<Filter>Source Files\FrontEnd</Filter>
</ClInclude>
<ClInclude Include="imgui\header\GLFW\glfw3.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
<ClInclude Include="imgui\header\GLFW\glfw3native.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
<ClInclude Include="imgui\header\imconfig.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
<ClInclude Include="imgui\header\imgui.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
<ClInclude Include="imgui\header\imgui_impl_glfw.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
<ClInclude Include="imgui\header\imgui_impl_opengl3.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
<ClInclude Include="imgui\header\imgui_impl_opengl3_loader.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
<ClInclude Include="imgui\header\imgui_internal.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
<ClInclude Include="imgui\header\imgui_stdlib.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
<ClInclude Include="imgui\header\imstb_rectpack.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
<ClInclude Include="imgui\header\imstb_textedit.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
<ClInclude Include="imgui\header\imstb_truetype.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
<ClInclude Include="imgui\header\stb_image.h">
<Filter>Source Files\ImGui</Filter>
</ClInclude>
</ItemGroup>
</Project>
Empty file removed Include/ViGEm/Client.cpp
Empty file.
6 changes: 3 additions & 3 deletions PCXSense.sln
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.8.34330.188
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "DualSenseToXInput", "DualSenseToXInput.vcxproj", "{2008FC36-F82F-4D6A-836E-265BF6B36531}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PCXSense", "DualSenseToXInput.vcxproj", "{2008FC36-F82F-4D6A-836E-265BF6B36531}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Expand All @@ -18,8 +18,8 @@ Global
{2008FC36-F82F-4D6A-836E-265BF6B36531}.Debug|x86.ActiveCfg = Debug|Win32
{2008FC36-F82F-4D6A-836E-265BF6B36531}.Release|x64.ActiveCfg = Release|x64
{2008FC36-F82F-4D6A-836E-265BF6B36531}.Release|x64.Build.0 = Release|x64
{2008FC36-F82F-4D6A-836E-265BF6B36531}.Release|x86.ActiveCfg = Release|Win32
{2008FC36-F82F-4D6A-836E-265BF6B36531}.Release|x86.Build.0 = Release|Win32
{2008FC36-F82F-4D6A-836E-265BF6B36531}.Release|x86.ActiveCfg = Release|x64
{2008FC36-F82F-4D6A-836E-265BF6B36531}.Release|x86.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down
Loading

0 comments on commit e1e5706

Please sign in to comment.