Add Event system

- Add abstract Event class
- Add EventDispatcher
- Add Mouse, Key and Window Events
This commit is contained in:
Thraix
2023-04-26 21:55:32 +02:00
parent 1731bb1dd5
commit ca7286807a
30 changed files with 670 additions and 59 deletions
+69
View File
@@ -150,6 +150,36 @@
<ClCompile Include="src\copium\util\RuntimeException.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\copium\event\Event.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\copium\event\MousePressEvent.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\copium\event\MouseReleaseEvent.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\copium\event\MouseMoveEvent.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\copium\event\KeyPressEvent.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\copium\event\KeyReleaseEvent.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\copium\event\EventDispatcher.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\copium\event\WindowResizeEvent.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\copium\event\WindowFocusEvent.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\copium\event\MouseScrollEvent.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="src\copium\sampler\DepthAttachment.h">
@@ -293,5 +323,44 @@
<ClInclude Include="src\copium\util\RuntimeException.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\Event.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\EventType.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\MousePressEvent.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\MouseReleaseEvent.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\MouseMoveEvent.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\KeyPressEvent.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\KeyReleaseEvent.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\EventDispatcher.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\EventHandler.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\EventResult.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\WindowResizeEvent.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\WindowFocusEvent.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\copium\event\MouseScrollEvent.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
</Project>