# HelloInput Example ## Description This example demonstrates how to handle basic input events by: - Create a window using `WindowWaylandWayland` - Register event listeners using `EventListener` for: - Mouse click events - Specific key events - General keypress events - Print formatted feedback to the console when events are triggered ## Expected Result When you interact with the window, you might see console output like: Clicked on X:450 Y:320! Pressed specifically the a key! Pressed the b key! Make sure that the window has focus. ## Highlighted Code Snippet ```cpp EventListener clickListener(&window.onMouseLeftClick, [](MousePoint point){ std::cout << std::format("Clicked on X:{} Y:{}!", point.x, point.y); }); EventListener keyAListener(&window.onKeyDown['a'], [](){ std::cout << std::format("Pressed specifically the a key!"); }); EventListener anyKeyListener(&window.onAnyKeyDown, [](char key){ std::cout << std::format("Pressed the {} key!", key); }); ``` ## How to Run ```bash crafter-build -c example -r ``` ## Relevant documentation [Window](https://crafter-graphics.docs.catcrafts.net/classCrafter_1_1Window.html)