MCPcopy Create free account
hub / github.com/NazaraEngine/NazaraEngine / ManageInput

Method ManageInput

tests/Engine/Platform/EventHandler/KeyState.cpp:36–77  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

34}
35
36void KeyState::ManageInput(KeyStatus /*isKeyPressed*/, const Nz::WindowEvent::KeyEvent& key, Ndk::StateMachine& fsm)
37{
38 if (key.code == Nz::Keyboard::Key::M && key.shift)
39 fsm.ChangeState(StateFactory::Get(EventStatus::Menu));
40 else if (key.code == Nz::Keyboard::Key::N && key.shift)
41 {
42 if (m_keyStatus == KeyStatus::Pressed)
43 m_keyStatus = KeyStatus::Released;
44 else
45 m_keyStatus = KeyStatus::Pressed;
46 }
47 else
48 {
49 Nz::String content;
50 if (m_keyStatus == KeyStatus::Pressed)
51 content = "Pressed: ";
52 else
53 content = "Released: ";
54
55 Nz::String keyName = Nz::Keyboard::GetKeyName(key.code);
56 if (keyName.IsEmpty())
57 {
58 m_text.SetContent("Unknown\nM for Menu");
59 }
60 else
61 {
62 content += keyName;
63 if (key.alt)
64 content += " alt";
65 if (key.control)
66 content += " control";
67 if (key.repeated)
68 content += " repeated";
69 if (key.shift)
70 content += " shift";
71 if (key.system)
72 content += " system";
73
74 m_text.SetContent(content + "\nM for Menu");
75 }
76 }
77}

Callers

nothing calls this directly

Calls 2

IsEmptyMethod · 0.80
SetContentMethod · 0.80

Tested by

no test coverage detected