Pārlūkot izejas kodu

Merge branch 'development' into cmake/SPEC-7484

Signed-off-by: Esteban Papp <[email protected]>

# Conflicts:
#	Code/Editor/Animation/SkeletonHierarchy.cpp
#	Code/Editor/Animation/SkeletonMapper.cpp
#	Code/Editor/Animation/SkeletonMapperOperator.cpp
#	Code/Editor/LogFile.cpp
#	Code/Editor/ResourceSelectorHost.cpp
#	Code/Editor/SettingsManager.cpp
#	Code/Editor/Util/EditorUtils.cpp
#	Code/Editor/Util/FileUtil.cpp
#	Code/Editor/Util/IXmlHistoryManager.h
#	Code/Editor/Util/ImageTIF.cpp
#	Code/Editor/Util/StringHelpers.cpp
#	Code/Editor/Util/XmlHistoryManager.cpp
#	Code/Editor/Util/XmlHistoryManager.h
Esteban Papp 4 gadi atpakaļ
vecāks
revīzija
6db7488939
100 mainītis faili ar 487 papildinājumiem un 566 dzēšanām
  1. 0 11
      Code/Editor/AnimationContext.cpp.rej
  2. 5 9
      Code/Editor/AzAssetBrowser/AzAssetBrowserRequestHandler.cpp
  3. 1 1
      Code/Editor/AzAssetBrowser/AzAssetBrowserWindow.cpp
  4. 3 3
      Code/Editor/Commands/CommandManager.cpp
  5. 1 1
      Code/Editor/Commands/CommandManager.h
  6. 1 1
      Code/Editor/Controls/BitmapToolTip.h
  7. 3 3
      Code/Editor/Controls/ColorGradientCtrl.cpp
  8. 1 1
      Code/Editor/Controls/ColorGradientCtrl.h
  9. 3 3
      Code/Editor/Controls/ConsoleSCB.cpp
  10. 4 4
      Code/Editor/Controls/HotTrackingTreeCtrl.cpp
  11. 1 1
      Code/Editor/Controls/ReflectedPropertyControl/ReflectedPropertiesPanel.cpp
  12. 7 7
      Code/Editor/Controls/ReflectedPropertyControl/ReflectedPropertyCtrl.cpp
  13. 4 4
      Code/Editor/Controls/ReflectedPropertyControl/ReflectedPropertyItem.cpp
  14. 1 1
      Code/Editor/Controls/ReflectedPropertyControl/ReflectedVarWrapper.cpp
  15. 5 5
      Code/Editor/Controls/SplineCtrl.cpp
  16. 1 1
      Code/Editor/Controls/SplineCtrl.h
  17. 38 38
      Code/Editor/Controls/SplineCtrlEx.cpp
  18. 1 1
      Code/Editor/Controls/TimelineCtrl.cpp
  19. 2 2
      Code/Editor/Core/LevelEditorMenuHandler.cpp
  20. 1 1
      Code/Editor/Core/QtEditorApplication.cpp
  21. 1 1
      Code/Editor/Core/Tests/test_Main.cpp
  22. 1 1
      Code/Editor/Dialogs/ErrorsDlg.cpp
  23. 1 1
      Code/Editor/Dialogs/PythonScriptsDialog.cpp
  24. 11 11
      Code/Editor/Export/ExportManager.cpp
  25. 1 1
      Code/Editor/Export/OBJExporter.cpp
  26. 11 11
      Code/Editor/Geometry/TriMesh.cpp
  27. 3 3
      Code/Editor/Include/IAssetItem.h
  28. 9 2
      Code/Editor/Include/IFileUtil.h
  29. 1 1
      Code/Editor/LayoutWnd.h
  30. 1 1
      Code/Editor/LevelInfo.cpp
  31. 1 1
      Code/Editor/LogFile.cpp
  32. 19 19
      Code/Editor/MainWindow.cpp
  33. 4 4
      Code/Editor/NewLevelDialog.cpp
  34. 1 1
      Code/Editor/NewTerrainDialog.cpp
  35. 2 2
      Code/Editor/Plugin.cpp
  36. 9 9
      Code/Editor/PluginManager.cpp
  37. 1 1
      Code/Editor/PythonEditorFuncs.cpp
  38. 1 1
      Code/Editor/QtUI/QCollapsibleGroupBox.cpp
  39. 1 1
      Code/Editor/RenderHelpers/AxisHelper.h
  40. 1 1
      Code/Editor/ResizeResolutionDialog.cpp
  41. 1 1
      Code/Editor/ResourceSelectorHost.cpp
  42. 1 1
      Code/Editor/SelectEAXPresetDlg.cpp
  43. 4 4
      Code/Editor/Settings.cpp
  44. 36 36
      Code/Editor/SettingsManager.cpp
  45. 1 1
      Code/Editor/SettingsManagerDialog.cpp
  46. 4 4
      Code/Editor/StartupLogoDialog.cpp
  47. 1 1
      Code/Editor/StringDlg.h
  48. 7 7
      Code/Editor/ToolBox.cpp
  49. 1 1
      Code/Editor/ToolBox.h
  50. 3 3
      Code/Editor/ToolsConfigPage.cpp
  51. 5 5
      Code/Editor/TrackView/2DBezierKeyUIControls.cpp
  52. 5 5
      Code/Editor/TrackView/AssetBlendKeyUIControls.cpp
  53. 5 5
      Code/Editor/TrackView/CaptureKeyUIControls.cpp
  54. 5 5
      Code/Editor/TrackView/CharacterKeyUIControls.cpp
  55. 7 7
      Code/Editor/TrackView/CommentKeyUIControls.cpp
  56. 1 1
      Code/Editor/TrackView/CommentNodeAnimator.cpp
  57. 5 5
      Code/Editor/TrackView/ConsoleKeyUIControls.cpp
  58. 7 7
      Code/Editor/TrackView/EventKeyUIControls.cpp
  59. 5 5
      Code/Editor/TrackView/GotoKeyUIControls.cpp
  60. 7 7
      Code/Editor/TrackView/ScreenFaderKeyUIControls.cpp
  61. 9 9
      Code/Editor/TrackView/SelectKeyUIControls.cpp
  62. 7 8
      Code/Editor/TrackView/SequenceBatchRenderDialog.cpp
  63. 3 3
      Code/Editor/TrackView/SequenceBatchRenderDialog.h
  64. 7 7
      Code/Editor/TrackView/SequenceKeyUIControls.cpp
  65. 5 5
      Code/Editor/TrackView/SoundKeyUIControls.cpp
  66. 1 1
      Code/Editor/TrackView/TVCustomizeTrackColorsDlg.cpp
  67. 1 1
      Code/Editor/TrackView/TVEventsDialog.cpp
  68. 3 3
      Code/Editor/TrackView/TVSequenceProps.cpp
  69. 2 2
      Code/Editor/TrackView/TVSequenceProps.h
  70. 5 5
      Code/Editor/TrackView/TimeRangeKeyUIControls.cpp
  71. 6 6
      Code/Editor/TrackView/TrackEventKeyUIControls.cpp
  72. 2 2
      Code/Editor/TrackView/TrackViewAnimNode.cpp
  73. 9 9
      Code/Editor/TrackView/TrackViewDialog.cpp
  74. 2 2
      Code/Editor/TrackView/TrackViewDialog.h
  75. 12 12
      Code/Editor/TrackView/TrackViewDopeSheetBase.cpp
  76. 2 2
      Code/Editor/TrackView/TrackViewFindDlg.cpp
  77. 1 1
      Code/Editor/TrackView/TrackViewFindDlg.h
  78. 2 2
      Code/Editor/TrackView/TrackViewKeyPropertiesDlg.cpp
  79. 1 1
      Code/Editor/TrackView/TrackViewKeyPropertiesDlg.h
  80. 8 8
      Code/Editor/TrackView/TrackViewNodes.cpp
  81. 11 11
      Code/Editor/TrackView/TrackViewSplineCtrl.cpp
  82. 2 2
      Code/Editor/UIEnumsDatabase.cpp
  83. 12 12
      Code/Editor/Undo/Undo.cpp
  84. 2 2
      Code/Editor/Undo/Undo.h
  85. 2 2
      Code/Editor/UndoDropDown.cpp
  86. 5 5
      Code/Editor/Util/3DConnexionDriver.cpp
  87. 1 1
      Code/Editor/Util/DynamicArray2D.cpp
  88. 1 1
      Code/Editor/Util/EditorUtils.cpp
  89. 6 6
      Code/Editor/Util/EditorUtils.h
  90. 3 3
      Code/Editor/Util/FileChangeMonitor.cpp
  91. 1 1
      Code/Editor/Util/FileChangeMonitor.h
  92. 5 5
      Code/Editor/Util/FileEnum.cpp
  93. 28 87
      Code/Editor/Util/FileUtil.cpp
  94. 3 14
      Code/Editor/Util/FileUtil.h
  95. 2 2
      Code/Editor/Util/FileUtil_impl.h
  96. 1 1
      Code/Editor/Util/GdiUtil.h
  97. 14 14
      Code/Editor/Util/ImageASC.cpp
  98. 1 1
      Code/Editor/Util/ImageGif.cpp
  99. 6 6
      Code/Editor/Util/ImageTIF.cpp
  100. 19 19
      Code/Editor/Util/ImageUtil.cpp

+ 0 - 11
Code/Editor/AnimationContext.cpp.rej

