diff --git a/src/Core/Scene/CScene.cpp b/src/Core/Scene/CScene.cpp index f1ad13d9..8721c998 100644 --- a/src/Core/Scene/CScene.cpp +++ b/src/Core/Scene/CScene.cpp @@ -324,12 +324,12 @@ CScriptNode* CScene::NodeForInstanceID(uint32 InstanceID) return nullptr; } -CScriptNode* CScene::NodeForInstance(CScriptObject *pObj) +CScriptNode* CScene::NodeForInstance(const CScriptObject *pObj) { return (pObj ? NodeForInstanceID(pObj->InstanceID()) : nullptr); } -CLightNode* CScene::NodeForLight(CLight *pLight) +CLightNode* CScene::NodeForLight(const CLight *pLight) { // Slow. Is there a better way to do this? std::vector& rLights = mNodes[ENodeType::Light]; diff --git a/src/Core/Scene/CScene.h b/src/Core/Scene/CScene.h index 597e90ae..5935b972 100644 --- a/src/Core/Scene/CScene.h +++ b/src/Core/Scene/CScene.h @@ -64,8 +64,8 @@ public: SRayIntersection SceneRayCast(const CRay& rkRay, const SViewInfo& rkViewInfo); CSceneNode* NodeByID(uint32 NodeID); CScriptNode* NodeForInstanceID(uint32 InstanceID); - CScriptNode* NodeForInstance(CScriptObject *pObj); - CLightNode* NodeForLight(CLight *pLight); + CScriptNode* NodeForInstance(const CScriptObject *pObj); + CLightNode* NodeForLight(const CLight *pLight); CModel* ActiveSkybox(); CGameArea* ActiveArea(); diff --git a/src/Editor/Undo/CDeleteSelectionCommand.cpp b/src/Editor/Undo/CDeleteSelectionCommand.cpp index f7c0fc3a..566c0220 100644 --- a/src/Editor/Undo/CDeleteSelectionCommand.cpp +++ b/src/Editor/Undo/CDeleteSelectionCommand.cpp @@ -76,7 +76,7 @@ CDeleteSelectionCommand::CDeleteSelectionCommand(CWorldEditor *pEditor, const QS // Remove selected objects from the linked instances list. LinkedInstances.removeAll(nullptr); - for (CScriptObject *pInst : LinkedInstances) + for (const CScriptObject* pInst : LinkedInstances) { if (mpEditor->Scene()->NodeForInstance(pInst)->IsSelected()) LinkedInstances.removeOne(pInst); diff --git a/src/Editor/WorldEditor/CInstancesModel.cpp b/src/Editor/WorldEditor/CInstancesModel.cpp index 294de1a8..26358ed5 100644 --- a/src/Editor/WorldEditor/CInstancesModel.cpp +++ b/src/Editor/WorldEditor/CInstancesModel.cpp @@ -314,8 +314,8 @@ QVariant CInstancesModel::data(const QModelIndex& rkIndex, int Role) const // Show/Hide Instance else if (Type == EIndexType::Instance) { - CScriptObject *pObj = IndexObject(rkIndex); - const CScriptNode *pNode = mpScene->NodeForInstance(pObj); + const CScriptObject* pObj = IndexObject(rkIndex); + const CScriptNode* pNode = mpScene->NodeForInstance(pObj); if (pNode->MarkedVisible()) return Visible; return Invisible; diff --git a/src/Editor/WorldEditor/CPoiListDialog.h b/src/Editor/WorldEditor/CPoiListDialog.h index 64b69492..9b2ef4c0 100644 --- a/src/Editor/WorldEditor/CPoiListDialog.h +++ b/src/Editor/WorldEditor/CPoiListDialog.h @@ -30,7 +30,7 @@ public: : QAbstractListModel(pParent) , mpPoiTemplate(pPoiTemplate) { - for (auto* obj : mpPoiTemplate->ObjectList()) + for (const auto* obj : mpPoiTemplate->ObjectList()) { auto* pNode = pScene->NodeForInstance(obj); diff --git a/src/Editor/WorldEditor/CPoiMapModel.cpp b/src/Editor/WorldEditor/CPoiMapModel.cpp index d1217bc2..1dd1335c 100644 --- a/src/Editor/WorldEditor/CPoiMapModel.cpp +++ b/src/Editor/WorldEditor/CPoiMapModel.cpp @@ -30,8 +30,8 @@ QVariant CPoiMapModel::data(const QModelIndex& rkIndex, int Role) const { if (rkIndex.row() < rowCount(QModelIndex())) { - const CPoiToWorld::SPoiMap *pkMap = mpPoiToWorld->MapByIndex(static_cast(rkIndex.row())); - CScriptObject *pPOI = mpArea->InstanceByID(pkMap->PoiID); + const CPoiToWorld::SPoiMap* pkMap = mpPoiToWorld->MapByIndex(static_cast(rkIndex.row())); + const CScriptObject* pPOI = mpArea->InstanceByID(pkMap->PoiID); if (Role == Qt::DisplayRole) { @@ -48,9 +48,7 @@ QVariant CPoiMapModel::data(const QModelIndex& rkIndex, int Role) const if (const CScriptNode* pNode = mpEditor->Scene()->NodeForInstance(pPOI)) { // Get scan - const CScan *pScan = static_cast(pNode->Extra())->GetScan(); - - if (pScan) + if (const CScan* pScan = static_cast(pNode->Extra())->GetScan()) IsImportant = pScan->IsCriticalPropertyRef(); } diff --git a/src/Editor/WorldEditor/CWorldEditor.cpp b/src/Editor/WorldEditor/CWorldEditor.cpp index 49a78ae6..bfc69141 100644 --- a/src/Editor/WorldEditor/CWorldEditor.cpp +++ b/src/Editor/WorldEditor/CWorldEditor.cpp @@ -252,7 +252,8 @@ bool CWorldEditor::CloseWorld() emit MapChanged(mpWorld, mpArea); return true; } - else return false; + + return false; } bool CWorldEditor::SetArea(CWorld *pWorld, int AreaIndex) @@ -414,8 +415,9 @@ void CWorldEditor::Paste() CVector3f PastePoint; if (ui->MainViewport->underMouse() && !ui->MainViewport->IsMouseInputActive()) + { PastePoint = ui->MainViewport->HoverPoint(); - + } else { CRay Ray = ui->MainViewport->Camera().CastRay(CVector2f(0.f, 0.f)); @@ -560,7 +562,7 @@ void CWorldEditor::OnActiveProjectChanged(CGameProject *pProj) void CWorldEditor::OnLinksModified(const QList& rkInstances) { - for (CScriptObject *pInstance : rkInstances) + for (const CScriptObject* pInstance : rkInstances) { CScriptNode *pNode = mScene.NodeForInstance(pInstance); pNode->LinksModified(); @@ -610,7 +612,9 @@ void CWorldEditor::OnPropertyModified(IProperty *pProp) ShouldUpdateSelection = true; } else if (pProp->Type() == EPropertyType::AnimationSet) + { ShouldUpdateSelection = true; + } } if (ShouldUpdateSelection) @@ -758,9 +762,10 @@ void CWorldEditor::UpdateOpenRecentActions() pAction->setText(ActionText); pAction->setVisible(true); } - else + { pAction->setVisible(false); + } } } @@ -840,10 +845,14 @@ void CWorldEditor::UpdateGizmoUI() SpinBoxValue = mpSelection->Front()->AbsoluteScale(); break; - default: break; + default: + break; } } - else if (!mpSelection->IsEmpty()) SpinBoxValue = mpSelection->Front()->AbsolutePosition(); + else if (!mpSelection->IsEmpty()) + { + SpinBoxValue = mpSelection->Front()->AbsolutePosition(); + } ui->TransformSpinBox->blockSignals(true); ui->TransformSpinBox->SetValue(SpinBoxValue); @@ -907,9 +916,7 @@ void CWorldEditor::UpdateNewLinkLine() ui->MainViewport->SetLinkLineEnabled(true); ui->MainViewport->SetLinkLine(Start, End); } - - // Otherwise check whether there's just a sender or just a receiver - else + else // Otherwise check whether there's just a sender or just a receiver { CScriptObject *pSender = nullptr; CScriptObject *pReceiver = nullptr; @@ -922,21 +929,25 @@ void CWorldEditor::UpdateNewLinkLine() pReceiver = mpLinkDialog->Receiver(); } else if (mIsMakingLink && mpNewLinkSender) + { pSender = mpNewLinkSender; + } else if (mpScriptSidebar->ModifyTab()->IsPicking() && mpScriptSidebar->ModifyTab()->EditNode()->NodeType() == ENodeType::Script) + { pSender = static_cast(mpScriptSidebar->ModifyTab()->EditNode())->Instance(); + } // No sender and no receiver = no line if (!pSender && !pReceiver) + { ui->MainViewport->SetLinkLineEnabled(false); - + } // Yes sender and yes receiver = yes line else if (pSender && pReceiver) { ui->MainViewport->SetLinkLineEnabled(true); ui->MainViewport->SetLinkLine( mScene.NodeForInstance(pSender)->CenterPoint(), mScene.NodeForInstance(pReceiver)->CenterPoint() ); } - // Compensate for missing sender or missing receiver else { @@ -944,17 +955,18 @@ void CWorldEditor::UpdateNewLinkLine() if (ui->MainViewport->underMouse() && !ui->MainViewport->IsMouseInputActive() && IsPicking) { - CSceneNode *pHoverNode = ui->MainViewport->HoverNode(); - CScriptObject *pInst = (pSender ? pSender : pReceiver); + CSceneNode* pHoverNode = ui->MainViewport->HoverNode(); + const CScriptObject* pInst = (pSender ? pSender : pReceiver); CVector3f Start = mScene.NodeForInstance(pInst)->CenterPoint(); CVector3f End = (pHoverNode && pHoverNode->NodeType() == ENodeType::Script ? pHoverNode->CenterPoint() : ui->MainViewport->HoverPoint()); ui->MainViewport->SetLinkLineEnabled(true); ui->MainViewport->SetLinkLine(Start, End); } - else + { ui->MainViewport->SetLinkLineEnabled(false); + } } } } @@ -1062,7 +1074,6 @@ void CWorldEditor::OnLinkButtonToggled(bool Enabled) mpNewLinkSender = nullptr; mpNewLinkReceiver = nullptr; } - else { if (mIsMakingLink) @@ -1076,7 +1087,6 @@ void CWorldEditor::OnLinkClick(const SRayIntersection& rkIntersect) { mpNewLinkSender = static_cast(rkIntersect.pNode)->Instance(); } - else { mpNewLinkReceiver = static_cast(rkIntersect.pNode)->Instance(); @@ -1186,28 +1196,30 @@ void CWorldEditor::OnTransformSpinBoxModified(const CVector3f& Value) switch (mGizmo.Mode()) { - // Use absolute position/rotation, but relative scale. (This way spinbox doesn't show preview multiplier) - case CGizmo::EGizmoMode::Translate: - { - CVector3f Delta = Value - mpSelection->Front()->AbsolutePosition(); - UndoStack().push(new CTranslateNodeCommand(this, mpSelection->SelectedNodeList(), Delta, mTranslateSpace)); - break; - } + // Use absolute position/rotation, but relative scale. (This way spinbox doesn't show preview multiplier) + case CGizmo::EGizmoMode::Translate: + { + CVector3f Delta = Value - mpSelection->Front()->AbsolutePosition(); + UndoStack().push(new CTranslateNodeCommand(this, mpSelection->SelectedNodeList(), Delta, mTranslateSpace)); + break; + } - case CGizmo::EGizmoMode::Rotate: - { - CQuaternion Delta = CQuaternion::FromEuler(Value) * mpSelection->Front()->AbsoluteRotation().Inverse(); - UndoStack().push(new CRotateNodeCommand(this, mpSelection->SelectedNodeList(), true, mGizmo.Position(), mGizmo.Rotation(), Delta, mRotateSpace)); - break; - } + case CGizmo::EGizmoMode::Rotate: + { + CQuaternion Delta = CQuaternion::FromEuler(Value) * mpSelection->Front()->AbsoluteRotation().Inverse(); + UndoStack().push(new CRotateNodeCommand(this, mpSelection->SelectedNodeList(), true, mGizmo.Position(), mGizmo.Rotation(), Delta, mRotateSpace)); + break; + } - case CGizmo::EGizmoMode::Scale: - { - CVector3f Delta = Value / mpSelection->Front()->AbsoluteScale(); - UndoStack().push(new CScaleNodeCommand(this, mpSelection->SelectedNodeList(), true, mGizmo.Position(), Delta)); - break; - } - default: break; + case CGizmo::EGizmoMode::Scale: + { + CVector3f Delta = Value / mpSelection->Front()->AbsoluteScale(); + UndoStack().push(new CScaleNodeCommand(this, mpSelection->SelectedNodeList(), true, mGizmo.Position(), Delta)); + break; + } + + default: + break; } UpdateGizmoUI(); diff --git a/src/Editor/WorldEditor/WInstancesTab.cpp b/src/Editor/WorldEditor/WInstancesTab.cpp index b2559aab..02927446 100644 --- a/src/Editor/WorldEditor/WInstancesTab.cpp +++ b/src/Editor/WorldEditor/WInstancesTab.cpp @@ -92,13 +92,9 @@ void WInstancesTab::OnTreeClick(QModelIndex Index) // Show/Hide Instance if (mpTypesModel->IndexType(SourceIndex) == CInstancesModel::EIndexType::Instance) { - CScriptObject *pObj = mpTypesModel->IndexObject(SourceIndex); - - if (pObj) + if (const CScriptObject* pObj = mpTypesModel->IndexObject(SourceIndex)) { - CScriptNode *pNode = mpScene->NodeForInstance(pObj); - - if (pNode) + if (CScriptNode* pNode = mpScene->NodeForInstance(pObj)) pNode->SetVisible(!pNode->IsVisible()); } @@ -151,7 +147,7 @@ void WInstancesTab::OnTreeContextMenu(QPoint Pos) // Determine type mMenuIndexType = (IsLayers ? mpLayersModel->IndexType(mMenuIndex) : mpTypesModel->IndexType(mMenuIndex)); - CScriptObject *pObject = nullptr; + const CScriptObject *pObject = nullptr; mpMenuObject = nullptr; mpMenuLayer = nullptr; mpMenuTemplate = nullptr;