From f2d4b9d881a6dc810bcdac5d8035dd9380fcfbc2 Mon Sep 17 00:00:00 2001
From: Sebastian Gaida <gaida@ca-digit.com>
Date: Thu, 20 May 2021 15:21:18 +0200
Subject: [PATCH] [#14] add example code for window event

---
 projects/first_triangle/src/main.cpp | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/projects/first_triangle/src/main.cpp b/projects/first_triangle/src/main.cpp
index 56903303..d718da09 100644
--- a/projects/first_triangle/src/main.cpp
+++ b/projects/first_triangle/src/main.cpp
@@ -2,6 +2,7 @@
 #include <vkcv/Core.hpp>
 #include <vkcv/Window.hpp>
 #include <vkcv/ShaderProgram.hpp>
+#include <GLFW/glfw3.h>
 
 int main(int argc, const char** argv) {
     const char* applicationName = "First Triangle";
@@ -15,6 +16,32 @@ int main(int argc, const char** argv) {
 		false
     );
 
+    // showing basic usage lambda events of window
+    window.e_mouseMove.add([&](double x, double y){
+        std::cout << "movement: " << x << " , " << y << std::endl;
+    });
+
+    window.e_key.add([&](int key, int scancode, int action, int mods){
+        switch (key) {
+            case GLFW_KEY_W:
+                std::cout << "Move forward" << std::endl;
+                break;
+            case GLFW_KEY_A:
+                std::cout << "Move left" << std::endl;
+                break;
+            case GLFW_KEY_S:
+                std::cout << "Move backward" << std::endl;
+                break;
+            case GLFW_KEY_D:
+                std::cout << "Move right" << std::endl;
+                break;
+            default:
+                std::cout << "this key is not supported yet: " << std::endl;
+        }
+    });
+
+    window.initEvents();
+
 	vkcv::Core core = vkcv::Core::create(
             window,
             applicationName,
-- 
GitLab