MCPcopy Create free account
hub / github.com/NVIDIAGameWorks/Falcor / onKeyEvent

Method onKeyEvent

Source/RenderPasses/SDFEditor/SDFEditor.cpp:1394–1609  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1392}
1393
1394bool SDFEditor::onKeyEvent(const KeyboardEvent& keyEvent)
1395{
1396 mUI2D.keyboardButtonsPressed.registerCurrentStatesIntoPrevious();
1397
1398 if (keyEvent.type == KeyboardEvent::Type::KeyPressed)
1399 {
1400 switch (keyEvent.key)
1401 {
1402 case Input::Key::LeftControl:
1403 case Input::Key::RightControl:
1404 mUI2D.keyboardButtonsPressed.control = true;
1405 mpScene->setCameraControlsEnabled(false);
1406 return true;
1407 case Input::Key::LeftAlt:
1408 case Input::Key::RightAlt:
1409 mEditingKeyDown = true;
1410 mInstanceTransformationEdit.state = TransformationState::None;
1411 mPrimitiveTransformationEdit.state = TransformationState::None;
1412 mpScene->setCameraControlsEnabled(false);
1413 handleToggleEditing();
1414 return true;
1415 case Input::Key::LeftShift:
1416 case Input::Key::RightShift:
1417 mUI2D.keyboardButtonsPressed.shift = true;
1418 mPrimitiveTransformationEdit.state = TransformationState::None;
1419 mpScene->setCameraControlsEnabled(false);
1420 return true;
1421 case Input::Key::Tab:
1422 mGUIKeyDown = true;
1423 mUI2D.recordStartingMousePos = true;
1424 mInstanceTransformationEdit.state = TransformationState::None;
1425 mpScene->setCameraControlsEnabled(false);
1426 return true;
1427 case Input::Key::G:
1428 mUI2D.gridPlane.active = !mUI2D.gridPlane.active;
1429 return true;
1430 case Input::Key::H:
1431 handleToggleSymmetryPlane();
1432 return true;
1433 case Input::Key::B:
1434 mUI2D.bbRenderSettings.renderMode = (mUI2D.bbRenderSettings.renderMode + 1) % uint32_t(SDFBBRenderMode::Count);
1435 return true;
1436 case Input::Key::C:
1437 if (!mEditingKeyDown && !keyEvent.hasModifier(Input::Modifier::Ctrl) && !keyEvent.hasModifier(Input::Modifier::Shift))
1438 {
1439 mAllowEditingOnOtherSurfaces = !mAllowEditingOnOtherSurfaces;
1440 return true;
1441 }
1442 break;
1443 case Input::Key::X:
1444 if (!mEditingKeyDown && !keyEvent.hasModifier(Input::Modifier::Ctrl) && !keyEvent.hasModifier(Input::Modifier::Shift))
1445 {
1446 mPreviewEnabled = !mPreviewEnabled;
1447 return true;
1448 }
1449 break;
1450 case Input::Key::Z:
1451 if (keyEvent.hasModifier(Input::Modifier::Ctrl) && !mEditingKeyDown)

Callers

nothing calls this directly

Calls 4

hasModifierMethod · 0.80
getCurrentTimePointMethod · 0.80

Tested by

no test coverage detected