| 178 | } |
| 179 | |
| 180 | void HPPApiVulkanSample::input_event(const vkb::InputEvent &input_event) |
| 181 | { |
| 182 | vkb::VulkanSampleCpp::input_event(input_event); |
| 183 | |
| 184 | bool gui_captures_event = false; |
| 185 | |
| 186 | if (has_gui()) |
| 187 | { |
| 188 | gui_captures_event = get_gui().input_event(input_event); |
| 189 | } |
| 190 | |
| 191 | if (!gui_captures_event) |
| 192 | { |
| 193 | if (input_event.get_source() == vkb::EventSource::Mouse) |
| 194 | { |
| 195 | const auto &mouse_button = static_cast<const vkb::MouseButtonInputEvent &>(input_event); |
| 196 | |
| 197 | handle_mouse_move(static_cast<int32_t>(mouse_button.get_pos_x()), static_cast<int32_t>(mouse_button.get_pos_y())); |
| 198 | |
| 199 | if (mouse_button.get_action() == vkb::MouseAction::Down) |
| 200 | { |
| 201 | switch (mouse_button.get_button()) |
| 202 | { |
| 203 | case vkb::MouseButton::Left: |
| 204 | mouse_buttons.left = true; |
| 205 | break; |
| 206 | case vkb::MouseButton::Right: |
| 207 | mouse_buttons.right = true; |
| 208 | break; |
| 209 | case vkb::MouseButton::Middle: |
| 210 | mouse_buttons.middle = true; |
| 211 | break; |
| 212 | default: |
| 213 | break; |
| 214 | } |
| 215 | } |
| 216 | else if (mouse_button.get_action() == vkb::MouseAction::Up) |
| 217 | { |
| 218 | switch (mouse_button.get_button()) |
| 219 | { |
| 220 | case vkb::MouseButton::Left: |
| 221 | mouse_buttons.left = false; |
| 222 | break; |
| 223 | case vkb::MouseButton::Right: |
| 224 | mouse_buttons.right = false; |
| 225 | break; |
| 226 | case vkb::MouseButton::Middle: |
| 227 | mouse_buttons.middle = false; |
| 228 | break; |
| 229 | default: |
| 230 | break; |
| 231 | } |
| 232 | } |
| 233 | } |
| 234 | else if (input_event.get_source() == vkb::EventSource::Touchscreen) |
| 235 | { |
| 236 | const auto &touch_event = static_cast<const vkb::TouchInputEvent &>(input_event); |
| 237 |
nothing calls this directly
no test coverage detected