@@ -1,11 +0,0 @@
---- Editor/AnimationContext.cpp
-+++ Editor/AnimationContext.cpp
-@@ -612,7 +612,7 @@ void CAnimationContext::UpdateAnimatedLights()
- 		return;
- 
- 	std::vector<CBaseObject*> entityObjects;
--	GetIEditor()->GetObjectManager()->FindObjectsOfType<CEntityObject*>(entityObjects);
-+	GetIEditor()->GetObjectManager()->FindObjectsOfType(&CEntityObject::staticMetaObject, entityObjects);
- 	std::for_each(std::begin(entityObjects), std::end(entityObjects), 
- 		[this](CBaseObject *pBaseObject)
- 	{

+ 5 - 9
Code/Editor/AzAssetBrowser/AzAssetBrowserRequestHandler.cpp

@@ -260,9 +260,7 @@ void AzAssetBrowserRequestHandler::AddContextMenuActions(QWidget* caller, QMenu*
         return;
     }
 
-    AZStd::string fullFileDirectory;
     AZStd::string fullFilePath;
-    AZStd::string fileName;
     AZStd::string extension;
 
     switch (entry->GetEntryType())
@@ -281,8 +279,6 @@ void AzAssetBrowserRequestHandler::AddContextMenuActions(QWidget* caller, QMenu*
     {
         AZ::Uuid sourceID = azrtti_cast<SourceAssetBrowserEntry*>(entry)->GetSourceUuid();
         fullFilePath = entry->GetFullPath();
-        fullFileDirectory = fullFilePath.substr(0, fullFilePath.find_last_of(AZ_CORRECT_DATABASE_SEPARATOR));
-        fileName = entry->GetName();
         AzFramework::StringFunc::Path::GetExtension(fullFilePath.c_str(), extension);
 
         // Add the "Open" menu item.
@@ -369,19 +365,19 @@ void AzAssetBrowserRequestHandler::AddContextMenuActions(QWidget* caller, QMenu*
         {
             if (entry->GetEntryType() == AssetBrowserEntry::AssetEntryType::Source)
             {
-                CFileUtil::PopulateQMenu(caller, menu, fileName.c_str(), fullFileDirectory.c_str());
+                CFileUtil::PopulateQMenu(caller, menu, fullFilePath);
             }
             return;
         }
       
-        CFileUtil::PopulateQMenu(caller, menu, fileName.c_str(), fullFileDirectory.c_str());
+        CFileUtil::PopulateQMenu(caller, menu, fullFilePath);
     }
     break;
     case AssetBrowserEntry::AssetEntryType::Folder:
     {
-        fullFileDirectory = entry->GetFullPath();
-        // we are sending an empty filename to indicate that it is a folder and not a file
-        CFileUtil::PopulateQMenu(caller, menu, fileName.c_str(), fullFileDirectory.c_str());
+        fullFilePath = entry->GetFullPath();
+
+        CFileUtil::PopulateQMenu(caller, menu, fullFilePath);
     }
     break;
     default:

+ 1 - 1
Code/Editor/AzAssetBrowser/AzAssetBrowserWindow.cpp

@@ -42,7 +42,7 @@ public:
         AzToolsFramework::EditorEvents::Bus::Handler::BusConnect();
     }
 
-    ~ListenerForShowAssetEditorEvent()
+    ~ListenerForShowAssetEditorEvent() override
     {
         AzToolsFramework::EditorEvents::Bus::Handler::BusDisconnect();
     }

+ 3 - 3
Code/Editor/Commands/CommandManager.cpp

@@ -20,8 +20,8 @@
 // AzToolsFramework
 #include <AzToolsFramework/PythonTerminal/ScriptTermDialog.h>
 
-CAutoRegisterCommandHelper* CAutoRegisterCommandHelper::s_pFirst = 0;
-CAutoRegisterCommandHelper* CAutoRegisterCommandHelper::s_pLast = 0;
+CAutoRegisterCommandHelper* CAutoRegisterCommandHelper::s_pFirst = nullptr;
+CAutoRegisterCommandHelper* CAutoRegisterCommandHelper::s_pLast = nullptr;
 
 CAutoRegisterCommandHelper* CAutoRegisterCommandHelper::GetFirst()
 {
@@ -31,7 +31,7 @@ CAutoRegisterCommandHelper* CAutoRegisterCommandHelper::GetFirst()
 CAutoRegisterCommandHelper::CAutoRegisterCommandHelper(void(*registerFunc)(CEditorCommandManager &))
 {
     m_registerFunc = registerFunc;
-    m_pNext = 0;
+    m_pNext = nullptr;
 
     if (!s_pLast)
     {

+ 1 - 1
Code/Editor/Commands/CommandManager.h

@@ -38,7 +38,7 @@ public:
 
     void RegisterAutoCommands();
 
-    bool AddCommand(CCommand* pCommand, TPfnDeleter deleter = NULL);
+    bool AddCommand(CCommand* pCommand, TPfnDeleter deleter = nullptr);
     bool UnregisterCommand(const char* module, const char* name);
     bool RegisterUICommand(
         const char* module,

+ 1 - 1
Code/Editor/Controls/BitmapToolTip.h

@@ -42,7 +42,7 @@ public:
     CBitmapToolTip(QWidget* parent = nullptr);
     virtual ~CBitmapToolTip();
 
-    BOOL Create(const RECT& rect);
+    bool Create(const RECT& rect);
 
     // Attributes
 public:

+ 3 - 3
Code/Editor/Controls/ColorGradientCtrl.cpp

@@ -29,7 +29,7 @@ CColorGradientCtrl::CColorGradientCtrl(QWidget* parent)
     m_nHitKeyIndex = -1;
     m_nKeyDrawRadius = 3;
     m_bTracking = false;
-    m_pSpline = 0;
+    m_pSpline = nullptr;
     m_fMinTime = -1;
     m_fMaxTime = 1;
     m_fMinValue = -1;
@@ -474,7 +474,7 @@ void CColorGradientCtrl::SetActiveKey(int nIndex)
 }
 
 /////////////////////////////////////////////////////////////////////////////
-void CColorGradientCtrl::SetSpline(ISplineInterpolator* pSpline, BOOL bRedraw)
+void CColorGradientCtrl::SetSpline(ISplineInterpolator* pSpline, bool bRedraw)
 {
     if (pSpline != m_pSpline)
     {
@@ -501,7 +501,7 @@ ISplineInterpolator* CColorGradientCtrl::GetSpline()
 /////////////////////////////////////////////////////////////////////////////
 void CColorGradientCtrl::keyPressEvent(QKeyEvent* event)
 {
-    BOOL bProcessed = false;
+    bool bProcessed = false;
 
     if (m_nActiveKey != -1 && m_pSpline)
     {

+ 1 - 1
Code/Editor/Controls/ColorGradientCtrl.h

@@ -54,7 +54,7 @@ public:
     // Lock value of first and last key to be the same.
     void LockFirstAndLastKeys(bool bLock) { m_bLockFirstLastKey = bLock; }
 
-    void SetSpline(ISplineInterpolator* pSpline, BOOL bRedraw = FALSE);
+    void SetSpline(ISplineInterpolator* pSpline, bool bRedraw = false);
     ISplineInterpolator* GetSpline();
 
     void SetTimeMarker(float fTime);

+ 3 - 3
Code/Editor/Controls/ConsoleSCB.cpp

@@ -62,14 +62,14 @@ public:
     }
 
 protected:
-    void highlightBlock(const QString &text)
+    void highlightBlock(const QString &text) override
     {
         auto pos = -1;
         QTextCharFormat myClassFormat;
         myClassFormat.setFontWeight(QFont::Bold);
         myClassFormat.setBackground(Qt::yellow);
 
-        while (1)
+        while (true)
         {
             pos = text.indexOf(m_searchTerm, pos+1, Qt::CaseInsensitive);
 
@@ -571,7 +571,7 @@ static CVarBlock* VarBlockFromConsoleVars()
     size_t cmdCount = console->GetSortedVars(cmds);
 
     CVarBlock* vb = new CVarBlock;
-    IVariable* pVariable = 0;
+    IVariable* pVariable = nullptr;
     for (int i = 0; i < cmdCount; i++)
     {
         ICVar* pCVar = console->GetCVar(cmds[i].data());

+ 4 - 4
Code/Editor/Controls/HotTrackingTreeCtrl.cpp

@@ -19,22 +19,22 @@ CHotTrackingTreeCtrl::CHotTrackingTreeCtrl(QWidget* parent)
     : QTreeWidget(parent)
 {
     setMouseTracking(true);
-    m_hHoverItem = NULL;
+    m_hHoverItem = nullptr;
 }
 
 void CHotTrackingTreeCtrl::mouseMoveEvent(QMouseEvent* event)
 {
     QTreeWidgetItem* hItem = itemAt(event->pos());
 
-    if (m_hHoverItem != NULL)
+    if (m_hHoverItem != nullptr)
     {
         QFont font = m_hHoverItem->font(0);
         font.setBold(false);
         m_hHoverItem->setFont(0, font);
-        m_hHoverItem = NULL;
+        m_hHoverItem = nullptr;
     }
 
-    if (hItem != NULL)
+    if (hItem != nullptr)
     {
         QFont font = hItem->font(0);
         font.setBold(true);

+ 1 - 1
Code/Editor/Controls/ReflectedPropertyControl/ReflectedPropertiesPanel.cpp

@@ -27,7 +27,7 @@ void ReflectedPropertiesPanel::DeleteVars()
 {
     ClearVarBlock();
     m_updateCallbacks.clear();
-    m_varBlock = 0;
+    m_varBlock = nullptr;
 }
 
 //////////////////////////////////////////////////////////////////////////

+ 7 - 7
Code/Editor/Controls/ReflectedPropertyControl/ReflectedPropertyCtrl.cpp

@@ -198,7 +198,7 @@ void ReflectedPropertyControl::CreateItems(XmlNodeRef node)
 
 void ReflectedPropertyControl::CreateItems(XmlNodeRef node, CVarBlockPtr& outBlockPtr, IVariable::OnSetCallback* func, bool splitCamelCaseIntoWords)
 {
-    SelectItem(0);
+    SelectItem(nullptr);
 
     outBlockPtr = new CVarBlock;
     for (size_t i = 0, iGroupCount(node->getChildCount()); i < iGroupCount; ++i)
@@ -505,7 +505,7 @@ void ReflectedPropertyControl::RemoveAllItems()
 void ReflectedPropertyControl::ClearVarBlock()
 {
     RemoveAllItems();
-    m_pVarBlock = 0;
+    m_pVarBlock = nullptr;
 }
 
 void ReflectedPropertyControl::RecreateAllItems()
@@ -688,11 +688,11 @@ void ReflectedPropertyControl::OnItemChange(ReflectedPropertyItem *item, bool de
     // callback until after the current event queue is processed, so that we aren't changing other widgets
     // as a ton of them are still being created.
     Qt::ConnectionType connectionType = deferCallbacks ? Qt::QueuedConnection : Qt::DirectConnection;
-    if (m_updateVarFunc != 0 && m_bEnableCallback)
+    if (m_updateVarFunc && m_bEnableCallback)
     {
         QMetaObject::invokeMethod(this, "DoUpdateCallback", connectionType, Q_ARG(IVariable*, item->GetVariable()));
     }
-    if (m_updateObjectFunc != 0 && m_bEnableCallback)
+    if (m_updateObjectFunc && m_bEnableCallback)
     {
         // KDAB: This callback has same signature as DoUpdateCallback. I think the only reason there are 2 is because some
         // EntityObject registers callback and some derived objects want to register their own callback. the normal UpdateCallback
@@ -709,7 +709,7 @@ void ReflectedPropertyControl::DoUpdateCallback(IVariable *var)
     const bool variableStillExists = FindVariable(var);
     AZ_Assert(variableStillExists, "This variable and the item containing it were destroyed during a deferred callback. Change to non-deferred callback.");
 
-    if (m_updateVarFunc == 0 || !variableStillExists)
+    if (!m_updateVarFunc || !variableStillExists)
     {
         return;
     }
@@ -724,7 +724,7 @@ void ReflectedPropertyControl::DoUpdateObjectCallback(IVariable *var)
     const bool variableStillExists = FindVariable(var);
     AZ_Assert(variableStillExists, "This variable and the item containing it were destroyed during a deferred callback. Change to non-deferred callback.");
 
-    if (m_updateVarFunc == 0 || !variableStillExists)
+    if ( !m_updateVarFunc || !variableStillExists)
     {
         return;
     }
@@ -904,7 +904,7 @@ void ReflectedPropertyControl::SetUndoCallback(UndoCallback &callback)
 
 void ReflectedPropertyControl::ClearUndoCallback()
 {
-    m_undoFunc = 0;
+    m_undoFunc = nullptr;
 }
 
 bool ReflectedPropertyControl::FindVariable(IVariable *categoryItem) const

+ 4 - 4
Code/Editor/Controls/ReflectedPropertyControl/ReflectedPropertyItem.cpp

@@ -82,7 +82,7 @@ public:
     }
 
     //helps implement ReflectedPropertyControl::ReplaceVarBlock
-    void ReplaceVarBlock(CVarBlock *varBlock)
+    void ReplaceVarBlock(CVarBlock *varBlock) override
     {
         m_containerVar->Clear();
         UpdateCommon(m_item->GetVariable(), varBlock);
@@ -207,7 +207,7 @@ void ReflectedPropertyItem::SetVariable(IVariable *var)
         ReleaseVariable();
 
     m_pVariable = pInputVar;
-    assert(m_pVariable != NULL);
+    assert(m_pVariable != nullptr);
 
     m_pVariable->AddOnSetCallback(&m_onSetCallback);
     m_pVariable->AddOnSetEnumCallback(&m_onSetEnumCallback);
@@ -332,7 +332,7 @@ void ReflectedPropertyItem::RemoveAllChildren()
 {
     for (int i = 0; i < m_childs.size(); i++)
     {
-        m_childs[i]->m_parent = 0;
+        m_childs[i]->m_parent = nullptr;
     }
 
     m_childs.clear();
@@ -473,7 +473,7 @@ void ReflectedPropertyItem::ReleaseVariable()
         m_pVariable->RemoveOnSetCallback(&m_onSetCallback);
         m_pVariable->RemoveOnSetEnumCallback(&m_onSetEnumCallback);
     }
-    m_pVariable = 0;
+    m_pVariable = nullptr;
     delete m_reflectedVarAdapter;
     m_reflectedVarAdapter = nullptr;
 }

+ 1 - 1
Code/Editor/Controls/ReflectedPropertyControl/ReflectedVarWrapper.cpp

@@ -473,7 +473,7 @@ void ReflectedVarUserAdapter::SyncReflectedVarToIVar(IVariable *pVariable)
 
     //extract the list of custom items from the IVariable user data
     IVariable::IGetCustomItems* pGetCustomItems = static_cast<IVariable::IGetCustomItems*> (pVariable->GetUserData().value<void *>());
-    if (pGetCustomItems != 0)
+    if (pGetCustomItems != nullptr)
     {
         std::vector<IVariable::IGetCustomItems::SItem> items;
         QString dlgTitle;

+ 5 - 5
Code/Editor/Controls/SplineCtrl.cpp

@@ -30,7 +30,7 @@ CSplineCtrl::CSplineCtrl(QWidget* parent)
     m_nHitKeyIndex = -1;
     m_nKeyDrawRadius = 3;
     m_bTracking = false;
-    m_pSpline = 0;
+    m_pSpline = nullptr;
     m_gridX = 10;
     m_gridY = 10;
     m_fMinTime = -1;
@@ -40,7 +40,7 @@ CSplineCtrl::CSplineCtrl(QWidget* parent)
     m_fTooltipScaleX = 1;
     m_fTooltipScaleY = 1;
     m_bLockFirstLastKey = false;
-    m_pTimelineCtrl = 0;
+    m_pTimelineCtrl = nullptr;
 
     m_bSelectedKeys.reserve(0);
 
@@ -417,7 +417,7 @@ void CSplineCtrl::SetActiveKey(int nIndex)
 }
 
 /////////////////////////////////////////////////////////////////////////////
-void CSplineCtrl::SetSpline(ISplineInterpolator* pSpline, BOOL bRedraw)
+void CSplineCtrl::SetSpline(ISplineInterpolator* pSpline, bool bRedraw)
 {
     if (pSpline != m_pSpline)
     {
@@ -596,7 +596,7 @@ CSplineCtrl::EHitCode CSplineCtrl::HitTest(const QPoint& point)
 ///////////////////////////////////////////////////////////////////////////////
 void CSplineCtrl::StartTracking()
 {
-    m_bTracking = TRUE;
+    m_bTracking = true;
 
     GetIEditor()->BeginUndo();
 
@@ -674,7 +674,7 @@ void CSplineCtrl::StopTracking()
 
     GetIEditor()->AcceptUndo("Spline Move");
 
-    m_bTracking = FALSE;
+    m_bTracking = false;
 }
 
 //////////////////////////////////////////////////////////////////////////

+ 1 - 1
Code/Editor/Controls/SplineCtrl.h

@@ -59,7 +59,7 @@ public:
     // Lock value of first and last key to be the same.
     void LockFirstAndLastKeys(bool bLock) { m_bLockFirstLastKey = bLock; }
 
-    void SetSpline(ISplineInterpolator* pSpline, BOOL bRedraw = FALSE);
+    void SetSpline(ISplineInterpolator* pSpline, bool bRedraw = false);
     ISplineInterpolator* GetSpline();
 
     void SetTimeMarker(float fTime);

+ 38 - 38
Code/Editor/Controls/SplineCtrlEx.cpp

@@ -69,8 +69,8 @@ protected:
         AbstractSplineWidget* pCtrl = FindControl(m_pCtrl);
         m_splineEntries.resize(m_splineEntries.size() + 1);
         SplineEntry& entry = m_splineEntries.back();
-        ISplineSet* pSplineSet = (pCtrl ? pCtrl->m_pSplineSet : 0);
-        entry.id = (pSplineSet ? pSplineSet->GetIDFromSpline(pSpline) : 0);
+        ISplineSet* pSplineSet = (pCtrl ? pCtrl->m_pSplineSet : nullptr);
+        entry.id = (pSplineSet ? pSplineSet->GetIDFromSpline(pSpline) : nullptr);
         entry.pSpline = pSpline;
 
         const int numKeys = pSpline->GetKeyCount();
@@ -81,10 +81,10 @@ protected:
         }
     }
 
-    virtual int GetSize() { return sizeof(*this); }
-    virtual QString GetDescription() { return "UndoSplineCtrlEx"; };
+    int GetSize() override { return sizeof(*this); }
+    QString GetDescription() override { return "UndoSplineCtrlEx"; };
 
-    virtual void Undo(bool bUndo)
+    void Undo(bool bUndo) override
     {
         AbstractSplineWidget* pCtrl = FindControl(m_pCtrl);
         if (pCtrl)
@@ -104,7 +104,7 @@ protected:
         }
     }
 
-    virtual void Redo()
+    void Redo() override
     {
         AbstractSplineWidget* pCtrl = FindControl(m_pCtrl);
         if (pCtrl)
@@ -134,7 +134,7 @@ private:
     void SerializeSplines(_smart_ptr<ISplineBackup> SplineEntry::* backup, bool bLoading)
     {
         AbstractSplineWidget* pCtrl = FindControl(m_pCtrl);
-        ISplineSet* pSplineSet = (pCtrl ? pCtrl->m_pSplineSet : 0);
+        ISplineSet* pSplineSet = (pCtrl ? pCtrl->m_pSplineSet : nullptr);
         for (auto it = m_splineEntries.begin(); it != m_splineEntries.end(); ++it)
         {
             SplineEntry& entry = *it;
@@ -157,19 +157,19 @@ private:
     }
 
 public:
-    typedef std::list<AbstractSplineWidget*> CSplineCtrls;
+    using CSplineCtrls = std::list<AbstractSplineWidget *>;
 
     static AbstractSplineWidget* FindControl(AbstractSplineWidget* pCtrl)
     {
         if (!pCtrl)
         {
-            return 0;
+            return nullptr;
         }
 
         auto iter = std::find(s_activeCtrls.begin(), s_activeCtrls.end(), pCtrl);
         if (iter == s_activeCtrls.end())
         {
-            return 0;
+            return nullptr;
         }
 
         return *iter;
@@ -193,10 +193,10 @@ public:
 
     static CSplineCtrls s_activeCtrls;
 
-    virtual bool IsSelectionChanged() const
+    bool IsSelectionChanged() const override
     {
         AbstractSplineWidget* pCtrl = FindControl(m_pCtrl);
-        ISplineSet* pSplineSet = (pCtrl ? pCtrl->m_pSplineSet : 0);
+        ISplineSet* pSplineSet = (pCtrl ? pCtrl->m_pSplineSet : nullptr);
 
         for (auto it = m_splineEntries.begin(); it != m_splineEntries.end(); ++it)
         {
@@ -256,11 +256,11 @@ SplineWidget::~SplineWidget()
 AbstractSplineWidget::AbstractSplineWidget()
     : m_defaultKeyTangentType(SPLINE_KEY_TANGENT_NONE)
 {
-    m_pTimelineCtrl = 0;
+    m_pTimelineCtrl = nullptr;
 
     m_totalSplineCount = 0;
-    m_pHitSpline = 0;
-    m_pHitDetailSpline = 0;
+    m_pHitSpline = nullptr;
+    m_pHitDetailSpline = nullptr;
     m_nHitKeyIndex = -1;
     m_nHitDimension = -1;
     m_bHitIncomingHandle = true;
@@ -301,7 +301,7 @@ AbstractSplineWidget::AbstractSplineWidget()
 
     m_boLeftMouseButtonDown = false;
 
-    m_pSplineSet = 0;
+    m_pSplineSet = nullptr;
 
     m_controlAmplitude = false;
 
@@ -1633,7 +1633,7 @@ void SplineWidget::wheelEvent(QWheelEvent* event)
 
 void SplineWidget::keyPressEvent(QKeyEvent* e)
 {
-    BOOL bProcessed = false;
+    bool bProcessed = false;
 
     switch (e->key())
     {
@@ -1780,7 +1780,7 @@ void AbstractSplineWidget::SetHorizontalExtent([[maybe_unused]] int min, [[maybe
     //si.nPage = max(0,m_rcClient.Width() - m_leftOffset*2);
     //si.nPage = 1;
     //si.nPage = 1;
-    SetScrollInfo( SB_HORZ,&si,TRUE );
+    SetScrollInfo( SB_HORZ,&si,true );
     */
 }
 
@@ -1792,7 +1792,7 @@ ISplineInterpolator* AbstractSplineWidget::HitSpline(const QPoint& point)
         return m_pHitSpline;
     }
 
-    return NULL;
+    return nullptr;
 }
 
 //////////////////////////////////////////////////////////////////////////////
@@ -1806,8 +1806,8 @@ AbstractSplineWidget::EHitCode AbstractSplineWidget::HitTest(const QPoint& point
     PointToTimeValue(point, time, val);
 
     m_hitCode = HIT_NOTHING;
-    m_pHitSpline = NULL;
-    m_pHitDetailSpline = NULL;
+    m_pHitSpline = nullptr;
+    m_pHitDetailSpline = nullptr;
     m_nHitKeyIndex = -1;
     m_nHitDimension = -1;
     m_bHitIncomingHandle = true;
@@ -1968,8 +1968,8 @@ void AbstractSplineWidget::StopTracking()
 void AbstractSplineWidget::ScaleAmplitudeKeys(float time, float startValue, float offset)
 {
     //TODO: Test it in the facial animation pane and fix it...
-    m_pHitSpline = 0;
-    m_pHitDetailSpline = 0;
+    m_pHitSpline = nullptr;
+    m_pHitDetailSpline = nullptr;
     m_nHitKeyIndex = -1;
     m_nHitDimension = -1;
 
@@ -2071,8 +2071,8 @@ void AbstractSplineWidget::TimeScaleKeys(float time, float startTime, float endT
     float timeScaleC = endTime - startTime * timeScaleM;
 
     // Loop through all keys that are selected.
-    m_pHitSpline = 0;
-    m_pHitDetailSpline = 0;
+    m_pHitSpline = nullptr;
+    m_pHitDetailSpline = nullptr;
     m_nHitKeyIndex = -1;
 
     float affectedRangeMin = FLT_MAX;
@@ -2179,8 +2179,8 @@ void AbstractSplineWidget::ValueScaleKeys(float startValue, float endValue)
     }
 
     // Loop through all keys that are selected.
-    m_pHitSpline = 0;
-    m_pHitDetailSpline = 0;
+    m_pHitSpline = nullptr;
+    m_pHitDetailSpline = nullptr;
     m_nHitKeyIndex = -1;
     m_nHitDimension = -1;
 
@@ -2212,8 +2212,8 @@ void AbstractSplineWidget::ValueScaleKeys(float startValue, float endValue)
 //////////////////////////////////////////////////////////////////////////
 void AbstractSplineWidget::MoveSelectedKeys(Vec2 offset, bool copyKeys)
 {
-    m_pHitSpline = 0;
-    m_pHitDetailSpline = 0;
+    m_pHitSpline = nullptr;
+    m_pHitDetailSpline = nullptr;
     m_nHitKeyIndex = -1;
     m_nHitDimension = -1;
 
@@ -2275,8 +2275,8 @@ void AbstractSplineWidget::RemoveKey(ISplineInterpolator* pSpline, int nKey)
 
     SendNotifyEvent(SPLN_BEFORE_CHANGE);
 
-    m_pHitSpline = 0;
-    m_pHitDetailSpline = 0;
+    m_pHitSpline = nullptr;
+    m_pHitDetailSpline = nullptr;
     m_nHitKeyIndex = -1;
     if (nKey != -1)
     {
@@ -2294,8 +2294,8 @@ void AbstractSplineWidget::RemoveSelectedKeys()
 
     SendNotifyEvent(SPLN_BEFORE_CHANGE);
 
-    m_pHitSpline = 0;
-    m_pHitDetailSpline = 0;
+    m_pHitSpline = nullptr;
+    m_pHitDetailSpline = nullptr;
     m_nHitKeyIndex = -1;
 
     for (int splineIndex = 0, splineCount = m_splines.size(); splineIndex < splineCount; ++splineIndex)
@@ -2558,11 +2558,11 @@ public:
 };
 void AbstractSplineWidget::DuplicateSelectedKeys()
 {
-    m_pHitSpline = 0;
-    m_pHitDetailSpline = 0;
+    m_pHitSpline = nullptr;
+    m_pHitDetailSpline = nullptr;
     m_nHitKeyIndex = -1;
 
-    typedef std::vector<CKeyCopyInfo> KeysToAddContainer;
+    using KeysToAddContainer = std::vector<CKeyCopyInfo>;
     KeysToAddContainer keysToInsert;
     for (int splineIndex = 0, splineCount = m_splines.size(); splineIndex < splineCount; ++splineIndex)
     {
@@ -2600,7 +2600,7 @@ void AbstractSplineWidget::ZeroAll()
 {
     GetIEditor()->BeginUndo();
 
-    typedef std::vector<ISplineInterpolator*> SplineContainer;
+    using SplineContainer = std::vector<ISplineInterpolator *>;
     SplineContainer splines;
     for (int splineIndex = 0; splineIndex < int(m_splines.size()); ++splineIndex)
     {
@@ -2632,7 +2632,7 @@ void AbstractSplineWidget::KeyAll()
 {
     GetIEditor()->BeginUndo();
 
-    typedef std::vector<ISplineInterpolator*> SplineContainer;
+    using SplineContainer = std::vector<ISplineInterpolator *>;
     SplineContainer splines;
     for (int splineIndex = 0; splineIndex < int(m_splines.size()); ++splineIndex)
     {

+ 1 - 1
Code/Editor/Controls/TimelineCtrl.cpp

@@ -58,7 +58,7 @@ TimelineWidget::TimelineWidget(QWidget* parent /* = nullptr */)
 
     m_bIgnoreSetTime = false;
 
-    m_pKeyTimeSet = 0;
+    m_pKeyTimeSet = nullptr;
 
     m_markerStyle = MARKER_STYLE_SECONDS;
     m_fps = 30.0f;

+ 2 - 2
Code/Editor/Core/LevelEditorMenuHandler.cpp

@@ -80,12 +80,12 @@ namespace
             , m_trigger(trigger)
         {}
 
-        virtual ~EditorListener()
+        ~EditorListener() override
         {
             GetIEditor()->UnregisterNotifyListener(this);
         }
 
-        void OnEditorNotifyEvent(EEditorNotifyEvent event)
+        void OnEditorNotifyEvent(EEditorNotifyEvent event) override
         {
             m_trigger(event);
         }

+ 1 - 1
Code/Editor/Core/QtEditorApplication.cpp

@@ -420,7 +420,7 @@ namespace Editor
             {
                 UINT rawInputSize;
                 const UINT rawInputHeaderSize = sizeof(RAWINPUTHEADER);
-                GetRawInputData((HRAWINPUT)msg->lParam, RID_INPUT, NULL, &rawInputSize, rawInputHeaderSize);
+                GetRawInputData((HRAWINPUT)msg->lParam, RID_INPUT, nullptr, &rawInputSize, rawInputHeaderSize);
 
                 AZStd::array<BYTE, sizeof(RAWINPUT)> rawInputBytesArray;
                 LPBYTE rawInputBytes = rawInputBytesArray.data();

+ 1 - 1
Code/Editor/Core/Tests/test_Main.cpp

@@ -26,7 +26,7 @@ class EditorCoreTestEnvironment
 public:
     AZ_TEST_CLASS_ALLOCATOR(EditorCoreTestEnvironment);
 
-    virtual ~EditorCoreTestEnvironment()
+    ~EditorCoreTestEnvironment() override
     {
     }
 

+ 1 - 1
Code/Editor/Dialogs/ErrorsDlg.cpp

@@ -20,7 +20,7 @@ AZ_PUSH_DISABLE_DLL_EXPORT_MEMBER_WARNING
 AZ_POP_DISABLE_DLL_EXPORT_MEMBER_WARNING
 
 
-CErrorsDlg::CErrorsDlg(QWidget* pParent /*=NULL*/)
+CErrorsDlg::CErrorsDlg(QWidget* pParent /*=nullptr*/)
     : QDialog(pParent)
     , ui(new Ui::CErrorsDlg)
 {

+ 1 - 1
Code/Editor/Dialogs/PythonScriptsDialog.cpp

@@ -159,7 +159,7 @@ void CPythonScriptsDialog::OnExecute()
     QList<QStandardItem*> selectedItems = ui->treeView->GetSelectedItems();
     QStandardItem* selectedItem = selectedItems.empty() ? nullptr : selectedItems.first();
 
-    if (selectedItem == NULL)
+    if (selectedItem == nullptr)
     {
         return;
     }

+ 11 - 11
Code/Editor/Export/ExportManager.cpp

@@ -96,7 +96,7 @@ Export::CObject::CObject(const char* pName)
 
     cameraTargetNodeName[0] = '\0';
 
-    m_pLastObject = 0;
+    m_pLastObject = nullptr;
 }
 
 
@@ -116,14 +116,14 @@ void Export::CData::Clear()
 // CExportManager
 CExportManager::CExportManager()
     : m_isPrecaching(false)
-    , m_pBaseObj(0)
+    , m_pBaseObj(nullptr)
     , m_FBXBakedExportFPS(0.0f)
     , m_fScale(100.0f)
     ,                 // this scale is used by CryEngine RC
     m_bAnimationExport(false)
     , m_bExportLocalCoords(false)
     , m_numberOfExportFrames(0)
-    , m_pivotEntityObject(0)
+    , m_pivotEntityObject(nullptr)
     , m_bBakedKeysSequenceExport(true)
     , m_animTimeExportPrimarySequenceCurrentTime(0.0f)
     , m_animKeyTimeExport(true)
@@ -290,7 +290,7 @@ void CExportManager::ProcessEntityAnimationTrack(
     const AZ::EntityId entityId, Export::CObject* pObj, AnimParamType entityTrackParamType)
 {
     CTrackViewAnimNode* pEntityNode = GetIEditor()->GetSequenceManager()->GetActiveAnimNode(entityId);
-    CTrackViewTrack* pEntityTrack = (pEntityNode ? pEntityNode->GetTrackForParameter(entityTrackParamType) : 0);
+    CTrackViewTrack* pEntityTrack = (pEntityNode ? pEntityNode->GetTrackForParameter(entityTrackParamType) : nullptr);
 
     if (!pEntityTrack)
     {
@@ -397,7 +397,7 @@ void CExportManager::AddMesh(Export::CObject* pObj, const IIndexedMesh* pIndMesh
     else
     {
         Export::CMesh* pMesh = new Export::CMesh();
-        if (meshDesc.m_nFaceCount == 0 && meshDesc.m_nIndexCount != 0 && meshDesc.m_pIndices != 0)
+        if (meshDesc.m_nFaceCount == 0 && meshDesc.m_nIndexCount != 0 && meshDesc.m_pIndices != nullptr)
         {
             const vtx_idx* pIndices = &meshDesc.m_pIndices[0];
             int nTris = meshDesc.m_nIndexCount / 3;
@@ -431,7 +431,7 @@ void CExportManager::AddMesh(Export::CObject* pObj, const IIndexedMesh* pIndMesh
 
 bool CExportManager::AddStatObj(Export::CObject* pObj, IStatObj* pStatObj, Matrix34A* pTm)
 {
-    IIndexedMesh* pIndMesh = 0;
+    IIndexedMesh* pIndMesh = nullptr;
 
     if (pStatObj->GetSubObjectCount())
     {
@@ -440,7 +440,7 @@ bool CExportManager::AddStatObj(Export::CObject* pObj, IStatObj* pStatObj, Matri
             IStatObj::SSubObject* pSubObj = pStatObj->GetSubObject(i);
             if (pSubObj && pSubObj->nType == STATIC_SUB_OBJECT_MESH && pSubObj->pStatObj)
             {
-                pIndMesh = 0;
+                pIndMesh = nullptr;
                 if (m_isOccluder)
                 {
                     if (pSubObj->pStatObj->GetLodObject(2))
@@ -542,7 +542,7 @@ bool CExportManager::AddObject(CBaseObject* pBaseObj)
 
     if (m_isPrecaching)
     {
-        AddMeshes(0);
+        AddMeshes(nullptr);
         return true;
     }
 
@@ -554,7 +554,7 @@ bool CExportManager::AddObject(CBaseObject* pBaseObj)
     m_objectMap[pBaseObj] = int(m_data.m_objects.size() - 1);
 
     AddMeshes(pObj);
-    m_pBaseObj = 0;
+    m_pBaseObj = nullptr;
 
     return true;
 }
@@ -678,7 +678,7 @@ bool CExportManager::ProcessObjectsForExport()
         for (size_t objectID = 0; objectID < m_data.m_objects.size(); ++objectID)
         {
             Export::CObject* pObj2 =  m_data.m_objects[objectID];
-            CBaseObject* pObject = 0;
+            CBaseObject* pObject = nullptr;
 
             if (QString::compare(pObj2->name, kPrimaryCameraName) == 0)
             {
@@ -983,7 +983,7 @@ bool CExportManager::AddObjectsFromSequence(CTrackViewSequence* pSequence, XmlNo
             {
                 if (pSubSequence && !pSubSequence->IsDisabled())
                 {
-                    XmlNodeRef subSeqNode = 0;
+                    XmlNodeRef subSeqNode = nullptr;
 
                     if (!seqNode)
                     {

+ 1 - 1
Code/Editor/Export/OBJExporter.cpp

@@ -67,7 +67,7 @@ bool COBJExporter::ExportToFile(const char* filename, const Export::IData* pExpo
         while (nParent >= 0 && nParent < pExportData->GetObjectCount())
         {
             const Export::Object* pParentObj = pExportData->GetObject(nParent);
-            assert(NULL != pParentObj);
+            assert(nullptr != pParentObj);
 
             Vec3 pos2(pParentObj->pos.x, pParentObj->pos.y, pParentObj->pos.z);
             Quat rot2(pParentObj->rot.w, pParentObj->rot.v.x, pParentObj->rot.v.y, pParentObj->rot.v.z);

+ 11 - 11
Code/Editor/Geometry/TriMesh.cpp

@@ -19,13 +19,13 @@
 //////////////////////////////////////////////////////////////////////////
 CTriMesh::CTriMesh()
 {
-    pFaces = NULL;
-    pVertices = NULL;
-    pWSVertices = NULL;
-    pUV = NULL;
-    pColors = NULL;
-    pEdges = NULL;
-    pWeights = NULL;
+    pFaces = nullptr;
+    pVertices = nullptr;
+    pWSVertices = nullptr;
+    pUV = nullptr;
+    pColors = nullptr;
+    pEdges = nullptr;
+    pWeights = nullptr;
 
     nFacesCount = 0;
     nVertCount = 0;
@@ -67,7 +67,7 @@ void CTriMesh::ReallocStream(int stream, int nNewCount)
     {
         return; // Stream already have required size.
     }
-    void* pStream = 0;
+    void* pStream = nullptr;
     int nElementSize = 0;
     GetStreamInfo(stream, pStream, nElementSize);
     pStream = ReAllocElements(pStream, nNewCount, nElementSize);
@@ -256,7 +256,7 @@ void CTriMesh::SharePositions()
     std::vector<int> arrHashTable[256];
 
     CTriVertex* pNewVerts = new CTriVertex[GetVertexCount()];
-    SMeshColor* pNewColors = 0;
+    SMeshColor* pNewColors = nullptr;
     if (pColors)
     {
         pNewColors = new SMeshColor[GetVertexCount()];
@@ -433,8 +433,8 @@ void CTriMesh::UpdateIndexedMesh(IIndexedMesh* pIndexedMesh) const
 //////////////////////////////////////////////////////////////////////////
 void CTriMesh::CopyStream(CTriMesh& fromMesh, int stream)
 {
-    void* pTrgStream = 0;
-    void* pSrcStream = 0;
+    void* pTrgStream = nullptr;
+    void* pSrcStream = nullptr;
     int nElemSize = 0;
     fromMesh.GetStreamInfo(stream, pSrcStream, nElemSize);
     if (pSrcStream)

+ 3 - 3
Code/Editor/Include/IAssetItem.h

@@ -334,12 +334,12 @@ struct IAssetItem
     virtual void OnEndPreview() = 0;
     // Description:
     //      If the asset has a special preview panel with utility controls, to be placed at the top of the Preview window, it can return an child dialog window
-    //      otherwise it can return NULL, if no panel is available
+    //      otherwise it can return nullptr, if no panel is available
     // Arguments:
-    //      pParentWnd - a valid CDialog*, or NULL
+    //      pParentWnd - a valid CDialog*, or nullptr
     // Return Value:
     //      A valid child dialog window handle, if this asset wants to have a custom panel in the top side of the Asset Preview window,
-    //      otherwise it can return NULL, if no panel is available
+    //      otherwise it can return nullptr, if no panel is available
     // See Also:
     //      OnBeginPreview(), OnEndPreview()
     virtual QWidget* GetCustomPreviewPanelHeader(QWidget* pParentWnd) = 0;

+ 9 - 2
Code/Editor/Include/IFileUtil.h

@@ -185,8 +185,15 @@ struct IFileUtil
     virtual ECopyTreeResult CopyTree(const QString& strSourceDirectory, const QString& strTargetDirectory, bool boRecurse = true, bool boConfirmOverwrite = false) = 0;
 
     //////////////////////////////////////////////////////////////////////////
-    // @param LPPROGRESS_ROUTINE pfnProgress - called by the system to notify of file copy progress
-    // @param LPBOOL pbCancel - when the contents of this BOOL are set to TRUE, the system cancels the copy operation
+    /**
+     * @brief CopyFile
+     * @param strSourceFile
+     * @param strTargetFile
+     * @param boConfirmOverwrite
+     * @param pfnProgress - called by the system to notify of file copy progress
+     * @param pbCancel - when the contents of this bool are set to true, the system cancels the copy operation
+     * @return
+     */
     virtual ECopyTreeResult CopyFile(const QString& strSourceFile, const QString& strTargetFile, bool boConfirmOverwrite = false, ProgressRoutine pfnProgress = nullptr, bool* pbCancel = nullptr) = 0;
 
     // As we don't have a FileUtil interface here, we have to duplicate some code :-( in order to keep

+ 1 - 1
Code/Editor/LayoutWnd.h

@@ -103,7 +103,7 @@ public:
     static const char* GetConfigGroupName();
 
     CLayoutViewPane* FindViewByClass(const QString& viewClassName);
-    void BindViewport(CLayoutViewPane* vp, const QString& viewClassName, QWidget* pViewport = NULL);
+    void BindViewport(CLayoutViewPane* vp, const QString& viewClassName, QWidget* pViewport = nullptr);
     QString ViewportTypeToClassName(EViewportType viewType);
 
     //! Switch 2D viewports.

+ 1 - 1
Code/Editor/LevelInfo.cpp

@@ -93,7 +93,7 @@ void CLevelInfo::ValidateObjects()
 
         pObject->Validate(m_pReport);
 
-        m_pReport->SetCurrentValidatorObject(NULL);
+        m_pReport->SetCurrentValidatorObject(nullptr);
     }
 
     CLogFile::WriteLine("Validating Duplicate Objects...");

+ 1 - 1
Code/Editor/LogFile.cpp

@@ -383,7 +383,7 @@ AZ_POP_DISABLE_WARNING
     //////////////////////////////////////////////////////////////////////
 
 #if defined(AZ_PLATFORM_WINDOWS)
-    EnumDisplaySettings(NULL, ENUM_CURRENT_SETTINGS, &DisplayConfig);
+    EnumDisplaySettings(nullptr, ENUM_CURRENT_SETTINGS, &DisplayConfig);
     GetPrivateProfileStringW(L"boot.description", L"display.drv",
         L"(Unknown graphics card)", szLanguageBufferW, sizeof(szLanguageBufferW),
         L"system.ini");

+ 19 - 19
Code/Editor/MainWindow.cpp

@@ -161,45 +161,45 @@ public:
         }
     }
 
-    ~EngineConnectionListener()
+    ~EngineConnectionListener() override
     {
         AzFramework::AssetSystemInfoBus::Handler::BusDisconnect();
         AzFramework::EngineConnectionEvents::Bus::Handler::BusDisconnect();
     }
 
 public:
-    virtual void Connected([[maybe_unused]] AzFramework::SocketConnection* connection)
+    void Connected([[maybe_unused]] AzFramework::SocketConnection* connection) override
     {
         m_state = EConnectionState::Connected;
     }
-    virtual void Connecting([[maybe_unused]] AzFramework::SocketConnection* connection)
+    void Connecting([[maybe_unused]] AzFramework::SocketConnection* connection) override
     {
         m_state = EConnectionState::Connecting;
     }
-    virtual void Listening([[maybe_unused]] AzFramework::SocketConnection* connection)
+    void Listening([[maybe_unused]] AzFramework::SocketConnection* connection) override
     {
         m_state = EConnectionState::Listening;
     }
-    virtual void Disconnecting([[maybe_unused]] AzFramework::SocketConnection* connection)
+    void Disconnecting([[maybe_unused]] AzFramework::SocketConnection* connection) override
     {
         m_state = EConnectionState::Disconnecting;
     }
-    virtual void Disconnected([[maybe_unused]] AzFramework::SocketConnection* connection)
+    void Disconnected([[maybe_unused]] AzFramework::SocketConnection* connection) override
     {
         m_state = EConnectionState::Disconnected;
     }
 
-    virtual void AssetCompilationSuccess(const AZStd::string& assetPath) override
+    void AssetCompilationSuccess(const AZStd::string& assetPath) override
     {
         m_lastAssetProcessorTask = assetPath;
     }
 
-    virtual void AssetCompilationFailed(const AZStd::string& assetPath) override
+    void AssetCompilationFailed(const AZStd::string& assetPath) override
     {
         m_failedJobs.insert(assetPath);
     }
 
-    virtual void CountOfAssetsInQueue(const int& count) override
+    void CountOfAssetsInQueue(const int& count) override
     {
         m_pendingJobsCount = count;
     }
@@ -299,7 +299,7 @@ MainWindow::MainWindow(QWidget* parent)
     , m_undoStateAdapter(new UndoStackStateAdapter(this))
     , m_keyboardCustomization(nullptr)
     , m_activeView(nullptr)
-    , m_settings("O3DE", "O3DE") 
+    , m_settings("O3DE", "O3DE")
     , m_toolbarManager(new ToolbarManager(m_actionManager, this))
     , m_assetImporterManager(new AssetImporterManager(this))
     , m_levelEditorMenuHandler(new LevelEditorMenuHandler(this, m_viewPaneManager, m_settings))
@@ -574,7 +574,7 @@ void MainWindow::closeEvent(QCloseEvent* event)
 
     if (GetIEditor()->GetDocument())
     {
-        GetIEditor()->GetDocument()->SetModifiedFlag(FALSE);
+        GetIEditor()->GetDocument()->SetModifiedFlag(false);
         GetIEditor()->GetDocument()->SetModifiedModules(eModifiedNothing);
     }
     // Close all edit panels.
@@ -582,7 +582,7 @@ void MainWindow::closeEvent(QCloseEvent* event)
     GetIEditor()->GetObjectManager()->EndEditParams();
 
     // force clean up of all deferred deletes, so that we don't have any issues with windows from plugins not being deleted yet
-    qApp->sendPostedEvents(0, QEvent::DeferredDelete);
+    qApp->sendPostedEvents(nullptr, QEvent::DeferredDelete);
 
     QMainWindow::closeEvent(event);
 }
@@ -1296,7 +1296,7 @@ void MainWindow::OnEditorNotifyEvent(EEditorNotifyEvent ev)
         auto cryEdit = CCryEditApp::instance();
         if (cryEdit)
         {
-            cryEdit->SetEditorWindowTitle(0, AZ::Utils::GetProjectName().c_str(), GetIEditor()->GetGameEngine()->GetLevelName());
+            cryEdit->SetEditorWindowTitle(nullptr, AZ::Utils::GetProjectName().c_str(), GetIEditor()->GetGameEngine()->GetLevelName());
         }
     }
     break;
@@ -1305,7 +1305,7 @@ void MainWindow::OnEditorNotifyEvent(EEditorNotifyEvent ev)
         auto cryEdit = CCryEditApp::instance();
         if (cryEdit)
         {
-            cryEdit->SetEditorWindowTitle(0, AZ::Utils::GetProjectName().c_str(), 0);
+            cryEdit->SetEditorWindowTitle(nullptr, AZ::Utils::GetProjectName().c_str(), nullptr);
         }
     }
     break;
@@ -1404,8 +1404,8 @@ void MainWindow::ResetAutoSaveTimers(bool bForceInit)
     {
         delete m_autoRemindTimer;
     }
-    m_autoSaveTimer = 0;
-    m_autoRemindTimer = 0;
+    m_autoSaveTimer = nullptr;
+    m_autoRemindTimer = nullptr;
 
     if (bForceInit)
     {
@@ -1442,7 +1442,7 @@ void MainWindow::ResetBackgroundUpdateTimer()
     if (m_backgroundUpdateTimer)
     {
         delete m_backgroundUpdateTimer;
-        m_backgroundUpdateTimer = 0;
+        m_backgroundUpdateTimer = nullptr;
     }
 
     ICVar* pBackgroundUpdatePeriod = gEnv->pConsole->GetCVar("ed_backgroundUpdatePeriod");
@@ -1488,7 +1488,7 @@ void MainWindow::OnRefreshAudioSystem()
 
     if (QString::compare(sLevelName, "Untitled", Qt::CaseInsensitive) == 0)
     {
-        // Rather pass NULL to indicate that no level is loaded!
+        // Rather pass nullptr to indicate that no level is loaded!
         sLevelName = QString();
     }
 
@@ -1921,7 +1921,7 @@ QWidget* MainWindow::CreateToolbarWidget(int actionId)
         break;
     case ID_TOOLBAR_WIDGET_SPACER_RIGHT:
         w = CreateSpacerRightWidget();
-        break; 
+        break;
     default:
         qWarning() << Q_FUNC_INFO << "Unknown id " << actionId;
         return nullptr;

+ 4 - 4
Code/Editor/NewLevelDialog.cpp

@@ -19,7 +19,7 @@
 #include <QToolButton>
 
 // Editor
-#include "NewTerrainDialog.h"  
+#include "NewTerrainDialog.h"
 
 AZ_PUSH_DISABLE_DLL_EXPORT_MEMBER_WARNING
 #include <ui_NewLevelDialog.h>
@@ -54,7 +54,7 @@ private:
 
 // CNewLevelDialog dialog
 
-CNewLevelDialog::CNewLevelDialog(QWidget* pParent /*=NULL*/)
+CNewLevelDialog::CNewLevelDialog(QWidget* pParent /*=nullptr*/)
     : QDialog(pParent)
     , m_bUpdate(false)
     , ui(new Ui::CNewLevelDialog)
@@ -69,7 +69,7 @@ CNewLevelDialog::CNewLevelDialog(QWidget* pParent /*=NULL*/)
 
     m_bIsResize = false;
 
-    
+
     ui->TITLE->setText(tr("Assign a name and location to the new level."));
     ui->STATIC1->setText(tr("Location:"));
     ui->STATIC2->setText(tr("Name:"));
@@ -98,7 +98,7 @@ CNewLevelDialog::CNewLevelDialog(QWidget* pParent /*=NULL*/)
 
     m_levelFolders = GetLevelsFolder();
     m_level = "";
-    // First of all, keyboard focus is related to widget tab order, and the default tab order is based on the order in which 
+    // First of all, keyboard focus is related to widget tab order, and the default tab order is based on the order in which
     // widgets are constructed. Therefore, creating more widgets changes the keyboard focus. That is why setFocus() is called last.
     // Secondly, using singleShot() allows setFocus() slot of the QLineEdit instance to be invoked right after the event system
     // is ready to do so. Therefore, it is better to use singleShot() than directly call setFocus().

+ 1 - 1
Code/Editor/NewTerrainDialog.cpp

@@ -19,7 +19,7 @@ AZ_POP_DISABLE_WARNING
 
 
 
-CNewTerrainDialog::CNewTerrainDialog(QWidget* pParent /*=NULL*/)
+CNewTerrainDialog::CNewTerrainDialog(QWidget* pParent /*=nullptr*/)
     : QDialog(pParent)
     , m_terrainResolutionIndex(0)
     , m_terrainUnitsIndex(0)

+ 2 - 2
Code/Editor/Plugin.cpp

@@ -133,7 +133,7 @@ IClassDesc* CClassFactory::FindClass(const char* pClassName) const
 
     if (!pSubClassName)
     {
-        return NULL;
+        return nullptr;
     }
 
     QString name = QString(pClassName).left(pSubClassName - pClassName);
@@ -169,7 +169,7 @@ void CClassFactory::UnregisterClass(const char* pClassName)
 {
     IClassDesc* pClassDesc = FindClass(pClassName);
 
-    if (pClassDesc == NULL)
+    if (pClassDesc == nullptr)
     {
         return;
     }

+ 9 - 9
Code/Editor/PluginManager.cpp

@@ -18,8 +18,8 @@
 #include "Include/IPlugin.h"
 
 
-typedef IPlugin* (* TPfnCreatePluginInstance)(PLUGIN_INIT_PARAM* pInitParam);
-typedef void (* TPfnQueryPluginSettings)(SPluginSettings&);
+using TPfnCreatePluginInstance = IPlugin *(*)(PLUGIN_INIT_PARAM *pInitParam);
+using TPfnQueryPluginSettings = void (*)(SPluginSettings &);
 
 CPluginManager::CPluginManager()
 {
@@ -210,7 +210,7 @@ bool CPluginManager::LoadPlugins(const char* pPathWithMask)
             continue;
         }
 
-        IPlugin* pPlugin = NULL;
+        IPlugin* pPlugin = nullptr;
         PLUGIN_INIT_PARAM sInitParam =
         {
             GetIEditor(),
@@ -279,7 +279,7 @@ IPlugin* CPluginManager::GetPluginByGUID(const char* pGUID)
         }
     }
 
-    return NULL;
+    return nullptr;
 }
 
 IPlugin* CPluginManager::GetPluginByUIID(uint8 iUserInterfaceID)
@@ -290,7 +290,7 @@ IPlugin* CPluginManager::GetPluginByUIID(uint8 iUserInterfaceID)
 
     if (it == m_uuidPluginMap.end())
     {
-        return NULL;
+        return nullptr;
     }
 
     return (*it).second;
@@ -302,7 +302,7 @@ IUIEvent* CPluginManager::GetEventByIDAndPluginID(uint8 aPluginID, uint8 aEventI
     // specified by its ID and the user interface ID of the plugin which
     // created the UI element
 
-    IPlugin* pPlugin = NULL;
+    IPlugin* pPlugin = nullptr;
     TEventHandlerIt eventIt;
     TPluginEventIt pluginIt;
 
@@ -310,21 +310,21 @@ IUIEvent* CPluginManager::GetEventByIDAndPluginID(uint8 aPluginID, uint8 aEventI
 
     if (!pPlugin)
     {
-        return NULL;
+        return nullptr;
     }
 
     pluginIt = m_pluginEventMap.find(pPlugin);
 
     if (pluginIt == m_pluginEventMap.end())
     {
-        return NULL;
+        return nullptr;
     }
 
     eventIt = (*pluginIt).second.find(aEventID);
 
     if (eventIt == (*pluginIt).second.end())
     {
-        return NULL;
+        return nullptr;
     }
 
     return (*eventIt).second;

+ 1 - 1
Code/Editor/PythonEditorFuncs.cpp

@@ -323,7 +323,7 @@ namespace
     //////////////////////////////////////////////////////////////////////////
     void GetPythonArgumentsVector(const char* pArguments, QStringList& inputArguments)
     {
-        if (pArguments == NULL)
+        if (pArguments == nullptr)
         {
             return;
         }

+ 1 - 1
Code/Editor/QtUI/QCollapsibleGroupBox.cpp

@@ -13,7 +13,7 @@
 QCollapsibleGroupBox::QCollapsibleGroupBox(QWidget* parent)
     : QGroupBox(parent)
     , m_collapsed(false)
-    , m_toggleButton(0)
+    , m_toggleButton(nullptr)
 {
     m_toggleButton = new QToolButton(this);
     m_toggleButton->setFixedSize(16, 16);

+ 1 - 1
Code/Editor/RenderHelpers/AxisHelper.h

@@ -60,7 +60,7 @@ public:
     void DrawDome(const Matrix34& worldTM, const SGizmoParameters& setup, DisplayContext& dc, AABB& objectBox);
     bool HitTest(const Matrix34& worldTM, const SGizmoParameters& setup, HitContext& hc);
 
-    bool HitTestForRotationCircle(const Matrix34& worldTM, IDisplayViewport* view, const QPoint& pos, float fHitWidth, Vec3* pOutHitPos = NULL, Vec3* pOutHitNormal = NULL);
+    bool HitTestForRotationCircle(const Matrix34& worldTM, IDisplayViewport* view, const QPoint& pos, float fHitWidth, Vec3* pOutHitPos = nullptr, Vec3* pOutHitNormal = nullptr);
 
     void SetHighlightAxis(int axis) { m_highlightAxis = axis; };
     int  GetHighlightAxis() const { return m_highlightAxis; };

+ 1 - 1
Code/Editor/ResizeResolutionDialog.cpp

@@ -89,7 +89,7 @@ int ResizeResolutionModel::SizeRow(uint32 dwSize) const
 // CResizeResolutionDialog dialog
 
 
-CResizeResolutionDialog::CResizeResolutionDialog(QWidget* pParent /*=NULL*/)
+CResizeResolutionDialog::CResizeResolutionDialog(QWidget* pParent /*=nullptr*/)
     : QDialog(pParent)
     , m_model(new ResizeResolutionModel(this))
     , ui(new Ui::CResizeResolutionDialog)

+ 1 - 1
Code/Editor/ResourceSelectorHost.cpp

@@ -101,7 +101,7 @@ public:
     }
 
 private:
-    typedef std::map<AZStd::string, const SStaticResourceSelectorEntry*, stl::less_stricmp<AZStd::string> > TTypeMap;
+    using TTypeMap = std::map<AZStd::string, const SStaticResourceSelectorEntry *, stl::less_stricmp<AZStd::string>>;
     TTypeMap m_typeMap;
 
     std::map<AZStd::string, AZStd::string> m_globallySelectedResources;

+ 1 - 1
Code/Editor/SelectEAXPresetDlg.cpp

@@ -49,7 +49,7 @@ QString CSelectEAXPresetDlg::GetCurrPreset() const
     {
         return m_ui->listView->currentIndex().data().toString();
     }
-    // EXCEPTION: OCX Property Pages should return FALSE
+    // EXCEPTION: OCX Property Pages should return false
     return QString();
 }
 

+ 4 - 4
Code/Editor/Settings.cpp

@@ -244,7 +244,7 @@ SEditorSettings::SEditorSettings()
 
     gui.nToolbarIconSize = static_cast<int>(AzQtComponents::ToolBar::ToolBarIconSize::Default);
 
-    int lfHeight = 8;// -MulDiv(8, GetDeviceCaps(GetDC(NULL), LOGPIXELSY), 72);
+    int lfHeight = 8;// -MulDiv(8, GetDeviceCaps(GetDC(nullptr), LOGPIXELSY), 72);
     gui.nDefaultFontHieght = lfHeight;
     gui.hSystemFont = QFont("Ms Shell Dlg 2", lfHeight, QFont::Normal);
     gui.hSystemFontBold = QFont("Ms Shell Dlg 2", lfHeight, QFont::Bold);
@@ -533,7 +533,7 @@ void SEditorSettings::Save()
     SaveValue("Settings", "ShowTimeInConsole", bShowTimeInConsole);
 
     SaveValue("Settings", "EnableSceneInspector", enableSceneInspector);
-    
+
     //////////////////////////////////////////////////////////////////////////
     // Viewport settings.
     //////////////////////////////////////////////////////////////////////////
@@ -626,7 +626,7 @@ void SEditorSettings::Save()
     SaveValue("Settings\\AssetBrowser", "AutoFilterFromViewportSelection", sAssetBrowserSettings.bAutoFilterFromViewportSelection);
     SaveValue("Settings\\AssetBrowser", "VisibleColumnNames", sAssetBrowserSettings.sVisibleColumnNames);
     SaveValue("Settings\\AssetBrowser", "ColumnNames", sAssetBrowserSettings.sColumnNames);
-      
+
     //////////////////////////////////////////////////////////////////////////
     // Deep Selection Settings
     //////////////////////////////////////////////////////////////////////////
@@ -689,7 +689,7 @@ void SEditorSettings::Load()
     QString     strPlaceholderString;
     // Load settings from registry.
     LoadValue("Settings", "UndoLevels", undoLevels);
-    LoadValue("Settings", "UndoSliceOverrideSaveValue", m_undoSliceOverrideSaveValue);  
+    LoadValue("Settings", "UndoSliceOverrideSaveValue", m_undoSliceOverrideSaveValue);
     LoadValue("Settings", "ShowWelcomeScreenAtStartup", bShowDashboardAtStartup);
     LoadValue("Settings", "ShowCircularDependencyError", m_showCircularDependencyError);
     LoadValue("Settings", "LoadLastLevelAtStartup", bAutoloadLastLevelAtStartup);

+ 36 - 36
Code/Editor/SettingsManager.cpp

@@ -105,7 +105,7 @@ bool CSettingsManager::CreateDefaultLayoutSettingsFile()
 
 AZStd::vector<AZStd::string> CSettingsManager::BuildSettingsList()
 {
-    XmlNodeRef root = NULL;
+    XmlNodeRef root = nullptr;
 
     root = m_pSettingsManagerMemoryNode;
 
@@ -132,8 +132,8 @@ void CSettingsManager::BuildSettingsList_Helper(const XmlNodeRef& node, const AZ
 {
     for (int i = 0; i < node->getNumAttributes(); ++i)
     {
-        const char* key = NULL;
-        const char* value = NULL;
+        const char* key = nullptr;
+        const char* value = nullptr;
         node->getAttributeByIndex(i, &key, &value);
         if (!pathToNode.empty())
         {
@@ -163,7 +163,7 @@ void CSettingsManager::BuildSettingsList_Helper(const XmlNodeRef& node, const AZ
                     result
                 );
             }
-            
+
         }
     }
 }
@@ -190,7 +190,7 @@ void CSettingsManager::SaveSetting(const QString& path, const QString& attr, con
     // Spaces in node names not allowed
     writeAttr.replace(" ", "");
 
-    XmlNodeRef root = NULL;
+    XmlNodeRef root = nullptr;
 
     root = m_pSettingsManagerMemoryNode;
 
@@ -276,11 +276,11 @@ XmlNodeRef CSettingsManager::LoadSetting(const QString& path, const QString& att
     // Spaces in node names not allowed
     readAttr.replace(" ", "");
 
-    XmlNodeRef root = NULL;
+    XmlNodeRef root = nullptr;
 
     root = m_pSettingsManagerMemoryNode;
 
-    XmlNodeRef tmpNode = NULL;
+    XmlNodeRef tmpNode = nullptr;
 
     if (NeedSettingsNode(path))
     {
@@ -293,7 +293,7 @@ XmlNodeRef CSettingsManager::LoadSetting(const QString& path, const QString& att
 
     if (!tmpNode)
     {
-        return 0;
+        return nullptr;
     }
 
     for (int i = 0; i < strNodes.size(); ++i)
@@ -304,13 +304,13 @@ XmlNodeRef CSettingsManager::LoadSetting(const QString& path, const QString& att
         }
         else
         {
-            return 0;
+            return nullptr;
         }
     }
 
     if (!tmpNode->findChild(readAttr.toUtf8().data()))
     {
-        return 0;
+        return nullptr;
     }
     else
     {
@@ -360,7 +360,7 @@ void CSettingsManager::AddToolVersion(const QString& toolName, const QString& to
         return;
     }
 
-    if (stl::find_in_map(m_toolNames, toolName, NULL) == "")
+    if (stl::find_in_map(m_toolNames, toolName, nullptr) == "")
     {
         if (!toolVersion.isEmpty())
         {
@@ -380,7 +380,7 @@ void CSettingsManager::AddToolName(const QString& toolName, const QString& human
         return;
     }
 
-    if (stl::find_in_map(m_toolNames, toolName, NULL) == "")
+    if (stl::find_in_map(m_toolNames, toolName, nullptr) == "")
     {
         if (!humanReadableName.isEmpty())
         {
@@ -499,7 +499,7 @@ void CSettingsManager::GetMatchingLayoutNames(TToolNamesMap& foundTools, XmlNode
         return;
     }
 
-    TToolNamesMap* toolNames = NULL;
+    TToolNamesMap* toolNames = nullptr;
 
     if (!foundTools.empty())
     {
@@ -593,11 +593,11 @@ bool CSettingsManager::NeedSettingsNode(const QString& path)
 {
     if ((path != EDITOR_LAYOUT_ROOT_NODE) && (path != TOOLBOX_NODE) && (path != TOOLBOXMACROS_NODE))
     {
-        return TRUE;
+        return true;
     }
     else
     {
-        return FALSE;
+        return false;
     }
 }
 
@@ -605,13 +605,13 @@ void CSettingsManager::SerializeCVars(XmlNodeRef& node, bool bLoad)
 {
     int nNumberOfVariables(0);
     int nCurrentVariable(0);
-    IConsole* piConsole(NULL);
-    ICVar* piVariable(NULL);
+    IConsole* piConsole(nullptr);
+    ICVar* piVariable(nullptr);
     AZStd::vector<AZStd::string_view>  cszVariableNames;
 
-    char* szKey(NULL);
-    char* szValue(NULL);
-    ICVar* piCVar(NULL);
+    char* szKey(nullptr);
+    char* szValue(nullptr);
+    ICVar* piCVar(nullptr);
 
     piConsole = gEnv->pConsole;
 
@@ -622,7 +622,7 @@ void CSettingsManager::SerializeCVars(XmlNodeRef& node, bool bLoad)
 
     if (bLoad)
     {
-        XmlNodeRef readNode = NULL;
+        XmlNodeRef readNode = nullptr;
         XmlNodeRef inputCVarsNode = node->findChild(CVARS_NODE);
 
         if (!inputCVarsNode)
@@ -649,7 +649,7 @@ void CSettingsManager::SerializeCVars(XmlNodeRef& node, bool bLoad)
     }
     else
     {
-        XmlNodeRef newCVarNode = NULL;
+        XmlNodeRef newCVarNode = nullptr;
         XmlNodeRef oldCVarsNode = node->findChild(CVARS_NODE);
 
         if (oldCVarsNode)
@@ -660,9 +660,9 @@ void CSettingsManager::SerializeCVars(XmlNodeRef& node, bool bLoad)
         XmlNodeRef cvarsNode = XmlHelpers::CreateXmlNode(CVARS_NODE);
 
         nNumberOfVariables = piConsole->GetNumVisibleVars();
-        cszVariableNames.resize(nNumberOfVariables, NULL);
+        cszVariableNames.resize(nNumberOfVariables);
 
-        if (piConsole->GetSortedVars(cszVariableNames, NULL) != nNumberOfVariables)
+        if (piConsole->GetSortedVars(cszVariableNames) != nNumberOfVariables)
         {
             assert(false);
             return;
@@ -711,8 +711,8 @@ void CSettingsManager::ReadValueStr(XmlNodeRef& sourceNode, const QString& path,
     // Spaces in node names not allowed
     readAttr.replace(" ", "");
 
-    XmlNodeRef root = NULL;
-    XmlNodeRef tmpNode = NULL;
+    XmlNodeRef root = nullptr;
+    XmlNodeRef tmpNode = nullptr;
 
     if (NeedSettingsNode(path))
     {
@@ -809,7 +809,7 @@ bool CSettingsManager::IsEventSafe(const SEventLog& event)
 
     if (!root)
     {
-        return TRUE;
+        return true;
     }
 
     QString eventName = event.m_eventName;
@@ -823,7 +823,7 @@ bool CSettingsManager::IsEventSafe(const SEventLog& event)
     // Log entry not found, so it is safe to start
     if (!resNode)
     {
-        return TRUE;
+        return true;
     }
 
     XmlNodeRef callerVersion = resNode->findChild(EVENT_LOG_CALLER_VERSION);
@@ -841,15 +841,15 @@ bool CSettingsManager::IsEventSafe(const SEventLog& event)
         {
             if (callerVersionStr != GetToolVersion(eventName))
             {
-                return TRUE;
+                return true;
             }
         }
 
         // The same version of tool/level found
-        return FALSE;
+        return false;
     }
 
-    return TRUE;
+    return true;
 }
 
 //////////////////////////////////////////////////////////////////////////
@@ -947,15 +947,15 @@ XmlNodeRef CSettingsManager::LoadLogEventSetting(const QString& path, const QStr
 
     if (!root)
     {
-        return 0;
+        return nullptr;
     }
 
-    XmlNodeRef tmpNode = NULL;
+    XmlNodeRef tmpNode = nullptr;
     tmpNode = root;
 
     if (!tmpNode)
     {
-        return 0;
+        return nullptr;
     }
 
     for (int i = 0; i < strNodes.size(); ++i)
@@ -966,7 +966,7 @@ XmlNodeRef CSettingsManager::LoadLogEventSetting(const QString& path, const QStr
         }
         else
         {
-            return 0;
+            return nullptr;
         }
     }
 
@@ -975,7 +975,7 @@ XmlNodeRef CSettingsManager::LoadLogEventSetting(const QString& path, const QStr
         return tmpNode;
     }
 
-    return 0;
+    return nullptr;
 }
 
 QString CSettingsManager::GenerateContentHash(XmlNodeRef& node, QString sourceName)

+ 1 - 1
Code/Editor/SettingsManagerDialog.cpp

@@ -84,7 +84,7 @@ void CSettingsManagerDialog::OnReadBtnClick()
         ui->m_layoutListBox->clear();
 
         TToolNamesMap toolNames;
-        XmlNodeRef dummyNode = NULL;
+        XmlNodeRef dummyNode = nullptr;
 
         GetIEditor()->GetSettingsManager()->GetMatchingLayoutNames(toolNames, dummyNode, m_importFileStr);
 

+ 4 - 4
Code/Editor/StartupLogoDialog.cpp

@@ -27,14 +27,14 @@ AZ_POP_DISABLE_DLL_EXPORT_MEMBER_WARNING
 /////////////////////////////////////////////////////////////////////////////
 // CStartupLogoDialog dialog
 
-CStartupLogoDialog* CStartupLogoDialog::s_pLogoWindow = 0;
+CStartupLogoDialog* CStartupLogoDialog::s_pLogoWindow = nullptr;
 
-CStartupLogoDialog::CStartupLogoDialog(QString versionText, QString richTextCopyrightNotice, QWidget* pParent /*=NULL*/)
+CStartupLogoDialog::CStartupLogoDialog(QString versionText, QString richTextCopyrightNotice, QWidget* pParent /*=nullptr*/)
     : QWidget(pParent, Qt::Dialog | Qt::FramelessWindowHint)
     , m_ui(new Ui::StartupLogoDialog)
 {
     m_ui->setupUi(this);
- 
+
     s_pLogoWindow = this;
 
     m_backgroundImage = QPixmap(QStringLiteral(":/StartupLogoDialog/splashscreen_background_developer_preview.jpg"));
@@ -61,7 +61,7 @@ CStartupLogoDialog::CStartupLogoDialog(QString versionText, QString richTextCopy
 
 CStartupLogoDialog::~CStartupLogoDialog()
 {
-    s_pLogoWindow = 0;
+    s_pLogoWindow = nullptr;
 }
 
 void CStartupLogoDialog::SetText(const char* text)

+ 1 - 1
Code/Editor/StringDlg.h

@@ -25,7 +25,7 @@ typedef bool (StringDlgPredicate)(QString input);
 class StringDlg : public QInputDialog
 {
 public:
-    StringDlg(const QString &title, QWidget* pParent = NULL, bool bFileNameLimitation = false);
+    StringDlg(const QString &title, QWidget* pParent = nullptr, bool bFileNameLimitation = false);
 
     void SetCheckCallback(const std::function<StringDlgPredicate>& Check) {
         m_Check = Check;

+ 7 - 7
Code/Editor/ToolBox.cpp

@@ -186,7 +186,7 @@ const CToolBoxMacro* CToolBoxManager::GetMacro(int iIndex, bool bToolbox) const
         assert(0 <= iIndex && iIndex < m_shelveMacros.size());
         return m_shelveMacros[iIndex];
     }
-    return NULL;
+    return nullptr;
 }
 
 //////////////////////////////////////////////////////////////////////////
@@ -202,7 +202,7 @@ CToolBoxMacro* CToolBoxManager::GetMacro(int iIndex, bool bToolbox)
         assert(0 <= iIndex && iIndex < m_shelveMacros.size());
         return m_shelveMacros[iIndex];
     }
-    return NULL;
+    return nullptr;
 }
 
 //////////////////////////////////////////////////////////////////////////
@@ -240,14 +240,14 @@ CToolBoxMacro* CToolBoxManager::NewMacro(const QString& title, bool bToolbox, in
         const int macroCount = m_macros.size();
         if (macroCount > ID_TOOL_LAST - ID_TOOL_FIRST + 1)
         {
-            return NULL;
+            return nullptr;
         }
 
         for (size_t i = 0; i < macroCount; ++i)
         {
             if (QString::compare(m_macros[i]->GetTitle(), title, Qt::CaseInsensitive) == 0)
             {
-                return NULL;
+                return nullptr;
             }
         }
 
@@ -264,7 +264,7 @@ CToolBoxMacro* CToolBoxManager::NewMacro(const QString& title, bool bToolbox, in
         const int shelveMacroCount = m_shelveMacros.size();
         if (shelveMacroCount > ID_TOOL_SHELVE_LAST - ID_TOOL_SHELVE_FIRST + 1)
         {
-            return NULL;
+            return nullptr;
         }
 
         CToolBoxMacro* pNewTool = new CToolBoxMacro(title);
@@ -275,7 +275,7 @@ CToolBoxMacro* CToolBoxManager::NewMacro(const QString& title, bool bToolbox, in
         m_shelveMacros.push_back(pNewTool);
         return pNewTool;
     }
-    return NULL;
+    return nullptr;
 }
 
 //////////////////////////////////////////////////////////////////////////
@@ -333,7 +333,7 @@ void CToolBoxManager::Load([[maybe_unused]] ActionManager* actionManager)
 void CToolBoxManager::Load(QString xmlpath, AmazonToolbar* pToolbar, bool bToolbox, ActionManager* actionManager)
 {
     XmlNodeRef toolBoxNode = XmlHelpers::LoadXmlFromFile(xmlpath.toUtf8().data());
-    if (toolBoxNode == NULL)
+    if (toolBoxNode == nullptr)
     {
         return;
     }

+ 1 - 1
Code/Editor/ToolBox.h

@@ -137,7 +137,7 @@ public:
     CToolBoxMacro* GetMacro(int iIndex, bool bToolbox);
     //! Get the index of a macro from its title.
     int GetMacroIndex(const QString& title, bool bToolbox) const;
-    //! Creates a new macro in the manager. If the title is duplicate, this returns NULL.
+    //! Creates a new macro in the manager. If the title is duplicate, this returns nullptr.
     CToolBoxMacro* NewMacro(const QString& title, bool bToolbox, int* newIdx);
     //! Try to change the title of a macro. If the title is duplicate, the change is aborted and this returns false.
     bool SetMacroTitle(int index, const QString& title, bool bToolbox);

+ 3 - 3
Code/Editor/ToolsConfigPage.cpp

@@ -109,7 +109,7 @@ private:
     QStringList m_iconFiles;
 };
 
-CIconListDialog::CIconListDialog(QWidget* pParent /* = NULL */)
+CIconListDialog::CIconListDialog(QWidget* pParent /* = nullptr */)
     : QDialog(pParent)
     , m_ui(new Ui::IconListDialog)
 {
@@ -498,7 +498,7 @@ CToolsConfigPage::CToolsConfigPage(QWidget* parent)
             QKeySequence shortcut(value);
             m_ui->m_macroShortcutKey->setKeySequence(shortcut);
         }
-        
+
         if (m_ui->m_macroShortcutKey->keySequence().count() >= 1)
         {
             m_ui->m_assignShortcut->setEnabled(true);
@@ -703,7 +703,7 @@ void CToolsConfigPage::OnAssignMacroShortcut()
 {
     auto pShortcutMgr = MainWindow::instance()->GetShortcutManager();
 
-    if (pShortcutMgr  == NULL)
+    if (pShortcutMgr  == nullptr)
     {
         return;
     }

+ 5 - 5
Code/Editor/TrackView/2DBezierKeyUIControls.cpp

@@ -26,19 +26,19 @@ public:
     CSmartVariableArray mv_table;
     CSmartVariable<float> mv_value;
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         AddVariable(mv_table, "Key Properties");
         AddVariable(mv_table, mv_value, "Value");
     }
-    bool SupportTrackType([[maybe_unused]] const CAnimParamType& paramType, EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const
+    bool SupportTrackType([[maybe_unused]] const CAnimParamType& paramType, EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const override
     {
         return trackType == eAnimCurveType_BezierFloat;
     }
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 0; }
+    unsigned int GetPriority() const override { return 0; }
 
     static const GUID& GetClassID()
     {

+ 5 - 5
Code/Editor/TrackView/AssetBlendKeyUIControls.cpp

@@ -41,7 +41,7 @@ public:
     CSmartVariable<float> mv_blendInTime;
     CSmartVariable<float> mv_blendOutTime;
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         // Init to an invalid id
         AZ::Data::AssetId assetId;
@@ -62,15 +62,15 @@ public:
         mv_timeScale->SetLimits(0.001f, 100.f);
     }
 
-    bool SupportTrackType([[maybe_unused]] const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, AnimValueType valueType) const
+    bool SupportTrackType([[maybe_unused]] const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, AnimValueType valueType) const override
     {
         return valueType == AnimValueType::AssetBlend;
     }
 
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {

+ 5 - 5
Code/Editor/TrackView/CaptureKeyUIControls.cpp

@@ -27,7 +27,7 @@ public:
     CSmartVariable<QString> mv_folder;
     CSmartVariable<bool> mv_once;
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         mv_duration.GetVar()->SetLimits(0, 100000.0f);
         mv_timeStep.GetVar()->SetLimits(0.001f, 1.0f);
@@ -39,14 +39,14 @@ public:
         AddVariable(mv_table, mv_folder, "Output Folder");
         AddVariable(mv_table, mv_once, "Just one frame?");
     }
-    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const
+    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const override
     {
         return paramType == AnimParamType::Capture;
     }
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {

+ 5 - 5
Code/Editor/TrackView/CharacterKeyUIControls.cpp

@@ -33,7 +33,7 @@ public:
     CSmartVariable<float> mv_endTime;
     CSmartVariable<float> mv_timeScale;
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         AddVariable(mv_table, "Key Properties");
         AddVariable(mv_table, mv_animation, "Animation", IVariable::DT_ANIMATION);
@@ -45,14 +45,14 @@ public:
         AddVariable(mv_table, mv_timeScale, "Time Scale");
         mv_timeScale->SetLimits(0.001f, 100.f);
     }
-    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, AnimValueType valueType) const
+    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, AnimValueType valueType) const override
     {
         return paramType == AnimParamType::Animation || valueType == AnimValueType::CharacterAnim;
     }
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {

+ 7 - 7
Code/Editor/TrackView/CommentKeyUIControls.cpp

@@ -30,7 +30,7 @@ public:
     CSmartVariableEnum<QString> mv_font;
 
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         AddVariable(mv_table, "Key Properties");
         AddVariable(mv_table, mv_comment, "Comment");
@@ -41,13 +41,13 @@ public:
 
         AddVariable(mv_table, mv_color, "Color", IVariable::DT_COLOR);
 
-        mv_align->SetEnumList(NULL);
+        mv_align->SetEnumList(nullptr);
         mv_align->AddEnumItem("Left", ICommentKey::eTA_Left);
         mv_align->AddEnumItem("Center", ICommentKey::eTA_Center);
         mv_align->AddEnumItem("Right", ICommentKey::eTA_Right);
         AddVariable(mv_table, mv_align, "Align");
 
-        mv_font->SetEnumList(NULL);
+        mv_font->SetEnumList(nullptr);
         IFileUtil::FileArray fa;
         CFileUtil::ScanDirectory((Path::GetEditingGameDataFolder() + "/Fonts/").c_str(), "*.xml", fa, true);
         for (size_t i = 0; i < fa.size(); ++i)
@@ -58,14 +58,14 @@ public:
         }
         AddVariable(mv_table, mv_font, "Font");
     }
-    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const
+    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const override
     {
         return paramType == AnimParamType::CommentText;
     }
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {

+ 1 - 1
Code/Editor/TrackView/CommentNodeAnimator.cpp

@@ -26,7 +26,7 @@ CCommentNodeAnimator::CCommentNodeAnimator(CTrackViewAnimNode* pCommentNode)
 
 CCommentNodeAnimator::~CCommentNodeAnimator()
 {
-    m_pCommentNode = 0;
+    m_pCommentNode = nullptr;
 }
 
 void CCommentNodeAnimator::Animate(CTrackViewAnimNode* pNode, const SAnimContext& ac)

+ 5 - 5
Code/Editor/TrackView/ConsoleKeyUIControls.cpp

@@ -24,19 +24,19 @@ public:
     CSmartVariableArray mv_table;
     CSmartVariable<QString> mv_command;
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         AddVariable(mv_table, "Key Properties");
         AddVariable(mv_table, mv_command, "Command");
     }
-    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const
+    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const override
     {
         return paramType == AnimParamType::Console;
     }
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {

+ 7 - 7
Code/Editor/TrackView/EventKeyUIControls.cpp

@@ -26,7 +26,7 @@ public:
     CSmartVariable<QString> mv_value;
     CSmartVariable<bool> mv_notrigger_in_scrubbing;
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         AddVariable(mv_table, "Key Properties");
         AddVariable(mv_table, mv_event, "Event");
@@ -35,14 +35,14 @@ public:
         AddVariable(mv_deprecated, "Deprecated");
         AddVariable(mv_deprecated, mv_animation, "Animation");
     }
-    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const
+    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const override
     {
         return paramType == AnimParamType::Event;
     }
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {
@@ -73,8 +73,8 @@ bool CEventKeyUIControls::OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys
         CAnimParamType paramType = keyHandle.GetTrack()->GetParameterType();
         if (paramType == AnimParamType::Event)
         {
-            mv_event.SetEnumList(NULL);
-            mv_animation.SetEnumList(NULL);
+            mv_event.SetEnumList(nullptr);
+            mv_animation.SetEnumList(nullptr);
 
             // Add <None> for empty, unset event
             mv_event->AddEnumItem(QObject::tr("<None>"), "");

+ 5 - 5
Code/Editor/TrackView/GotoKeyUIControls.cpp

@@ -24,12 +24,12 @@ public:
     CSmartVariableArray mv_table;
     CSmartVariable<float> mv_command;
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         AddVariable(mv_table, "Key Properties");
         AddVariable(mv_table, mv_command, "Goto Time");
     }
-    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const
+    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const override
     {
         if (paramType == AnimParamType::Goto)
         {
@@ -40,10 +40,10 @@ public:
             return false;
         }
     }
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {

+ 7 - 7
Code/Editor/TrackView/ScreenFaderKeyUIControls.cpp

@@ -33,23 +33,23 @@ class CScreenFaderKeyUIControls
 public:
     //-----------------------------------------------------------------------------
     //!
-    virtual bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const
+    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const override
     {
         return paramType == AnimParamType::ScreenFader;
     }
 
     //-----------------------------------------------------------------------------
     //!
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         AddVariable(mv_table, "Key Properties");
 
-        mv_fadeType->SetEnumList(NULL);
+        mv_fadeType->SetEnumList(nullptr);
         mv_fadeType->AddEnumItem("FadeIn", IScreenFaderKey::eFT_FadeIn);
         mv_fadeType->AddEnumItem("FadeOut", IScreenFaderKey::eFT_FadeOut);
         AddVariable(mv_table, mv_fadeType, "Type");
 
-        mv_fadechangeType->SetEnumList(NULL);
+        mv_fadechangeType->SetEnumList(nullptr);
         mv_fadechangeType->AddEnumItem("Linear", IScreenFaderKey::eFCT_Linear);
         mv_fadechangeType->AddEnumItem("Square", IScreenFaderKey::eFCT_Square);
         mv_fadechangeType->AddEnumItem("Cubic Square", IScreenFaderKey::eFCT_CubicSquare);
@@ -67,13 +67,13 @@ public:
 
     //-----------------------------------------------------------------------------
     //!
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& keys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& keys) override;
 
     //-----------------------------------------------------------------------------
     //!
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& keys);
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& keys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {

+ 9 - 9
Code/Editor/TrackView/SelectKeyUIControls.cpp

@@ -22,7 +22,7 @@ class CSelectKeyUIControls
     , protected AZ::EntitySystemBus::Handler
 {
 public:
-    CSelectKeyUIControls() {}
+    CSelectKeyUIControls() = default;
 
     ~CSelectKeyUIControls() override;
 
@@ -30,7 +30,7 @@ public:
     CSmartVariableEnum<QString> mv_camera;
     CSmartVariable<float> mv_BlendTime;
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         AddVariable(mv_table, "Key Properties");
         AddVariable(mv_table, mv_camera, "Camera");
@@ -39,14 +39,14 @@ public:
         Camera::CameraNotificationBus::Handler::BusConnect();
         AZ::EntitySystemBus::Handler::BusConnect();
     }
-    bool SupportTrackType([[maybe_unused]] const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, AnimValueType valueType) const
+    bool SupportTrackType([[maybe_unused]] const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, AnimValueType valueType) const override
     {
         return valueType == AnimValueType::Select;
     }
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {
@@ -98,7 +98,7 @@ bool CSelectKeyUIControls::OnKeySelectionChange(CTrackViewKeyBundle& selectedKey
             ResetCameraEntries();
 
             // Get All cameras.
-            mv_camera.SetEnumList(NULL);
+            mv_camera.SetEnumList(nullptr);
 
             mv_camera->AddEnumItem(QObject::tr("<None>"), QString::number(static_cast<AZ::u64>(AZ::EntityId::InvalidEntityId)));
 
@@ -217,7 +217,7 @@ void CSelectKeyUIControls::OnCameraRemoved(const AZ::EntityId & cameraId)
     // We can't iterate or remove an item from the enum list, and Camera::CameraRequests::GetCameras
     // still includes the deleted camera at this point. Reset the list anyway and filter out the
     // deleted camera.
-    mv_camera->SetEnumList(NULL);
+    mv_camera->SetEnumList(nullptr);
     mv_camera->AddEnumItem(QObject::tr("<None>"), QString::number(static_cast<AZ::u64>(AZ::EntityId::InvalidEntityId)));
 
     AZ::EBusAggregateResults<AZ::EntityId> cameraComponentEntities;
@@ -256,7 +256,7 @@ void CSelectKeyUIControls::OnEntityNameChanged(const AZ::EntityId & entityId, [[
 
 void CSelectKeyUIControls::ResetCameraEntries()
 {
-    mv_camera.SetEnumList(NULL);
+    mv_camera.SetEnumList(nullptr);
     mv_camera->AddEnumItem(QObject::tr("<None>"), QString::number(static_cast<AZ::u64>(AZ::EntityId::InvalidEntityId)));
 
     // Find all Component Entity Cameras

+ 7 - 8
Code/Editor/TrackView/SequenceBatchRenderDialog.cpp

@@ -117,8 +117,7 @@ CSequenceBatchRenderDialog::CSequenceBatchRenderDialog(float fps, QWidget* pPare
 }
 
 CSequenceBatchRenderDialog::~CSequenceBatchRenderDialog()
-{
-}
+= default;
 
 void CSequenceBatchRenderDialog::reject()
 {
@@ -519,7 +518,7 @@ void CSequenceBatchRenderDialog::OnGo()
         InitializeContext();
 
         // Trigger the first item.
-        OnMovieEvent(IMovieListener::eMovieEvent_Stopped, NULL);
+        OnMovieEvent(IMovieListener::eMovieEvent_Stopped, nullptr);
     }
 }
 
@@ -728,7 +727,7 @@ bool CSequenceBatchRenderDialog::GetResolutionFromCustomResText(const char* cust
 bool CSequenceBatchRenderDialog::LoadOutputOptions(const QString& pathname)
 {
     XmlNodeRef batchRenderOptionsNode = XmlHelpers::LoadXmlFromFile(pathname.toStdString().c_str());
-    if (batchRenderOptionsNode == NULL)
+    if (batchRenderOptionsNode == nullptr)
     {
         return true;
     }
@@ -1391,7 +1390,7 @@ void CSequenceBatchRenderDialog::OnLoadBatch()
             Path::GetUserSandboxFolder(), loadPath))
     {
         XmlNodeRef batchRenderListNode = XmlHelpers::LoadXmlFromFile(loadPath.toStdString().c_str());
-        if (batchRenderListNode == NULL)
+        if (batchRenderListNode == nullptr)
         {
             return;
         }
@@ -1414,7 +1413,7 @@ void CSequenceBatchRenderDialog::OnLoadBatch()
             // sequence
             const QString seqName = itemNode->getAttr("sequence");
             item.pSequence = GetIEditor()->GetMovieSystem()->FindLegacySequenceByName(seqName.toUtf8().data());
-            if (item.pSequence == NULL)
+            if (item.pSequence == nullptr)
             {
                 QMessageBox::warning(this, tr("Sequence not found"), tr("A sequence of '%1' not found! This'll be skipped.").arg(seqName));
                 continue;
@@ -1431,7 +1430,7 @@ void CSequenceBatchRenderDialog::OnLoadBatch()
                     break;
                 }
             }
-            if (item.pDirectorNode == NULL)
+            if (item.pDirectorNode == nullptr)
             {
                 QMessageBox::warning(this, tr("Director node not found"), tr("A director node of '%1' not found in the sequence of '%2'! This'll be skipped.").arg(directorName).arg(seqName));
                 continue;
@@ -1544,7 +1543,7 @@ bool CSequenceBatchRenderDialog::SetUpNewRenderItem(SRenderItem& item)
             break;
         }
     }
-    if (item.pDirectorNode == NULL)
+    if (item.pDirectorNode == nullptr)
     {
         return false;
     }

+ 3 - 3
Code/Editor/TrackView/SequenceBatchRenderDialog.h

@@ -81,8 +81,8 @@ protected:
         bool disableDebugInfo;
         bool bCreateVideo;
         SRenderItem()
-            : pSequence(NULL)
-            , pDirectorNode(NULL)
+            : pSequence(nullptr)
+            , pDirectorNode(nullptr)
             , disableDebugInfo(false)
             , bCreateVideo(false) {}
         bool operator==(const SRenderItem& item)
@@ -155,7 +155,7 @@ protected:
             , expectedTotalTime(0)
             , spentTime(0)
             , flagBU(0)
-            , pActiveDirectorBU(NULL)
+            , pActiveDirectorBU(nullptr)
             , cvarCustomResWidthBU(0)
             , cvarCustomResHeightBU(0)
             , cvarDisplayInfoBU(0)

+ 7 - 7
Code/Editor/TrackView/SequenceKeyUIControls.cpp

@@ -27,7 +27,7 @@ public:
     CSmartVariable<float> mv_startTime;
     CSmartVariable<float> mv_endTime;
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         AddVariable(mv_table, "Key Properties");
         AddVariable(mv_table, mv_sequence, "Sequence");
@@ -35,14 +35,14 @@ public:
         AddVariable(mv_table, mv_startTime, "Start Time");
         AddVariable(mv_table, mv_endTime, "End Time");
     }
-    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const
+    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const override
     {
         return paramType == AnimParamType::Sequence;
     }
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {
@@ -78,7 +78,7 @@ bool CSequenceKeyUIControls::OnKeySelectionChange(CTrackViewKeyBundle& selectedK
 
             /////////////////////////////////////////////////////////////////////////////////
             // fill sequence comboBox with available sequences
-            mv_sequence.SetEnumList(NULL);
+            mv_sequence.SetEnumList(nullptr);
 
             // Insert '<None>' empty enum
             mv_sequence->AddEnumItem(QObject::tr("<None>"), CTrackViewDialog::GetEntityIdAsString(AZ::EntityId(AZ::EntityId::InvalidEntityId)));
@@ -193,7 +193,7 @@ void CSequenceKeyUIControls::OnUIChange(IVariable* pVar, CTrackViewKeyBundle& se
 
             IMovieSystem* pMovieSystem = GetIEditor()->GetSystem()->GetIMovieSystem();
 
-            if (pMovieSystem != NULL)
+            if (pMovieSystem != nullptr)
             {
                 pMovieSystem->SetStartEndTime(pSequence, sequenceKey.fStartTime, sequenceKey.fEndTime);
             }

+ 5 - 5
Code/Editor/TrackView/SoundKeyUIControls.cpp

@@ -29,7 +29,7 @@ public:
     CSmartVariable<float> mv_duration;
     CSmartVariable<Vec3> mv_customColor;
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         AddVariable(mv_table, "Key Properties");
         AddVariable(mv_table, mv_startTrigger, "StartTrigger", IVariable::DT_AUDIO_TRIGGER);
@@ -38,14 +38,14 @@ public:
         AddVariable(mv_options, "Options");
         AddVariable(mv_options, mv_customColor, "Custom Color", IVariable::DT_COLOR);
     }
-    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const
+    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const override
     {
         return paramType == AnimParamType::Sound;
     }
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {

+ 1 - 1
Code/Editor/TrackView/TVCustomizeTrackColorsDlg.cpp

@@ -344,7 +344,7 @@ void CTVCustomizeTrackColorsDlg::Export(const QString& fullPath) const
 bool CTVCustomizeTrackColorsDlg::Import(const QString& fullPath)
 {
     XmlNodeRef customTrackColorsNode = XmlHelpers::LoadXmlFromFile(fullPath.toStdString().c_str());
-    if (customTrackColorsNode == NULL)
+    if (customTrackColorsNode == nullptr)
     {
         return false;
     }

+ 1 - 1
Code/Editor/TrackView/TVEventsDialog.cpp

@@ -211,7 +211,7 @@ public:
     int GetNumberOfUsageAndFirstTimeUsed(const char* eventName, float& timeFirstUsed) const;
 };
 
-CTVEventsDialog::CTVEventsDialog(QWidget* pParent /*=NULL*/)
+CTVEventsDialog::CTVEventsDialog(QWidget* pParent /*=nullptr*/)
     : QDialog(pParent)
     , m_ui(new Ui::TVEventsDialog)
 {

+ 3 - 3
Code/Editor/TrackView/TVSequenceProps.cpp

@@ -51,7 +51,7 @@ CTVSequenceProps::~CTVSequenceProps()
 }
 
 // CTVSequenceProps message handlers
-BOOL CTVSequenceProps::OnInitDialog()
+bool CTVSequenceProps::OnInitDialog()
 {
     ui->NAME->setText(m_pSequence->GetName());
     int seqFlags = m_pSequence->GetFlags();
@@ -97,7 +97,7 @@ BOOL CTVSequenceProps::OnInitDialog()
         ui->ORT_ONCE->setChecked(true);
     }
 
-    return TRUE;  // return TRUE unless you set the focus to a control
+    return true;  // return true unless you set the focus to a control
     // EXCEPTION: OCX Property Pages should return FALSE
 }
 
@@ -259,7 +259,7 @@ void CTVSequenceProps::OnOK()
 
 void CTVSequenceProps::ToggleCutsceneOptions(bool bActivated)
 {
-    if (bActivated == FALSE)
+    if (bActivated == false)
     {
         ui->NOABORT->setChecked(false);
         ui->DISABLEPLAYER->setChecked(false);

+ 2 - 2
Code/Editor/TrackView/TVSequenceProps.h

@@ -28,7 +28,7 @@ class CTVSequenceProps
 {
     Q_OBJECT
 public:
-    CTVSequenceProps(CTrackViewSequence* pSequence, float fps, QWidget* pParent = NULL);    // standard constructor
+    CTVSequenceProps(CTrackViewSequence* pSequence, float fps, QWidget* pParent = nullptr);    // standard constructor
     ~CTVSequenceProps();
 
 private:
@@ -39,7 +39,7 @@ private:
     };
     CTrackViewSequence* m_pSequence;
 
-    virtual BOOL OnInitDialog();
+    virtual bool OnInitDialog();
     virtual void OnOK();
 
     void MoveScaleKeys();

+ 5 - 5
Code/Editor/TrackView/TimeRangeKeyUIControls.cpp

@@ -27,7 +27,7 @@ public:
     CSmartVariable<float> mv_timeScale;
     CSmartVariable<bool> mv_bLoop;
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         AddVariable(mv_table, "Key Properties");
         AddVariable(mv_table, mv_startTime, "Start Time");
@@ -36,14 +36,14 @@ public:
         AddVariable(mv_table, mv_bLoop, "Loop");
         mv_timeScale->SetLimits(0.001f, 100.f);
     }
-    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const
+    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const override
     {
         return paramType == AnimParamType::TimeRanges;
     }
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {

+ 6 - 6
Code/Editor/TrackView/TrackEventKeyUIControls.cpp

@@ -26,21 +26,21 @@ public:
     CSmartVariableEnum<QString> mv_event;
     CSmartVariable<QString> mv_value;
 
-    virtual void OnCreateVars()
+    void OnCreateVars() override
     {
         AddVariable(mv_table, "Key Properties");
         AddVariable(mv_table, mv_event, "Track Event");
         mv_event->SetFlags(mv_event->GetFlags() | IVariable::UI_UNSORTED);
         AddVariable(mv_table, mv_value, "Value");
     }
-    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const
+    bool SupportTrackType(const CAnimParamType& paramType, [[maybe_unused]] EAnimCurveType trackType, [[maybe_unused]] AnimValueType valueType) const override
     {
         return paramType == AnimParamType::TrackEvent;
     }
-    virtual bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys);
-    virtual void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys);
+    bool OnKeySelectionChange(CTrackViewKeyBundle& selectedKeys) override;
+    void OnUIChange(IVariable* pVar, CTrackViewKeyBundle& selectedKeys) override;
 
-    virtual unsigned int GetPriority() const { return 1; }
+    unsigned int GetPriority() const override { return 1; }
 
     static const GUID& GetClassID()
     {
@@ -182,7 +182,7 @@ void CTrackEventKeyUIControls::BuildEventDropDown(QString& curEvent, const QStri
         {
             bool curEventExists = false;
             bool addedEventExists = false;
-            mv_event.SetEnumList(NULL);
+            mv_event.SetEnumList(nullptr);
             const int eventCount = sequence->GetTrackEventsCount();
 
             // Need to check if event exists before adding all events

+ 2 - 2
Code/Editor/TrackView/TrackViewAnimNode.cpp

@@ -370,7 +370,7 @@ bool CTrackViewAnimNode::IsBoundToEditorObjects() const
         else
         {
             // check if bound to legacy entity
-            return (m_animNode->GetNodeOwner() != NULL);
+            return (m_animNode->GetNodeOwner() != nullptr);
         }
     }
 
@@ -1468,7 +1468,7 @@ bool CTrackViewAnimNode::PasteNodesFromClipboard(QWidget* context)
     }
 
     XmlNodeRef animNodesRoot = clipboard.Get();
-    if (animNodesRoot == NULL || strcmp(animNodesRoot->getTag(), "CopyAnimNodesRoot") != 0)
+    if (animNodesRoot == nullptr || strcmp(animNodesRoot->getTag(), "CopyAnimNodesRoot") != 0)
     {
         return false;
     }

+ 9 - 9
Code/Editor/TrackView/TrackViewDialog.cpp

@@ -130,10 +130,10 @@ const GUID& CTrackViewDialog::GetClassID()
 
 
 //////////////////////////////////////////////////////////////////////////
-CTrackViewDialog* CTrackViewDialog::s_pTrackViewDialog = NULL;
+CTrackViewDialog* CTrackViewDialog::s_pTrackViewDialog = nullptr;
 
 //////////////////////////////////////////////////////////////////////////
-CTrackViewDialog::CTrackViewDialog(QWidget* pParent /*=NULL*/)
+CTrackViewDialog::CTrackViewDialog(QWidget* pParent /*=nullptr*/)
     : QMainWindow(pParent)
 {
     s_pTrackViewDialog = this;
@@ -152,7 +152,7 @@ CTrackViewDialog::CTrackViewDialog(QWidget* pParent /*=NULL*/)
     m_lazyInitDone = false;
     m_bEditLock = false;
 
-    m_pNodeForTracksToolBar = NULL;
+    m_pNodeForTracksToolBar = nullptr;
 
     m_currentToolBarParamTypeId = 0;
 
@@ -181,7 +181,7 @@ CTrackViewDialog::~CTrackViewDialog()
         m_findDlg->deleteLater();
         m_findDlg = nullptr;
     }
-    s_pTrackViewDialog = 0;
+    s_pTrackViewDialog = nullptr;
 
     const CTrackViewSequenceManager* pSequenceManager = GetIEditor()->GetSequenceManager();
     CTrackViewSequence* sequence = pSequenceManager->GetSequenceByEntityId(m_currentSequenceEntityId);
@@ -210,7 +210,7 @@ void CTrackViewDialog::OnAddEntityNodeMenu()
 }
 
 //////////////////////////////////////////////////////////////////////////
-BOOL CTrackViewDialog::OnInitDialog()
+bool CTrackViewDialog::OnInitDialog()
 {
     InitToolbar();
     InitMenu();
@@ -270,7 +270,7 @@ BOOL CTrackViewDialog::OnInitDialog()
     QString cursorPosText = QString("0.000(%1fps)").arg(FloatToIntRet(m_wndCurveEditor->GetFPS()));
     m_cursorPos->setText(cursorPosText);
 
-    return TRUE;  // return TRUE unless you set the focus to a control
+    return true;  // return true unless you set the focus to a control
     // EXCEPTION: OCX Property Pages should return FALSE
 }
 
@@ -621,7 +621,7 @@ void CTrackViewDialog::InitToolbar()
     {
         qaction2->setCheckable(true);
     }
-    
+
     m_actions[ID_TV_SNAP_NONE]->setChecked(true);
 
     m_tracksToolBar = addToolBar("Tracks Toolbar");
@@ -883,7 +883,7 @@ void CTrackViewDialog::Update()
     // The active camera node means two conditions:
     // 1. Sequence camera is currently active.
     // 2. The camera which owns this node has been set as the current camera by the director node.
-    bool bSequenceCamInUse = gEnv->pMovieSystem->GetCallback() == NULL ||
+    bool bSequenceCamInUse = gEnv->pMovieSystem->GetCallback() == nullptr ||
         gEnv->pMovieSystem->GetCallback()->IsSequenceCamUsed();
     AZ::EntityId camId = gEnv->pMovieSystem->GetCameraParams().cameraEntityId;
     if (camId.IsValid() && bSequenceCamInUse)
@@ -2049,7 +2049,7 @@ void CTrackViewDialog::ClearTracksToolBar()
     m_tracksToolBar->clear();
     m_tracksToolBar->addWidget(new QLabel("Tracks:"));
 
-    m_pNodeForTracksToolBar = NULL;
+    m_pNodeForTracksToolBar = nullptr;
     m_toolBarParamTypes.clear();
     m_currentToolBarParamTypeId = 0;
 }

+ 2 - 2
Code/Editor/TrackView/TrackViewDialog.h

@@ -52,7 +52,7 @@ class CTrackViewDialog
 public:
     friend CMovieCallback;
 
-    CTrackViewDialog(QWidget* pParent = NULL);
+    CTrackViewDialog(QWidget* pParent = nullptr);
     ~CTrackViewDialog();
 
     static void RegisterViewClass();
@@ -183,7 +183,7 @@ private:
     void OnAddEntityNodeMenu();
 
     void OnEditorNotifyEvent(EEditorNotifyEvent event) override;
-    BOOL OnInitDialog();
+    bool OnInitDialog();
 
     void SaveLayouts();
     void SaveMiscSettings() const;

+ 12 - 12
Code/Editor/TrackView/TrackViewDopeSheetBase.cpp

@@ -88,7 +88,7 @@ CTrackViewDopeSheetBase::CTrackViewDopeSheetBase(QWidget* parent)
     m_currentTime = 0.0f;
     m_storedTime = m_currentTime;
     m_rcSelect = QRect(0, 0, 0, 0);
-    m_rubberBand = 0;
+    m_rubberBand = nullptr;
     m_scrollBar = new QScrollBar(Qt::Horizontal, this);
     connect(m_scrollBar, &QScrollBar::valueChanged, this, &CTrackViewDopeSheetBase::OnHScroll);
     m_keyTimeOffset = 0;
@@ -113,7 +113,7 @@ CTrackViewDopeSheetBase::CTrackViewDopeSheetBase(QWidget* parent)
 
     m_bFastRedraw = false;
 
-    m_pLastTrackSelectedOnSpot = NULL;
+    m_pLastTrackSelectedOnSpot = nullptr;
 
     m_wndPropsOnSpot = nullptr;
 
@@ -544,7 +544,7 @@ void CTrackViewDopeSheetBase::OnLButtonUp(Qt::KeyboardModifiers modifiers, const
         SelectKeys(m_rcSelect, modifiers & Qt::ControlModifier);
         m_rcSelect = QRect();
         m_rubberBand->deleteLater();
-        m_rubberBand = 0;
+        m_rubberBand = nullptr;
     }
     else if (m_mouseMode == eTVMouseMode_SelectWithinTime)
     {
@@ -552,7 +552,7 @@ void CTrackViewDopeSheetBase::OnLButtonUp(Qt::KeyboardModifiers modifiers, const
         SelectAllKeysWithinTimeFrame(m_rcSelect, modifiers & Qt::ControlModifier);
         m_rcSelect = QRect();
         m_rubberBand->deleteLater();
-        m_rubberBand = 0;
+        m_rubberBand = nullptr;
     }
     else if (m_mouseMode == eTVMouseMode_DragTime)
     {
@@ -744,7 +744,7 @@ void CTrackViewDopeSheetBase::OnRButtonDown(Qt::KeyboardModifiers modifiers, con
             }
             else
             {
-                m_pLastTrackSelectedOnSpot = NULL;
+                m_pLastTrackSelectedOnSpot = nullptr;
             }
 
             ShowKeyPropertyCtrlOnSpot(p.x(), p.y(), selectedKeys.GetKeyCount() > 1, bKeyChangeInSameTrack);
@@ -783,7 +783,7 @@ void CTrackViewDopeSheetBase::OnRButtonUp([[maybe_unused]] Qt::KeyboardModifiers
 
     if (!m_bCursorWasInKey)
     {
-        const bool bHasCopiedKey = (GetKeysInClickboard() != NULL);
+        const bool bHasCopiedKey = (GetKeysInClickboard() != nullptr);
 
         if (bHasCopiedKey && m_bMouseMovedAfterRButtonDown == false)    // Once moved, it means the user wanted to scroll, so no paste pop-up.
         {
@@ -1230,24 +1230,24 @@ XmlNodeRef CTrackViewDopeSheetBase::GetKeysInClickboard()
     CClipboard clip(this);
     if (clip.IsEmpty())
     {
-        return NULL;
+        return nullptr;
     }
 
     if (clip.GetTitle() != "Track view keys")
     {
-        return NULL;
+        return nullptr;
     }
 
     XmlNodeRef copyNode = clip.Get();
-    if (copyNode == NULL || strcmp(copyNode->getTag(), "CopyKeysNode"))
+    if (copyNode == nullptr || strcmp(copyNode->getTag(), "CopyKeysNode"))
     {
-        return NULL;
+        return nullptr;
     }
 
     int nNumTracksToPaste = copyNode->getChildCount();
     if (nNumTracksToPaste == 0)
     {
-        return NULL;
+        return nullptr;
     }
 
     return copyNode;
@@ -1789,7 +1789,7 @@ float CTrackViewDopeSheetBase::FrameSnap(float time) const
 //////////////////////////////////////////////////////////////////////////
 void CTrackViewDopeSheetBase::ShowKeyPropertyCtrlOnSpot(int x, int y, [[maybe_unused]] bool bMultipleKeysSelected, bool bKeyChangeInSameTrack)
 {
-    if (m_keyPropertiesDlg == NULL)
+    if (m_keyPropertiesDlg == nullptr)
     {
         return;
     }

+ 2 - 2
Code/Editor/TrackView/TrackViewFindDlg.cpp

@@ -24,13 +24,13 @@ AZ_POP_DISABLE_DLL_EXPORT_MEMBER_WARNING
 // CTrackViewFindDlg dialog
 
 
-CTrackViewFindDlg::CTrackViewFindDlg(const char* title, QWidget* pParent /*=NULL*/)
+CTrackViewFindDlg::CTrackViewFindDlg(const char* title, QWidget* pParent /*=nullptr*/)
     : QDialog(pParent)
     , ui(new Ui::TrackViewFindDlg)
 {
     setWindowTitle(title);
 
-    m_tvDlg = 0;
+    m_tvDlg = nullptr;
     m_numSeqs = 0;
 
     ui->setupUi(this);

+ 1 - 1
Code/Editor/TrackView/TrackViewFindDlg.h

@@ -32,7 +32,7 @@ class CTrackViewFindDlg
     Q_OBJECT
     // Construction
 public:
-    CTrackViewFindDlg(const char* title = NULL, QWidget* pParent = NULL);   // standard constructor
+    CTrackViewFindDlg(const char* title = nullptr, QWidget* pParent = nullptr);   // standard constructor
     ~CTrackViewFindDlg();
 
     //Functions

+ 2 - 2
Code/Editor/TrackView/TrackViewKeyPropertiesDlg.cpp

@@ -328,8 +328,8 @@ bool CTrackViewTrackPropsDlg::OnKeySelectionChange(CTrackViewKeyBundle& selected
     }
     else
     {
-        ui->PREVNEXT->setEnabled(FALSE);
-        ui->TIME->setEnabled(FALSE);
+        ui->PREVNEXT->setEnabled(false);
+        ui->TIME->setEnabled(false);
     }
     return true;
 }

+ 1 - 1
Code/Editor/TrackView/TrackViewKeyPropertiesDlg.h

@@ -74,7 +74,7 @@ protected:
     // Helper functions.
     //////////////////////////////////////////////////////////////////////////
     template <class T>
-    void SyncValue(CSmartVariable<T>& var, T& value, bool bCopyToUI, IVariable* pSrcVar = NULL)
+    void SyncValue(CSmartVariable<T>& var, T& value, bool bCopyToUI, IVariable* pSrcVar = nullptr)
     {
         if (bCopyToUI)
         {

+ 8 - 8
Code/Editor/TrackView/TrackViewNodes.cpp

@@ -69,7 +69,7 @@ public:
         : QStyledItemDelegate(parent)
     {}
 
-    void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const
+    void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const override
     {
         bool enabled = index.data(CTrackViewNodesCtrl::CRecord::EnableRole).toBool();
         QStyleOptionViewItem opt = option;
@@ -106,7 +106,7 @@ protected:
         return Qt::CopyAction | Qt::MoveAction;
     }
 
-    void dragMoveEvent(QDragMoveEvent* event)
+    void dragMoveEvent(QDragMoveEvent* event) override
     {
         CTrackViewNodesCtrl::CRecord* record = (CTrackViewNodesCtrl::CRecord*) itemAt(event->pos());
         if (!record)
@@ -144,7 +144,7 @@ protected:
         }
     }
 
-    void dropEvent(QDropEvent* event)
+    void dropEvent(QDropEvent* event) override
     {
         CTrackViewNodesCtrl::CRecord* record = (CTrackViewNodesCtrl::CRecord*) itemAt(event->pos());
         if (!record)
@@ -200,7 +200,7 @@ protected:
         }
     }
 
-    void keyPressEvent(QKeyEvent* event)
+    void keyPressEvent(QKeyEvent* event) override
     {
         // HAVE TO INCLUDE CASES FOR THESE IN THE ShortcutOverride handler in ::event() below
         switch (event->key())
@@ -242,7 +242,7 @@ protected:
     }
 
 
-    bool focusNextPrevChild([[maybe_unused]] bool next)
+    bool focusNextPrevChild([[maybe_unused]] bool next) override
     {
         return false;   // so we get the tab key
     }
@@ -361,7 +361,7 @@ CTrackViewNodesCtrl::CTrackViewNodesCtrl(QWidget* hParentWnd, CTrackViewDialog*
     , m_pTrackViewDialog(parent)
 {
     ui->setupUi(this);
-    m_pDopeSheet = 0;
+    m_pDopeSheet = nullptr;
     m_currentMatchIndex = 0;
     m_matchCount = 0;
 
@@ -954,7 +954,7 @@ void CTrackViewNodesCtrl::OnSelectionChanged()
 //////////////////////////////////////////////////////////////////////////
 void CTrackViewNodesCtrl::OnNMRclick(QPoint point)
 {
-    CRecord* record = 0;
+    CRecord* record = nullptr;
     bool isOnAzEntity = false;
     CTrackViewSequence* sequence = GetIEditor()->GetAnimation()->GetSequence();
     if (!sequence)
@@ -1605,7 +1605,7 @@ CTrackViewTrack* CTrackViewNodesCtrl::GetTrackViewTrack(const Export::EntityAnim
         }
     }
 
-    return 0;
+    return nullptr;
 }
 
 //////////////////////////////////////////////////////////////////////////

+ 11 - 11
Code/Editor/TrackView/TrackViewSplineCtrl.cpp

@@ -56,10 +56,10 @@ protected:
         }
     }
 
-    virtual int GetSize() { return sizeof(*this); }
-    virtual QString GetDescription() { return "UndoTrackViewSplineCtrl"; };
+    int GetSize() override { return sizeof(*this); }
+    QString GetDescription() override { return "UndoTrackViewSplineCtrl"; };
 
-    virtual void Undo(bool bUndo)
+    void Undo(bool bUndo) override
     {
         CTrackViewSplineCtrl* pCtrl = FindControl(m_pCtrl);
         if (pCtrl)
@@ -103,7 +103,7 @@ protected:
         }
     }
 
-    virtual void Redo()
+    void Redo() override
     {
         const CTrackViewSequenceManager* pSequenceManager = GetIEditor()->GetSequenceManager();
         CTrackViewSequence* sequence = pSequenceManager->GetSequenceByEntityId(m_sequenceEntityId);
@@ -136,7 +136,7 @@ protected:
         sequence->OnKeySelectionChanged();
     }
 
-    virtual bool IsSelectionChanged() const
+    bool IsSelectionChanged() const override
     {
         const CTrackViewSequenceManager* sequenceManager = GetIEditor()->GetSequenceManager();
         CTrackViewSequence* sequence = sequenceManager->GetSequenceByEntityId(m_sequenceEntityId);
@@ -151,19 +151,19 @@ protected:
     }
 
 public:
-    typedef std::list<CTrackViewSplineCtrl*> CTrackViewSplineCtrls;
+    using CTrackViewSplineCtrls = std::list<CTrackViewSplineCtrl*>;
 
     static CTrackViewSplineCtrl* FindControl(CTrackViewSplineCtrl* pCtrl)
     {
         if (!pCtrl)
         {
-            return 0;
+            return nullptr;
         }
 
         auto iter = std::find(s_activeCtrls.begin(), s_activeCtrls.end(), pCtrl);
         if (iter == s_activeCtrls.end())
         {
-            return 0;
+            return nullptr;
         }
 
         return *iter;
@@ -449,7 +449,7 @@ void CTrackViewSplineCtrl::AddSpline(ISplineInterpolator* pSpline, CTrackViewTra
     }
 
     si.pSpline = pSpline;
-    si.pDetailSpline = NULL;
+    si.pDetailSpline = nullptr;
     m_splines.push_back(si);
     m_tracks.push_back(pTrack);
     m_bKeyTimesDirty = true;
@@ -896,7 +896,7 @@ bool CTrackViewSplineCtrl::IsUnifiedKeyCurrentlySelected() const
     {
         ISplineInterpolator* pSpline = m_splines[splineIndex].pSpline;
 
-        if (pSpline == NULL)
+        if (pSpline == nullptr)
         {
             continue;
         }
@@ -960,7 +960,7 @@ void CTrackViewSplineCtrl::mouseReleaseEvent(QMouseEvent* event)
     if (GetIEditor()->GetAnimation()->GetSequence())
     {
         bool restoreRecordModeToTrue = (m_editMode == TimeMarkerMode && m_stashedRecordModeWhenDraggingTime);
-        
+
         SplineWidget::mouseReleaseEvent(event);
 
         if (restoreRecordModeToTrue)

+ 2 - 2
Code/Editor/UIEnumsDatabase.cpp

@@ -59,7 +59,7 @@ void CUIEnumsDatabase::SetEnumStrings(const QString& enumName, const QStringList
 {
     int nStringCount = sStringsArray.size();
 
-    CUIEnumsDatabase_SEnum* pEnum = stl::find_in_map(m_enums, enumName, 0);
+    CUIEnumsDatabase_SEnum* pEnum = stl::find_in_map(m_enums, enumName, nullptr);
     if (!pEnum)
     {
         pEnum = new CUIEnumsDatabase_SEnum;
@@ -86,6 +86,6 @@ void CUIEnumsDatabase::SetEnumStrings(const QString& enumName, const QStringList
 //////////////////////////////////////////////////////////////////////////
 CUIEnumsDatabase_SEnum* CUIEnumsDatabase::FindEnum(const QString& enumName) const
 {
-    CUIEnumsDatabase_SEnum* pEnum = stl::find_in_map(m_enums, enumName, 0);
+    CUIEnumsDatabase_SEnum* pEnum = stl::find_in_map(m_enums, enumName, nullptr);
     return pEnum;
 }

+ 12 - 12
Code/Editor/Undo/Undo.cpp

@@ -34,7 +34,7 @@ public:
     {
         m_undoSteps.push_back(step);
     }
-    virtual int GetSize() const
+    int GetSize() const override
     {
         int size = 0;
         for (int i = 0; i < m_undoSteps.size(); i++)
@@ -43,18 +43,18 @@ public:
         }
         return size;
     }
-    virtual bool IsEmpty() const
+    bool IsEmpty() const override
     {
         return m_undoSteps.empty();
     }
-    virtual void Undo(bool bUndo)
+    void Undo(bool bUndo) override
     {
         for (int i = m_undoSteps.size() - 1; i >= 0; i--)
         {
             m_undoSteps[i]->Undo(bUndo);
         }
     }
-    virtual void Redo()
+    void Redo() override
     {
         for (int i = 0; i < m_undoSteps.size(); i++)
         {
@@ -113,8 +113,8 @@ CUndoManager::CUndoManager()
     m_bRecording = false;
     m_bSuperRecording = false;
 
-    m_currentUndo = 0;
-    m_superUndo = 0;
+    m_currentUndo = nullptr;
+    m_superUndo = nullptr;
     m_assetManagerUndoInterruptor = new AssetManagerUndoInterruptor();
 
     m_suspendCount = 0;
@@ -270,7 +270,7 @@ void CUndoManager::Accept(const QString& name)
     }
 
     m_bRecording = false;
-    m_currentUndo = 0;
+    m_currentUndo = nullptr;
 
     SignalNumUndoRedoToListeners();
 
@@ -303,7 +303,7 @@ void CUndoManager::Cancel()
     }
 
     delete m_currentUndo;
-    m_currentUndo = 0;
+    m_currentUndo = nullptr;
     //CLogFile::WriteLine( "<Undo> Cancel OK" );
 }
 
@@ -582,7 +582,7 @@ void CUndoManager::SuperAccept(const QString& name)
 
     //CLogFile::FormatLine( "Undo Object Accepted (Undo:%d,Redo:%d)",m_undoStack.size(),m_redoStack.size() );
     m_bSuperRecording = false;
-    m_superUndo = 0;
+    m_superUndo = nullptr;
     //CLogFile::WriteLine( "<Undo> SupperAccept OK" );
 
     SignalNumUndoRedoToListeners();
@@ -616,7 +616,7 @@ void CUndoManager::SuperCancel()
 
     m_bSuperRecording = false;
     delete m_superUndo;
-    m_superUndo = 0;
+    m_superUndo = nullptr;
     //CLogFile::WriteLine( "<Undo> SuperCancel OK" );
 }
 
@@ -708,8 +708,8 @@ void CUndoManager::Flush()
 
     delete m_superUndo;
     delete m_currentUndo;
-    m_superUndo = 0;
-    m_currentUndo = 0;
+    m_superUndo = nullptr;
+    m_currentUndo = nullptr;
 
     SignalUndoFlushedToListeners();
 }

+ 2 - 2
Code/Editor/Undo/Undo.h

@@ -116,7 +116,7 @@ public:
                 continue;
             }
 
-            if (m_undoObjects[i]->GetObjectName() == NULL)
+            if (m_undoObjects[i]->GetObjectName() == nullptr)
             {
                 continue;
             }
@@ -209,7 +209,7 @@ public:
 
     bool IsHaveUndo() const;
     bool IsHaveRedo() const;
-    
+
     void SetMaxUndoStep(int steps);
     int GetMaxUndoStep() const;
 

+ 2 - 2
Code/Editor/UndoDropDown.cpp

@@ -56,7 +56,7 @@ public:
         m_manager.AddListener(this);
     }
 
-    virtual ~UndoDropDownListModel()
+    ~UndoDropDownListModel() override
     {
         m_manager.RemoveListener(this);
     }
@@ -81,7 +81,7 @@ public:
         return m_stackNames[index.row()];
     }
 
-    void SignalNumUndoRedo(const unsigned int& numUndo, const unsigned int& numRedo)
+    void SignalNumUndoRedo(const unsigned int& numUndo, const unsigned int& numRedo) override
     {
         std::vector<QString> fresh;
         if (UndoRedoDirection::Undo == m_direction && m_stackNames.size() != numUndo)

+ 5 - 5
Code/Editor/Util/3DConnexionDriver.cpp

@@ -34,12 +34,12 @@ bool C3DConnexionDriver::InitDevice()
     // Find the Raw Devices
     UINT nDevices;
     // Get Number of devices attached
-    if (GetRawInputDeviceList(NULL, &nDevices, sizeof(RAWINPUTDEVICELIST)) != 0)
+    if (GetRawInputDeviceList(nullptr, &nDevices, sizeof(RAWINPUTDEVICELIST)) != 0)
     {
         return false;
     }
     // Create list large enough to hold all RAWINPUTDEVICE structs
-    if ((m_pRawInputDeviceList = (PRAWINPUTDEVICELIST)malloc(sizeof(RAWINPUTDEVICELIST) * nDevices)) == NULL)
+    if ((m_pRawInputDeviceList = (PRAWINPUTDEVICELIST)malloc(sizeof(RAWINPUTDEVICELIST) * nDevices)) == nullptr)
     {
         return false;
     }
@@ -85,7 +85,7 @@ bool C3DConnexionDriver::InitDevice()
                         m_pRawInputDevices[m_nUsagePage1Usage8Devices].usUsagePage = phidInfo->usUsagePage;
                         m_pRawInputDevices[m_nUsagePage1Usage8Devices].usUsage     = phidInfo->usUsage;
                         m_pRawInputDevices[m_nUsagePage1Usage8Devices].dwFlags     = 0;
-                        m_pRawInputDevices[m_nUsagePage1Usage8Devices].hwndTarget  = NULL;
+                        m_pRawInputDevices[m_nUsagePage1Usage8Devices].hwndTarget  = nullptr;
                         m_nUsagePage1Usage8Devices++;
                     }
                 }
@@ -126,8 +126,8 @@ bool C3DConnexionDriver::GetInputMessageData(LPARAM lParam, S3DConnexionMessage&
     {
         if (event->header.dwType == RIM_TYPEHID)
         {
-            static BOOL bGotTranslation = FALSE,
-                        bGotRotation    = FALSE;
+            static bool bGotTranslation = false,
+                        bGotRotation    = false;
             static int all6DOFs[6] = {0};
             LPRAWHID pRawHid = &event->data.hid;
 

+ 1 - 1
Code/Editor/Util/DynamicArray2D.cpp

@@ -58,7 +58,7 @@ CDynamicArray2D::~CDynamicArray2D()
     }
 
     delete [] m_Array;
-    m_Array = 0;
+    m_Array = nullptr;
 }
 
 

+ 1 - 1
Code/Editor/Util/EditorUtils.cpp

@@ -234,7 +234,7 @@ namespace EditorUtils
     AzWarningAbsorber::AzWarningAbsorber(const char* window)
         : m_window(window)
     AZ_POP_DISABLE_WARNING
-    { 
+    {
         BusConnect();
     }
 

+ 6 - 6
Code/Editor/Util/EditorUtils.h

@@ -360,7 +360,7 @@ inline QString TokenizeString(const QString& s, LPCSTR pszTokens, int& iStart)
 
     QByteArray str = s.toUtf8();
 
-    if (pszTokens == NULL)
+    if (pszTokens == nullptr)
     {
         return str;
     }
@@ -473,7 +473,7 @@ inline const char* strstri(const char* pString, const char* pSubstring)
         }
     }
 
-    return NULL;
+    return nullptr;
 }
 
 
@@ -543,7 +543,7 @@ public:
         // There is a bug in QT with writing files larger than 32MB. It separates
         // the write into 32MB blocks, but doesn't write the last block correctly.
         // To deal with this, we'll separate into blocks here so QT doesn't have to.
-        
+
         // QT bug in qfileengine_win.cpp line 434. Block size is calculated once and always
         // used as the amount of data to write, but for the last block, unless there is exactly
         // block size left to write, the actual remaining amount needs to be written, not the
@@ -659,14 +659,14 @@ inline CArchive& operator>>(CArchive& ar, QString& str)
             str = QString::fromUtf16(reinterpret_cast<ushort*>(raw), aznumeric_cast<int>(length));
         }
     }
-    
+
     return ar;
 }
 
 inline CArchive& operator<<(CArchive& ar, const QString& str)
 {
     // This is written to mimic how MFC archiving worked, which was to
-    // write markers to indicate the size of the length - 
+    // write markers to indicate the size of the length -
     // so a length that will fit into 8 bits takes 8 bits.
     // A length that requires more than 8 bits, puts an 8 bit marker (0xff)
     // to indicate that the length is greater, then 16 bits for the length.
@@ -694,7 +694,7 @@ inline CArchive& operator<<(CArchive& ar, const QString& str)
         ar << static_cast<quint16>(0xffff);
         ar << static_cast<quint32>(length);
     }
-   
+
     ar.device()->write(data);
 
     return ar;

+ 3 - 3
Code/Editor/Util/FileChangeMonitor.cpp

@@ -16,7 +16,7 @@
 #include <QTimer>
 
 
-CFileChangeMonitor* CFileChangeMonitor::s_pFileMonitorInstance = NULL;
+CFileChangeMonitor* CFileChangeMonitor::s_pFileMonitorInstance = nullptr;
 
 //////////////////////////////////////////////////////////////////////////
 CFileChangeMonitor::CFileChangeMonitor(QObject* parent)
@@ -34,7 +34,7 @@ CFileChangeMonitor::~CFileChangeMonitor()
 
         if (pListener)
         {
-            pListener->SetMonitor(NULL);
+            pListener->SetMonitor(nullptr);
         }
     }
 
@@ -143,7 +143,7 @@ void CFileChangeMonitor::Unsubscribe(CFileChangeMonitorListener* pListener)
 {
     assert(pListener);
     m_listeners.erase(pListener);
-    pListener->SetMonitor(NULL);
+    pListener->SetMonitor(nullptr);
 }
 
 void CFileChangeMonitor::OnDirectoryChange(const QString &path)

+ 1 - 1
Code/Editor/Util/FileChangeMonitor.h

@@ -111,7 +111,7 @@ class CFileChangeMonitorListener
 {
 public:
     CFileChangeMonitorListener()
-        : m_pMonitor(NULL)
+        : m_pMonitor(nullptr)
     {
     }
 

+ 5 - 5
Code/Editor/Util/FileEnum.cpp

@@ -12,7 +12,7 @@
 #include "FileEnum.h"
 
 CFileEnum::CFileEnum()
-    : m_hEnumFile(0)
+    : m_hEnumFile(nullptr)
 {
 }
 
@@ -21,7 +21,7 @@ CFileEnum::~CFileEnum()
     if (m_hEnumFile)
     {
         delete m_hEnumFile;
-        m_hEnumFile = 0;
+        m_hEnumFile = nullptr;
     }
 }
 
@@ -53,7 +53,7 @@ bool CFileEnum::StartEnumeration(const QString& szEnumPathAndPattern, QFileInfo*
     if (m_hEnumFile)
     {
         delete m_hEnumFile;
-        m_hEnumFile = 0;
+        m_hEnumFile = nullptr;
     }
 
     QStringList parts = szEnumPathAndPattern.split(QRegularExpression(R"([\\/])"));
@@ -66,7 +66,7 @@ bool CFileEnum::StartEnumeration(const QString& szEnumPathAndPattern, QFileInfo*
     {
         // No files found
         delete m_hEnumFile;
-        m_hEnumFile = 0;
+        m_hEnumFile = nullptr;
 
         return false;
     }
@@ -84,7 +84,7 @@ bool CFileEnum::GetNextFile(QFileInfo* pFile)
     {
         // No more files left
         delete m_hEnumFile;
-        m_hEnumFile = 0;
+        m_hEnumFile = nullptr;
 
         return false;
     }

+ 28 - 87
Code/Editor/Util/FileUtil.cpp

@@ -278,7 +278,7 @@ void CFileUtil::EditTextureFile(const char* textureFile, [[maybe_unused]] bool b
     // Use the Win32 API calls to open the right editor; the OS knows how to do this even better than
     // Qt does.
     QString fullTexturePathFixedForWindows = QString(fullTexturePath.data()).replace('/', '\\');
-    HINSTANCE hInst = ShellExecuteW(NULL, L"open", textureEditorPath.toStdWString().c_str(), fullTexturePathFixedForWindows.toStdWString().c_str(), NULL, SW_SHOWNORMAL);
+    HINSTANCE hInst = ShellExecuteW(nullptr, L"open", textureEditorPath.toStdWString().c_str(), fullTexturePathFixedForWindows.toStdWString().c_str(), nullptr, SW_SHOWNORMAL);
     failedToLaunch = ((DWORD_PTR)hInst <= 32);
 #elif defined(AZ_PLATFORM_MAC)
     failedToLaunch = QProcess::execute(QString("/usr/bin/open"), {"-a", gSettings.textureEditor, QString(fullTexturePath.data()) }) != 0;
@@ -331,7 +331,7 @@ bool CFileUtil::EditMayaFile(const char* filepath, const bool bExtractFromPak, c
             CryMessageBox("Can't open the file. You can specify a source editor in Sandbox Preferences or create an association in Windows.", "Cannot open file!", MB_OK | MB_ICONERROR);
         }
     }
-    return TRUE;
+    return true;
 }
 
 //////////////////////////////////////////////////////////////////////////
@@ -347,10 +347,10 @@ bool CFileUtil::EditFile(const char* filePath, const bool bExtrackFromPak, const
     else if ((extension.compare(".bspace") == 0) || (extension.compare(".comb") == 0))
     {
         EditTextFile(filePath, 0, IFileUtil::FILE_TYPE_BSPACE);
-        return TRUE;
+        return true;
     }
 
-    return FALSE;
+    return false;
 }
 
 //////////////////////////////////////////////////////////////////////////
@@ -373,7 +373,7 @@ bool CFileUtil::CalculateDccFilename(const QString& assetFilename, QString& dccF
 //////////////////////////////////////////////////////////////////////////
 bool CFileUtil::ExtractDccFilenameFromAssetDatabase(const QString& assetFilename, QString& dccFilename)
 {
-    IAssetItemDatabase* pCurrentDatabaseInterface = NULL;
+    IAssetItemDatabase* pCurrentDatabaseInterface = nullptr;
     std::vector<IClassDesc*> assetDatabasePlugins;
     IEditorClassFactory* pClassFactory = GetIEditor()->GetClassFactory();
     pClassFactory->GetClassesByCategory("Asset Item DB", assetDatabasePlugins);
@@ -591,7 +591,7 @@ inline bool ScanDirectoryFiles(const QString& root, const QString& path, const Q
 
     /*
     CFileFind finder;
-    BOOL bWorking = finder.FindFile( Path::Make(dir,fileSpec) );
+    bool bWorking = finder.FindFile( Path::Make(dir,fileSpec) );
     while (bWorking)
     {
         bWorking = finder.FindNextFile();
@@ -662,7 +662,7 @@ inline int ScanDirectoryRecursive(const QString& root, const QString& path, cons
     {
         /*
         CFileFind finder;
-        BOOL bWorking = finder.FindFile( Path::Make(dir,"*.*") );
+        bool bWorking = finder.FindFile( Path::Make(dir,"*.*") );
         while (bWorking)
         {
             bWorking = finder.FindNextFile();
@@ -846,12 +846,12 @@ void BlockAndWait(const bool& opComplete, QWidget* parent, const char* message)
             {
                 // note that 16ms below is not the amount of time to wait, its the maximum time that
                 // processEvents is allowed to keep processing them if they just keep being emitted.
-                // adding a maximum time here means that we get an opportunity to pump the TickBus 
+                // adding a maximum time here means that we get an opportunity to pump the TickBus
                 // periodically even during a flood of events.
                 QCoreApplication::processEvents(QEventLoop::ExcludeUserInputEvents, 16);
                 AZ::TickBus::ExecuteQueuedEvents();
             }
-            
+
             // if we are not the main thread then the above will be done by the main thread, and we can just wait for it to happen.
             // its fairly important we don't sleep for really long because this legacy code is often invoked in a blocking loop
             // for many items, and in the worst case, any time we spend sleeping here will be added to each item.
@@ -1205,10 +1205,10 @@ bool   CFileUtil::CreatePath(const QString& strPath)
     QString                                 strFilename;
     QString                                 strExtension;
     QString                                 strCurrentDirectoryPath;
-    QStringList        cstrDirectoryQueue;
+    QStringList                             cstrDirectoryQueue;
     size_t                                  nCurrentPathQueue(0);
     size_t                                  nTotalPathQueueElements(0);
-    BOOL                                        bnLastDirectoryWasCreated(FALSE);
+    bool                                    bnLastDirectoryWasCreated(false);
 
     if (PathExists(strPath))
     {
@@ -1360,7 +1360,7 @@ IFileUtil::ECopyTreeResult CFileUtil::CopyTree(const QString& strSourceDirectory
     nTotal = cFiles.size();
     for (nCurrent = 0; nCurrent < nTotal; ++nCurrent)
     {
-        BOOL        bnLastFileWasCopied(FALSE);
+        bool        bnLastFileWasCopied(false);
 
 
         if (eCopyResult == IFileUtil::ETREECOPYUSERCANCELED)
@@ -1446,7 +1446,7 @@ IFileUtil::ECopyTreeResult CFileUtil::CopyTree(const QString& strSourceDirectory
             return eCopyResult;
         }
 
-        BOOL        bnLastDirectoryWasCreated(FALSE);
+        bool        bnLastDirectoryWasCreated(false);
 
         QString sourceName = sourceDir.absoluteFilePath(cDirectories[nCurrent]);
         QString targetName = targetDir.absoluteFilePath(cDirectories[nCurrent]);
@@ -1528,7 +1528,7 @@ IFileUtil::ECopyTreeResult   CFileUtil::CopyFile(const QString& strSourceFile, c
     CUserOptions                            oFileOptions;
     IFileUtil::ECopyTreeResult                      eCopyResult(IFileUtil::ETREECOPYOK);
 
-    BOOL                                            bnLastFileWasCopied(FALSE);
+    bool                                        bnLastFileWasCopied(false);
     QString                                     name(strSourceFile);
     QString                                     strQueryFilename;
     QString                                     strFullStargetName;
@@ -1657,7 +1657,7 @@ IFileUtil::ECopyTreeResult   CFileUtil::CopyFile(const QString& strSourceFile, c
                 }
                 if (pfnProgress)
                 {
-                    pfnProgress(source.size(), totalRead, 0, 0, 0, 0, 0, 0, 0);
+                    pfnProgress(source.size(), totalRead, 0, 0, 0, 0, nullptr, nullptr, nullptr);
                 }
             }
             if (totalRead != source.size())
@@ -1741,7 +1741,7 @@ IFileUtil::ECopyTreeResult   CFileUtil::MoveTree(const QString& strSourceDirecto
             return eCopyResult;
         }
 
-        BOOL        bnLastFileWasCopied(FALSE);
+        bool    bnLastFileWasCopied(false);
         QString sourceName(sourceDir.absoluteFilePath(cFiles[nCurrent]));
         QString targetName(targetDir.absoluteFilePath(cFiles[nCurrent]));
 
@@ -1815,7 +1815,7 @@ IFileUtil::ECopyTreeResult   CFileUtil::MoveTree(const QString& strSourceDirecto
     nTotal = cDirectories.size();
     for (nCurrent = 0; nCurrent < nTotal; ++nCurrent)
     {
-        BOOL        bnLastDirectoryWasCreated(FALSE);
+        bool        bnLastDirectoryWasCreated(false);
 
         if (eCopyResult == IFileUtil::ETREECOPYUSERCANCELED)
         {
@@ -1899,76 +1899,25 @@ IFileUtil::ECopyTreeResult   CFileUtil::MoveTree(const QString& strSourceDirecto
     return eCopyResult;
 }
 
-QString CFileUtil::PopupQMenu(const QString& filename, const QString& fullGamePath, QWidget* parent)
-{
-    QStringList extraItemsFront;
-    return PopupQMenu(filename, fullGamePath, parent, nullptr, extraItemsFront);
-}
-
-QString CFileUtil::PopupQMenu(const QString& filename, const QString& fullGamePath, QWidget* parent, [[maybe_unused]] bool* pIsSelected, const QStringList& extraItemsFront)
-{
-    QStringList extraItemsBack;
-    return PopupQMenu(filename, fullGamePath, parent, nullptr, extraItemsFront, extraItemsBack);
-}
-
-QString CFileUtil::PopupQMenu(const QString& filename, const QString& fullGamePath, QWidget* parent, bool* pIsSelected, const QStringList& extraItemsFront, const QStringList& extraItemsBack)
+void CFileUtil::PopulateQMenu(QWidget* caller, QMenu* menu, AZStd::string_view fullGamePath)
 {
-    QMenu menu;
-
-    foreach(QString text, extraItemsFront)
-    {
-        if (!text.isEmpty())
-        {
-            menu.addAction(text);
-        }
-    }
-    if (extraItemsFront.count())
-    {
-        menu.addSeparator();
-    }
-
-    PopulateQMenu(parent, &menu, filename, fullGamePath, pIsSelected);
-    if (extraItemsBack.count())
-    {
-        menu.addSeparator();
-    }
-    foreach(QString text, extraItemsBack)
-    {
-        if (!text.isEmpty())
-        {
-            menu.addAction(text);
-        }
-    }
-
-    QAction* result = menu.exec(QCursor::pos());
-    return result ? result->text() : QString();
+    PopulateQMenu(caller, menu, fullGamePath, nullptr);
 }
 
-void CFileUtil::PopulateQMenu(QWidget* caller, QMenu* menu, const QString& filename, const QString& fullGamePath)
+void CFileUtil::PopulateQMenu(QWidget* caller, QMenu* menu, AZStd::string_view fullGamePath, bool* isSelected)
 {
-    PopulateQMenu(caller, menu, filename, fullGamePath, nullptr);
-}
+    // Normalize the full path so we get consistent separators
+    AZStd::string fullFilePath(fullGamePath);
+    AzFramework::StringFunc::Path::Normalize(fullFilePath);
 
-void CFileUtil::PopulateQMenu(QWidget* caller, QMenu* menu, const QString& filename, const QString& fullGamePath, bool* isSelected)
-{
-    QString fullPath;
+    QString fullPath(fullFilePath.c_str());
+    QFileInfo fileInfo(fullPath);
 
     if (isSelected)
     {
         *isSelected = false;
     }
 
-    if (!filename.isEmpty())
-    {
-        QString path = Path::MakeGamePath(fullGamePath);
-        path = Path::AddSlash(path) + filename;
-        fullPath = Path::GamePathToFullPath(path);
-    }
-    else
-    {
-        fullPath = fullGamePath;
-    }
-
     uint32 nFileAttr = CFileUtil::GetAttributes(fullPath.toUtf8().data());
 
     QAction* action;
@@ -2004,21 +1953,13 @@ void CFileUtil::PopulateQMenu(QWidget* caller, QMenu* menu, const QString& filen
 
     action = menu->addAction(QObject::tr("Copy Name To Clipboard"), [=]()
     {
-        if (filename.isEmpty())
-        {
-            QFileInfo fi(fullGamePath);
-            QString file = fi.completeBaseName();
-            QApplication::clipboard()->setText(file);
-        }
-        else
-        {
-            QApplication::clipboard()->setText(filename);
-        }
+        QString fileName = fileInfo.completeBaseName();
+        QApplication::clipboard()->setText(fileName);
     });
 
     action = menu->addAction(QObject::tr("Copy Path To Clipboard"), [fullPath]() { QApplication::clipboard()->setText(fullPath); });
 
-    if (!filename.isEmpty() && GetIEditor()->IsSourceControlAvailable() && nFileAttr != SCC_FILE_ATTRIBUTE_INVALID)
+    if (fileInfo.isFile() && GetIEditor()->IsSourceControlAvailable() && nFileAttr != SCC_FILE_ATTRIBUTE_INVALID)
     {
         bool isEnableSC = nFileAttr & SCC_FILE_ATTRIBUTE_MANAGED;
         bool isInPak = nFileAttr & SCC_FILE_ATTRIBUTE_INPAK;

+ 3 - 14
Code/Editor/Util/FileUtil.h

@@ -122,7 +122,7 @@ public:
 
     //////////////////////////////////////////////////////////////////////////
     // @param LPPROGRESS_ROUTINE pfnProgress - called by the system to notify of file copy progress
-    // @param LPBOOL pbCancel - when the contents of this BOOL are set to TRUE, the system cancels the copy operation
+    // @param LPBOOL pbCancel - when the contents of this BOOL are set to true, the system cancels the copy operation
     static IFileUtil::ECopyTreeResult   CopyFile(const QString& strSourceFile, const QString& strTargetFile, bool boConfirmOverwrite = false, ProgressRoutine pfnProgress = nullptr, bool* pbCancel = nullptr);
 
 
@@ -133,18 +133,7 @@ public:
     // THIS FUNCTION IS NOT DESIGNED FOR MULTI-THREADED USAGE
     static IFileUtil::ECopyTreeResult   MoveTree(const QString& strSourceDirectory, const QString& strTargetDirectory, bool boRecurse = true, bool boConfirmOverwrite = false);
 
-    // Show Popup Menu with file commands include Source Control commands
-    // filename: a name of file without path
-    // fullGamePath: a game path to folder like "/Game/Objects" without filename
-    // wnd: pointer to window class, can be nullptr
-    // isSelected: output value indicated if Select menu item was chosen, if pointer is 0 - no Select menu item.
-    // pItems: you can specify additional menu items and get the result of selection using this parameter.
-    // return false if source control operation failed
-    static QString PopupQMenu(const QString& filename, const QString& fullGamePath, QWidget* parent);
-    static QString PopupQMenu(const QString& filename, const QString& fullGamePath, QWidget* parent, bool* pIsSelected, const QStringList& extraItemsFront);
-    static QString PopupQMenu(const QString& filename, const QString& fullGamePath, QWidget* parent, bool* pIsSelected, const QStringList& extraItemsFront, const QStringList& extraItemsBack);
-
-    static void PopulateQMenu(QWidget* caller, QMenu* menu, const QString& filename, const QString& fullGamePath);
+    static void PopulateQMenu(QWidget* caller, QMenu* menu, AZStd::string_view fullGamePath);
 
     static void GatherAssetFilenamesFromLevel(std::set<QString>& rOutFilenames, bool bMakeLowerCase = false, bool bMakeUnixPath = false);
 
@@ -171,7 +160,7 @@ private:
     static bool s_multiFileDlgPref[IFileUtil::EFILE_TYPE_LAST];
 
     // Keep this variant of this method private! pIsSelected is captured in a lambda, and so requires menu use exec() and never use show()
-    static void PopulateQMenu(QWidget* caller, QMenu* menu, const QString& filename, const QString& fullGamePath, bool* pIsSelected);
+    static void PopulateQMenu(QWidget* caller, QMenu* menu, AZStd::string_view fullGamePath, bool* pIsSelected);
 
     static bool ExtractDccFilenameFromAssetDatabase(const QString& assetFilename, QString& dccFilename);
     static bool ExtractDccFilenameUsingNamingConventions(const QString& assetFilename, QString& dccFilename);

+ 2 - 2
Code/Editor/Util/FileUtil_impl.h

@@ -110,8 +110,8 @@ public:
 
     //////////////////////////////////////////////////////////////////////////
     // @param LPPROGRESS_ROUTINE pfnProgress - called by the system to notify of file copy progress
-    // @param LPBOOL pbCancel - when the contents of this BOOL are set to TRUE, the system cancels the copy operation
-    ECopyTreeResult CopyFile(const QString& strSourceFile, const QString& strTargetFile, bool boConfirmOverwrite = false, ProgressRoutine pfnProgress = NULL, bool* pbCancel = NULL) override;
+    // @param LPBOOL pbCancel - when the contents of this BOOL are set to true, the system cancels the copy operation
+    ECopyTreeResult CopyFile(const QString& strSourceFile, const QString& strTargetFile, bool boConfirmOverwrite = false, ProgressRoutine pfnProgress = nullptr, bool* pbCancel = nullptr) override;
 
     // As we don't have a FileUtil interface here, we have to duplicate some code :-( in order to keep
     // function calls clean.

+ 1 - 1
Code/Editor/Util/GdiUtil.h

@@ -35,7 +35,7 @@ public:
     ~CAlphaBitmap();
 
     //! creates the bitmap from raw 32bpp data
-    //! \param pData the 32bpp raw image data, RGBA, can be NULL and it would create just an empty bitmap
+    //! \param pData the 32bpp raw image data, RGBA, can be nullptr and it would create just an empty bitmap
     //! \param aWidth the bitmap width
     //! \param aHeight the bitmap height
     bool            Create(void* pData, UINT aWidth, UINT aHeight, bool bVerticalFlip = false, bool bPremultiplyAlpha = false);

+ 14 - 14
Code/Editor/Util/ImageASC.cpp

@@ -104,34 +104,34 @@ bool CImageASC::Load(const QString& fileName, CFloatImage& image)
 
     // ncols = grid width
     validData = validData && (azstricmp(token, "ncols") == 0);
-    token = azstrtok(NULL, 0, seps, &nextToken);
+    token = azstrtok(nullptr, 0, seps, &nextToken);
     width = atoi(token);
 
     // nrows = grid height
-    token = azstrtok(NULL, 0, seps, &nextToken);
+    token = azstrtok(nullptr, 0, seps, &nextToken);
     validData = validData && (azstricmp(token, "nrows") == 0);
-    token = azstrtok(NULL, 0, seps, &nextToken);
+    token = azstrtok(nullptr, 0, seps, &nextToken);
     height = atoi(token);
 
     // xllcorner = leftmost coordinate.  (Skip, we don't care about it)
-    token = azstrtok(NULL, 0, seps, &nextToken);
+    token = azstrtok(nullptr, 0, seps, &nextToken);
     validData = validData && (azstricmp(token, "xllcorner") == 0);
-    token = azstrtok(NULL, 0, seps, &nextToken);
+    token = azstrtok(nullptr, 0, seps, &nextToken);
 
     // yllcorner = bottommost coordinate.  (Skip, we don't care about it)
-    token = azstrtok(NULL, 0, seps, &nextToken);
+    token = azstrtok(nullptr, 0, seps, &nextToken);
     validData = validData && (azstricmp(token, "yllcorner") == 0);
-    token = azstrtok(NULL, 0, seps, &nextToken);
+    token = azstrtok(nullptr, 0, seps, &nextToken);
 
     // cellsize = size of each grid cell.  (Skip, we don't care about it)
-    token = azstrtok(NULL, 0, seps, &nextToken);
+    token = azstrtok(nullptr, 0, seps, &nextToken);
     validData = validData && (azstricmp(token, "cellsize") == 0);
-    token = azstrtok(NULL, 0, seps, &nextToken);
+    token = azstrtok(nullptr, 0, seps, &nextToken);
 
     // nodata_value = the value used for missing data.  We'll replace these with 0 height.
-    token = azstrtok(NULL, 0, seps, &nextToken);
+    token = azstrtok(nullptr, 0, seps, &nextToken);
     validData = validData && (azstricmp(token, "nodata_value") == 0);
-    token = azstrtok(NULL, 0, seps, &nextToken);
+    token = azstrtok(nullptr, 0, seps, &nextToken);
     nodataValue = atof(token);
 
     if (!validData)
@@ -151,10 +151,10 @@ bool CImageASC::Load(const QString& fileName, CFloatImage& image)
     int i = 0;
     float pixelValue;
     float maxPixel = 0.0f;
-    while (token != NULL && i < size)
+    while (token != nullptr && i < size)
     {
-        token = azstrtok(NULL, 0, seps, &nextToken);
-        if (token != NULL)
+        token = azstrtok(nullptr, 0, seps, &nextToken);
+        if (token != nullptr)
         {
             // Negative heights aren't supported, clamp to 0.
             pixelValue = max(0.0, atof(token));

+ 1 - 1
Code/Editor/Util/ImageGif.cpp

@@ -223,7 +223,7 @@ bool CImageGif::Load(const QString& fileName, CImageEx& outImage)
     Pass = 0;
     OutCount = 0;
 
-    Palette = NULL;
+    Palette = nullptr;
     CHK (Raster = new uint8 [filesize]);
 
     if (strncmp((char*) ptr, id87, 6))

+ 6 - 6
Code/Editor/Util/ImageTIF.cpp

@@ -142,7 +142,7 @@ bool CImageTIF::Load(const QString& fileName, CImageEx& outImage)
         uint32 dwWidth, dwHeight;
         size_t npixels;
         uint32* raster;
-        char* dccfilename = NULL;
+        char* dccfilename = nullptr;
 
         TIFFGetField(tif, TIFFTAG_IMAGEWIDTH, &dwWidth);
         TIFFGetField(tif, TIFFTAG_IMAGELENGTH, &dwHeight);
@@ -232,7 +232,7 @@ bool CImageTIF::Load(const QString& fileName, CFloatImage& outImage)
     {
         uint32 width = 0, height = 0;
         uint16 spp = 0, bpp = 0, format = 0;
-        char* dccfilename = NULL;
+        char* dccfilename = nullptr;
 
         TIFFGetField(tif, TIFFTAG_IMAGEDESCRIPTION, &dccfilename);
 
@@ -252,11 +252,11 @@ bool CImageTIF::Load(const QString& fileName, CFloatImage& outImage)
 
         // Check to see if it's a GeoTIFF, and if so, whether or not it has the ZScale parameter.
         uint32 tagCount = 0;
-        double *pixelScales = NULL;
+        double *pixelScales = nullptr;
         if (TIFFGetField(tif, GEOTIFF_MODELPIXELSCALE_TAG, &tagCount, &pixelScales) == 1)
         {
             // if there's an xyz scale, and the Z scale isn't 0, let's use it.
-            if ((tagCount == 3) && (pixelScales != NULL) && (pixelScales[2] != 0.0f))
+            if ((tagCount == 3) && (pixelScales != nullptr) && (pixelScales[2] != 0.0f))
             {
                 pixelValueScale = static_cast<float>(pixelScales[2]);
             }
@@ -455,7 +455,7 @@ const char* CImageTIF::GetPreset(const QString& fileName)
     if (!file.Open(fileName.toUtf8().data(), "rb"))
     {
         CLogFile::FormatLine("File not found %s", fileName.toUtf8().data());
-        return NULL;
+        return nullptr;
     }
 
     MemImage memImage;
@@ -473,7 +473,7 @@ const char* CImageTIF::GetPreset(const QString& fileName)
             libtiffDummyCloseProc, libtiffDummySizeProc, libtiffDummyMapFileProc, libtiffDummyUnmapFileProc);
 
     AZStd::string strReturn;
-    char* preset = NULL;
+    char* preset = nullptr;
     int size;
     if (tif)
     {

+ 19 - 19
Code/Editor/Util/ImageUtil.cpp

@@ -148,13 +148,13 @@ bool CImageUtil::LoadPGM(const QString& fileName, CImageEx& image)
     char* nextToken = nullptr;
     token = azstrtok(str, 0, seps, &nextToken);
 
-    while (token != NULL && token[0] == '#')
+    while (token != nullptr && token[0] == '#')
     {
-        if (token != NULL && token[0] == '#')
+        if (token != nullptr && token[0] == '#')
         {
-            azstrtok(NULL, 0, "\n", &nextToken);
+            azstrtok(nullptr, 0, "\n", &nextToken);
         }
-        token = azstrtok(NULL, 0, seps, &nextToken);
+        token = azstrtok(nullptr, 0, seps, &nextToken);
     }
     if (azstricmp(token, "P2") != 0)
     {
@@ -166,32 +166,32 @@ bool CImageUtil::LoadPGM(const QString& fileName, CImageEx& image)
 
     do
     {
-        token = azstrtok(NULL, 0, seps, &nextToken);
-        if (token != NULL && token[0] == '#')
+        token = azstrtok(nullptr, 0, seps, &nextToken);
+        if (token != nullptr && token[0] == '#')
         {
-            azstrtok(NULL, 0, "\n", &nextToken);
+            azstrtok(nullptr, 0, "\n", &nextToken);
         }
-    } while (token != NULL && token[0] == '#');
+    } while (token != nullptr && token[0] == '#');
     width = atoi(token);
 
     do
     {
-        token = azstrtok(NULL, 0, seps, &nextToken);
-        if (token != NULL && token[0] == '#')
+        token = azstrtok(nullptr, 0, seps, &nextToken);
+        if (token != nullptr && token[0] == '#')
         {
-            azstrtok(NULL, 0, "\n", &nextToken);
+            azstrtok(nullptr, 0, "\n", &nextToken);
         }
-    } while (token != NULL && token[0] == '#');
+    } while (token != nullptr && token[0] == '#');
     height = atoi(token);
 
     do
     {
-        token = azstrtok(NULL, 0, seps, &nextToken);
-        if (token != NULL && token[0] == '#')
+        token = azstrtok(nullptr, 0, seps, &nextToken);
+        if (token != nullptr && token[0] == '#')
         {
-            azstrtok(NULL, 0, "\n", &nextToken);
+            azstrtok(nullptr, 0, "\n", &nextToken);
         }
-    } while (token != NULL && token[0] == '#');
+    } while (token != nullptr && token[0] == '#');
     numColors = atoi(token);
 
     image.Allocate(width, height);
@@ -199,12 +199,12 @@ bool CImageUtil::LoadPGM(const QString& fileName, CImageEx& image)
     uint32* p = image.GetData();
     int size = width * height;
     int i = 0;
-    while (token != NULL && i < size)
+    while (token != nullptr && i < size)
     {
         do
         {
-            token = azstrtok(NULL, 0, seps, &nextToken);
-        } while (token != NULL && token[0] == '#');
+            token = azstrtok(nullptr, 0, seps, &nextToken);
+        } while (token != nullptr && token[0] == '#');
         *p++ = atoi(token);
         i++;
     }

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels