Переглянути джерело

feat: remove ifdefed logic releated to CEntityObject (#17911)

* feat: remove ifdefed logic releated to CEntityObject
* feat: fix compiling issues

Signed-off-by: Michael Pollind <[email protected]>
Michael Pollind 1 рік тому
батько
коміт
d9a21eb12b

+ 16 - 74
Gems/LyShine/Code/Editor/Animation/UiAnimViewNodes.cpp

@@ -251,7 +251,6 @@ CUiAnimViewNodesCtrl::CUiAnimViewNodesCtrl(QWidget* hParentWnd, CUiAnimViewDialo
     connect(ui->treeWidget, &QTreeWidget::itemExpanded, this, &CUiAnimViewNodesCtrl::OnItemExpanded);
     connect(ui->treeWidget, &QTreeWidget::itemCollapsed, this, &CUiAnimViewNodesCtrl::OnItemExpanded);
     connect(ui->treeWidget, &QTreeWidget::itemSelectionChanged, this, &CUiAnimViewNodesCtrl::OnSelectionChanged);
-    connect(ui->treeWidget, &QTreeWidget::itemDoubleClicked, this, &CUiAnimViewNodesCtrl::OnItemDblClick);
 
     connect(ui->searchField, &QLineEdit::textChanged, this, &CUiAnimViewNodesCtrl::OnFilterChange);
 
@@ -892,11 +891,6 @@ void CUiAnimViewNodesCtrl::OnNMRclick(QPoint point)
             EndUndoTransaction();
         }
     }
-    else if (cmd == eMI_SelectInViewport)
-    {
-        UiAnimUndo undo("Select Animation Nodes in Viewport");
-        pSequence->SelectSelectedNodesInViewport();
-    }
     else if (cmd >= eMI_SelectSubmaterialBase && cmd < eMI_SelectSubmaterialBase + 100)
     {
         if (pAnimNode)
@@ -951,31 +945,6 @@ void CUiAnimViewNodesCtrl::OnNMRclick(QPoint point)
     }
 }
 
-//////////////////////////////////////////////////////////////////////////
-void CUiAnimViewNodesCtrl::OnItemDblClick(QTreeWidgetItem* item, int)
-{
-    CRecord* pRecord = (CRecord*)item;
-    if (pRecord && pRecord->GetNode())
-    {
-        CUiAnimViewNode* pNode = pRecord->GetNode();
-
-        if (pNode->GetNodeType() == eUiAVNT_AnimNode)
-        {
-#if UI_ANIMATION_REMOVED // uses Cry Entity
-            CUiAnimViewAnimNode* pAnimNode = static_cast<CUiAnimViewAnimNode*>(pNode);
-            CEntityObject* pEntity = pAnimNode->GetNodeEntity();
-
-            if (pEntity)
-            {
-                UiAnimUndo undo("Select Object");
-                GetIEditor()->ClearSelection();
-                GetIEditor()->SelectObject(pEntity);
-            }
-#endif
-        }
-    }
-}
-
 //////////////////////////////////////////////////////////////////////////
 void CUiAnimViewNodesCtrl::EditEvents()
 {
@@ -1010,13 +979,6 @@ void CUiAnimViewNodesCtrl::AddGroupNodeAddItems(UiAnimContextMenu& contextMenu,
         contextMenu.main.addAction("Add Selected UI Element(s)")->setData(eMI_AddSelectedUiElements);
         contextMenu.main.addAction("Add Event Node")->setData(eMI_AddEvent);
     }
-
-#if UI_ANIMATION_REMOVED
-    contextMenu.main.addAction("Add Comment Node")->setData(eMI_AddCommentNode);
-    contextMenu.main.addAction("Add Console Variable")->setData(eMI_AddConsoleVariable);
-    contextMenu.main.addAction("Add Script Variable")->setData(eMI_AddScriptVariable);
-    contextMenu.main.addAction("Add Material")->setData(eMI_AddMaterial);
-#endif
 }
 
 //////////////////////////////////////////////////////////////////////////
@@ -1054,30 +1016,11 @@ int CUiAnimViewNodesCtrl::ShowPopupMenuSingleSelection(UiAnimContextMenu& contex
         pAnimNode = pTrack->GetAnimNode();
     }
 
-#if UI_ANIMATION_REMOVED
-    // Entity
-    if (bOnNode && pAnimNode->GetEntity() != nullptr && !bIsLightAnimationSet)
+    if (bOnNode || bOnSequence || bOnTrackNotSub)
     {
-        AddMenuSeperatorConditional(contextMenu.main, bAppended);
-
-        contextMenu.main.addAction("Select In Viewport")->setData(eMI_SelectInViewport);
-
-        if (pAnimNode->GetType() == eUiAnimNodeType_Camera)
-        {
-            contextMenu.main.addAction("Set As View Camera")->setData(eMI_SetAsViewCamera);
-        }
-
+        contextMenu.main.addAction("Delete")->setData(bOnTrackNotSub ? eMI_RemoveTrack : eMI_RemoveSelected);
         bAppended = true;
     }
-#endif
-
-    {
-        if (bOnNode || bOnSequence || bOnTrackNotSub)
-        {
-            contextMenu.main.addAction("Delete")->setData(bOnTrackNotSub ? eMI_RemoveTrack : eMI_RemoveSelected);
-            bAppended = true;
-        }
-    }
 
     if (bOnTrack)
     {
@@ -1124,21 +1067,20 @@ int CUiAnimViewNodesCtrl::ShowPopupMenuSingleSelection(UiAnimContextMenu& contex
         bAppended = true;
     }
 
-#if UI_ANIMATION_REMOVED
-    // We have removed support for saving out the custom colors per track
-    // it may be added back at some point
-    // Track color
-    if (bOnTrack)
-    {
-        AddMenuSeperatorConditional(contextMenu.main, bAppended);
-        contextMenu.main.addAction("Customize Track Color...")->setData(eMI_CustomizeTrackColor);
-        if (pTrack->HasCustomColor())
-        {
-            contextMenu.main.addAction("Clear Custom Track Color")->setData(eMI_ClearCustomTrackColor);
-        }
-        bAppended = true;
-    }
-#endif
+   // TODO: look into support track colors
+   // We have removed support for saving out the custom colors per track
+   // it may be added back at some point
+   // Track color
+   // if (bOnTrack)
+   // {
+   //     AddMenuSeperatorConditional(contextMenu.main, bAppended);
+   //     contextMenu.main.addAction("Customize Track Color...")->setData(eMI_CustomizeTrackColor);
+   //     if (pTrack->HasCustomColor())
+   //     {
+   //         contextMenu.main.addAction("Clear Custom Track Color")->setData(eMI_ClearCustomTrackColor);
+   //     }
+   //     bAppended = true;
+   // }
 
     // Track hide/unhide flags
     if (bOnNode && !pNode->IsGroupNode())

+ 0 - 1
Gems/LyShine/Code/Editor/Animation/UiAnimViewNodes.h

@@ -114,7 +114,6 @@ private slots:
     void OnNMRclick(QPoint pos);
     void OnItemExpanded(QTreeWidgetItem*);
     void OnSelectionChanged();
-    void OnItemDblClick(QTreeWidgetItem* item, int);
     void OnFilterChange(const QString& text);
 
 private:

+ 2 - 159
Gems/LyShine/Code/Editor/Animation/UiAnimViewSequence.cpp

@@ -275,44 +275,6 @@ void CUiAnimViewSequence::OnKeysChanged()
 //////////////////////////////////////////////////////////////////////////
 void CUiAnimViewSequence::OnNodeChanged(CUiAnimViewNode* pNode, IUiAnimViewSequenceListener::ENodeChangeType type)
 {
-#if UI_ANIMATION_REMOVED    // UI_ANIMATION_REVISIT do we need any of this?
-    if (pNode && pNode->GetNodeType() == eUiAVNT_AnimNode)
-    {
-        CUiAnimViewAnimNode* pAnimNode = static_cast<CUiAnimViewAnimNode*>(pNode);
-        CEntityObject* pNodeEntity = pAnimNode->GetNodeEntity();
-
-        if (pAnimNode->IsActive() && pNodeEntity)
-        {
-            switch (type)
-            {
-            case IUiAnimViewSequenceListener::eNodeChangeType_Added:
-                pNodeEntity->SetTransformDelegate(pAnimNode);
-                pNodeEntity->RegisterListener(pAnimNode);
-                ForceAnimation();
-                break;
-            case IUiAnimViewSequenceListener::eNodeChangeType_Removed:
-                pNodeEntity->SetTransformDelegate(nullptr);
-                pNodeEntity->UnregisterListener(pAnimNode);
-                ForceAnimation();
-                break;
-            }
-        }
-
-        switch (type)
-        {
-        case IUiAnimViewSequenceListener::eNodeChangeType_Enabled:
-        // Fall through
-        case IUiAnimViewSequenceListener::eNodeChangeType_Hidden:
-        // Fall through
-        case IUiAnimViewSequenceListener::eNodeChangeType_SetAsActiveDirector:
-        // Fall through
-        case IUiAnimViewSequenceListener::eNodeChangeType_NodeOwnerChanged:
-            ForceAnimation();
-            break;
-        }
-    }
-#endif
-
     if (m_bNoNotifications)
     {
         return;
@@ -328,12 +290,6 @@ void CUiAnimViewSequence::OnNodeChanged(CUiAnimViewNode* pNode, IUiAnimViewSeque
 //////////////////////////////////////////////////////////////////////////
 void CUiAnimViewSequence::OnNodeRenamed(CUiAnimViewNode* pNode, const char* pOldName)
 {
-    bool bLightAnimationSetActive = GetFlags() & IUiAnimSequence::eSeqFlags_LightAnimationSet;
-    if (bLightAnimationSetActive)
-    {
-        UpdateLightAnimationRefs(pOldName, pNode->GetName().c_str());
-    }
-
     if (m_bNoNotifications)
     {
         return;
@@ -422,45 +378,9 @@ void CUiAnimViewSequence::DeleteSelectedNodes()
     }
 
     CUiAnimViewAnimNodeBundle selectedNodes = GetSelectedAnimNodes();
-    const unsigned int numSelectedNodes = selectedNodes.GetCount();
-
-#if UI_ANIMATION_REMOVED    // lights
-    // Check if any reference to the light animation to be deleted exists, and abort the removal, if any.
-    const bool bLightAnimationSetActive = GetFlags() & IUiAnimSequence::eSeqFlags_LightAnimationSet;
-    if (bLightAnimationSetActive)
-    {
-        QStringList lightNodes;
-
-        // Construct set of selected light nodes
-        for (unsigned int i = 0; i < numSelectedNodes; ++i)
-        {
-            CUiAnimViewAnimNode* pCurrentNode = selectedNodes.GetNode(i);
-            if (pCurrentNode->GetType() == eUiAnimNodeType_Light)
-            {
-                stl::push_back_unique(lightNodes, pCurrentNode->GetName());
-            }
-        }
-
-        // Check all entities if any is referencing any selected light node
-        std::vector<CBaseObject*> entityObjects;
-        GetIEditor()->GetObjectManager()->FindObjectsOfType(&CEntityObject::staticMetaObject, entityObjects);
-
-        for (size_t i = 0; i < entityObjects.size(); ++i)
-        {
-            QString lightAnimationName = static_cast<CEntityObject*>(entityObjects[i])->GetLightAnimation();
-            if (stl::find(lightNodes, lightAnimationName))
-            {
-                QMessageBox::critical(QApplication::activeWindow(), QString(), QObject::tr("The node '%1' cannot be removed since there is a light entity still using it.").arg(lightAnimationName));
-                return;
-            }
-        }
-    }
-#endif
-
     CUiAnimViewTrackBundle selectedTracks = GetSelectedTracks();
-    const unsigned int numSelectedTracks = selectedTracks.GetCount();
 
-    for (unsigned int i = 0; i < numSelectedTracks; ++i)
+    for (unsigned int i = 0; i < selectedTracks.GetCount(); ++i)
     {
         CUiAnimViewTrack* pTrack = selectedTracks.GetTrack(i);
 
@@ -471,7 +391,7 @@ void CUiAnimViewSequence::DeleteSelectedNodes()
         }
     }
 
-    for (unsigned int i = 0; i < numSelectedNodes; ++i)
+    for (unsigned int i = 0; i < selectedNodes.GetCount(); ++i)
     {
         CUiAnimViewAnimNode* pNode = selectedNodes.GetNode(i);
         CUiAnimViewAnimNode* pParentNode = static_cast<CUiAnimViewAnimNode*>(pNode->GetParentNode());
@@ -479,83 +399,6 @@ void CUiAnimViewSequence::DeleteSelectedNodes()
     }
 }
 
-//////////////////////////////////////////////////////////////////////////
-void CUiAnimViewSequence::SelectSelectedNodesInViewport()
-{
-    assert(UiAnimUndo::IsRecording());
-
-    CUiAnimViewAnimNodeBundle selectedNodes = GetSelectedAnimNodes();
-
-#if UI_ANIMATION_REMOVED // lights
-    const unsigned int numSelectedNodes = selectedNodes.GetCount();
-
-    // Also select objects that refer to light animation
-    const bool bLightAnimationSetActive = GetFlags() & IUiAnimSequence::eSeqFlags_LightAnimationSet;
-    if (bLightAnimationSetActive)
-    {
-        QStringList lightNodes;
-
-        // Construct set of selected light nodes
-        for (unsigned int i = 0; i < numSelectedNodes; ++i)
-        {
-            CUiAnimViewAnimNode* pCurrentNode = selectedNodes.GetNode(i);
-            if (pCurrentNode->GetType() == eUiAnimNodeType_Light)
-            {
-                stl::push_back_unique(lightNodes, pCurrentNode->GetName());
-            }
-        }
-
-        // Check all entities if any is referencing any selected light node
-        std::vector<CBaseObject*> entityObjects;
-        GetIEditor()->GetObjectManager()->FindObjectsOfType(&CEntityObject::staticMetaObject, entityObjects);
-
-        for (size_t i = 0; i < entityObjects.size(); ++i)
-        {
-            QString lightAnimationName = static_cast<CEntityObject*>(entityObjects[i])->GetLightAnimation();
-            if (stl::find(lightNodes, lightAnimationName))
-            {
-                stl::push_back_unique(entitiesToBeSelected, entityObjects[i]);
-            }
-        }
-    }
-    else
-    {
-        for (unsigned int i = 0; i < numSelectedNodes; ++i)
-        {
-            CUiAnimViewAnimNode* pNode = selectedNodes.GetNode(i);
-            CEntityObject* pEntity = pNode->GetNodeEntity();
-            if (pEntity)
-            {
-                stl::push_back_unique(entitiesToBeSelected, pEntity);
-            }
-        }
-    }
-#endif
-}
-
-//////////////////////////////////////////////////////////////////////////
-void CUiAnimViewSequence::UpdateLightAnimationRefs([[maybe_unused]] const char* pOldName, [[maybe_unused]] const char* pNewName)
-{
-#if UI_ANIMATION_REMOVED    // lights
-    std::vector<CBaseObject*> entityObjects;
-    GetIEditor()->GetObjectManager()->FindObjectsOfType(&CEntityObject::staticMetaObject, entityObjects);
-    std::for_each(std::begin(entityObjects), std::end(entityObjects),
-        [&pOldName, &pNewName](CBaseObject* pBaseObject)
-        {
-            CEntityObject* pEntityObject = static_cast<CEntityObject*>(pBaseObject);
-            bool bLight = pEntityObject && pEntityObject->GetEntityClass().Compare("Light") == 0;
-            if (bLight)
-            {
-                string lightAnimation = pEntityObject->GetEntityPropertyString("lightanimation_LightAnimation");
-                if (lightAnimation == pOldName)
-                {
-                    pEntityObject->SetEntityPropertyString("lightanimation_LightAnimation", pNewName);
-                }
-            }
-        });
-#endif
-}
-
 //////////////////////////////////////////////////////////////////////////
 bool CUiAnimViewSequence::SetName(const char* pName)
 {

+ 0 - 5
Gems/LyShine/Code/Editor/Animation/UiAnimViewSequence.h

@@ -155,9 +155,6 @@ public:
     // Deletes all selected nodes (re-parents childs if group node gets deleted)
     void DeleteSelectedNodes();
 
-    // Select selected nodes in viewport
-    void SelectSelectedNodesInViewport();
-
     // Deletes all selected keys
     void DeleteSelectedKeys();
 
@@ -233,8 +230,6 @@ private:
 
     void CopyKeysToClipboard(XmlNodeRef& xmlNode, const bool bOnlySelectedKeys, const bool bOnlyFromSelectedTracks) override;
 
-    void UpdateLightAnimationRefs(const char* pOldName, const char* pNewName);
-
     std::deque<CUiAnimViewTrack*> GetMatchingTracks(CUiAnimViewAnimNode* pAnimNode, XmlNodeRef trackNode);
     void GetMatchedPasteLocationsRec(std::vector<TMatchedTrackLocation>& locations, CUiAnimViewNode* pCurrentNode, XmlNodeRef clipboardNode);