bool ClipToolController::AddClipPointPart::doMouseClick(const InputState& inputState) { if (!inputState.mouseButtonsPressed(MouseButtons::MBLeft) || !inputState.modifierKeysPressed(ModifierKeys::MKNone)) return false; Vec3 temp; return m_callback->addClipPoint(inputState, temp); }
MoveObjectsToolController::MoveInfo MoveObjectsToolController::doStartMove(const InputState& inputState) { if (!inputState.modifierKeysPressed(ModifierKeys::MKNone) && !inputState.modifierKeysPressed(ModifierKeys::MKAlt) && !inputState.modifierKeysPressed(ModifierKeys::MKCtrlCmd) && !inputState.modifierKeysPressed(ModifierKeys::MKCtrlCmd | ModifierKeys::MKAlt)) return MoveInfo(); const Model::PickResult& pickResult = inputState.pickResult(); const Model::Hit& hit = pickResult.query().pickable().type(Model::Group::GroupHit | Model::Entity::EntityHit | Model::Brush::BrushHit).selected().first(); if (!hit.isMatch()) return MoveInfo(); if (!m_tool->startMove(inputState)) return MoveInfo(); return MoveInfo(hit.hitPoint()); }
bool UVRotateTool::doStartMouseDrag(const InputState& inputState) { assert(m_helper.valid()); if (!inputState.modifierKeysPressed(ModifierKeys::MKNone) || !inputState.mouseButtonsPressed(MouseButtons::MBLeft)) return false; const Model::PickResult& pickResult = inputState.pickResult(); const Model::Hit& angleHandleHit = pickResult.query().type(AngleHandleHit).occluded().first(); if (!angleHandleHit.isMatch()) return false; const Model::BrushFace* face = m_helper.face(); const Mat4x4 toFace = face->toTexCoordSystemMatrix(Vec2f::Null, Vec2f::One, true); const Vec2f hitPointInFaceCoords(toFace * angleHandleHit.hitPoint()); m_initalAngle = measureAngle(hitPointInFaceCoords) - face->rotation(); MapDocumentSPtr document = lock(m_document); document->beginTransaction("Rotate Texture"); return true; }
bool ResizeBrushesToolController::handleInput(const InputState& inputState) const { return ((inputState.modifierKeysPressed(ModifierKeys::MKShift) || inputState.modifierKeysPressed(ModifierKeys::MKShift | ModifierKeys::MKCtrlCmd)) && m_tool->applies()); }
bool ClipToolController::AddClipPointPart::doMouseDoubleClick(const InputState& inputState) { if (!inputState.mouseButtonsPressed(MouseButtons::MBLeft) || !inputState.modifierKeysPressed(ModifierKeys::MKNone)) return false; return m_callback->setClipFace(inputState); }
bool CameraTool2D::look(const InputState& inputState) const { return (inputState.mouseButtonsPressed(MouseButtons::MBRight) && inputState.modifierKeysPressed(ModifierKeys::MKNone)); }