diff --git a/extras/Projucer/Builds/MacOSX/Projucer.xcodeproj/project.pbxproj b/extras/Projucer/Builds/MacOSX/Projucer.xcodeproj/project.pbxproj index 1ba4455cfe..34abfa3d97 100644 --- a/extras/Projucer/Builds/MacOSX/Projucer.xcodeproj/project.pbxproj +++ b/extras/Projucer/Builds/MacOSX/Projucer.xcodeproj/project.pbxproj @@ -3228,7 +3228,7 @@ INFOPLIST_PREPROCESS = NO; INSTALL_PATH = "$(HOME)/Applications"; MACOSX_DEPLOYMENT_TARGET = 10.11; - OTHER_CPLUSPLUSFLAGS = "-Wall -Wno-missing-field-initializers -Wshadow-all -Wshorten-64-to-32 -Wstrict-aliasing -Wuninitialized -Wunused-parameter -Wconversion -Wsign-compare -Wint-conversion -Wconditional-uninitialized -Woverloaded-virtual -Wreorder -Wconstant-conversion -Wsign-conversion -Wunused-private-field -Wbool-conversion -Wextra-semi -Wno-ignored-qualifiers -Wunreachable-code -Wzero-as-null-pointer-constant"; + OTHER_CPLUSPLUSFLAGS = "-Wall -Wno-missing-field-initializers -Wshadow-all -Wshorten-64-to-32 -Wstrict-aliasing -Wuninitialized -Wunused-parameter -Wconversion -Wsign-compare -Wint-conversion -Wconditional-uninitialized -Woverloaded-virtual -Wreorder -Wconstant-conversion -Wsign-conversion -Wunused-private-field -Wbool-conversion -Wextra-semi -Wno-ignored-qualifiers -Wunreachable-code -Wzero-as-null-pointer-constant -Wcast-align -Winconsistent-missing-destructor-override -Wshift-sign-overflow -Wundefined-func-template -Wnullable-to-nonnull-conversion"; PRODUCT_BUNDLE_IDENTIFIER = com.juce.theprojucer; PRODUCT_NAME = "Projucer"; USE_HEADERMAP = NO; @@ -3273,7 +3273,7 @@ INSTALL_PATH = "$(HOME)/Applications"; LLVM_LTO = YES; MACOSX_DEPLOYMENT_TARGET = 10.11; - OTHER_CPLUSPLUSFLAGS = "-Wall -Wno-missing-field-initializers -Wshadow-all -Wshorten-64-to-32 -Wstrict-aliasing -Wuninitialized -Wunused-parameter -Wconversion -Wsign-compare -Wint-conversion -Wconditional-uninitialized -Woverloaded-virtual -Wreorder -Wconstant-conversion -Wsign-conversion -Wunused-private-field -Wbool-conversion -Wextra-semi -Wno-ignored-qualifiers -Wunreachable-code -Wzero-as-null-pointer-constant"; + OTHER_CPLUSPLUSFLAGS = "-Wall -Wno-missing-field-initializers -Wshadow-all -Wshorten-64-to-32 -Wstrict-aliasing -Wuninitialized -Wunused-parameter -Wconversion -Wsign-compare -Wint-conversion -Wconditional-uninitialized -Woverloaded-virtual -Wreorder -Wconstant-conversion -Wsign-conversion -Wunused-private-field -Wbool-conversion -Wextra-semi -Wno-ignored-qualifiers -Wunreachable-code -Wzero-as-null-pointer-constant -Wcast-align -Winconsistent-missing-destructor-override -Wshift-sign-overflow -Wundefined-func-template -Wnullable-to-nonnull-conversion"; PRODUCT_BUNDLE_IDENTIFIER = com.juce.theprojucer; PRODUCT_NAME = "Projucer"; USE_HEADERMAP = NO; diff --git a/extras/Projucer/Projucer.jucer b/extras/Projucer/Projucer.jucer index 86b9720c21..ae731a8c0d 100644 --- a/extras/Projucer/Projucer.jucer +++ b/extras/Projucer/Projucer.jucer @@ -8,7 +8,7 @@ diff --git a/extras/Projucer/Source/Application/Windows/jucer_ApplicationUsageDataWindowComponent.h b/extras/Projucer/Source/Application/Windows/jucer_ApplicationUsageDataWindowComponent.h index 15ccb5b1fb..c9a06df1fd 100644 --- a/extras/Projucer/Source/Application/Windows/jucer_ApplicationUsageDataWindowComponent.h +++ b/extras/Projucer/Source/Application/Windows/jucer_ApplicationUsageDataWindowComponent.h @@ -91,7 +91,7 @@ public: } } - ~ApplicationUsageDataWindowComponent() + ~ApplicationUsageDataWindowComponent() override { if (auto* controller = ProjucerApplication::getApp().licenseController.get()) { diff --git a/extras/Projucer/Source/Application/Windows/jucer_EditorColourSchemeWindowComponent.h b/extras/Projucer/Source/Application/Windows/jucer_EditorColourSchemeWindowComponent.h index ac8a48e5dd..d125857bbd 100644 --- a/extras/Projucer/Source/Application/Windows/jucer_EditorColourSchemeWindowComponent.h +++ b/extras/Projucer/Source/Application/Windows/jucer_EditorColourSchemeWindowComponent.h @@ -142,7 +142,7 @@ private: saveSchemeState(); } - ~EditorPanel() + ~EditorPanel() override { if (hasSchemeBeenModifiedSinceSave()) saveScheme (true); diff --git a/extras/Projucer/Source/Application/Windows/jucer_FloatingToolWindow.h b/extras/Projucer/Source/Application/Windows/jucer_FloatingToolWindow.h index ff2fdb3ab9..bcf5c7936d 100644 --- a/extras/Projucer/Source/Application/Windows/jucer_FloatingToolWindow.h +++ b/extras/Projucer/Source/Application/Windows/jucer_FloatingToolWindow.h @@ -60,7 +60,7 @@ struct FloatingToolWindow : public DialogWindow owner.reset (this); } - ~FloatingToolWindow() + ~FloatingToolWindow() override { if (windowPosProperty.isNotEmpty()) getGlobalProperties().setValue (windowPosProperty, getWindowStateAsString()); diff --git a/extras/Projucer/Source/Application/Windows/jucer_GlobalPathsWindowComponent.h b/extras/Projucer/Source/Application/Windows/jucer_GlobalPathsWindowComponent.h index 29a71d3c14..a59393ddf4 100644 --- a/extras/Projucer/Source/Application/Windows/jucer_GlobalPathsWindowComponent.h +++ b/extras/Projucer/Source/Application/Windows/jucer_GlobalPathsWindowComponent.h @@ -70,7 +70,7 @@ public: lastUserModulePath = getAppSettings().getStoredPath (Ids::defaultUserModulePath, TargetOS::getThisOS()).get(); } - ~GlobalPathsWindowComponent() + ~GlobalPathsWindowComponent() override { auto juceValue = getAppSettings().getStoredPath (Ids::defaultJuceModulePath, TargetOS::getThisOS()); auto userValue = getAppSettings().getStoredPath (Ids::defaultUserModulePath, TargetOS::getThisOS()); diff --git a/extras/Projucer/Source/Application/Windows/jucer_PIPCreatorWindowComponent.h b/extras/Projucer/Source/Application/Windows/jucer_PIPCreatorWindowComponent.h index ff38d44ab8..caa591da0d 100644 --- a/extras/Projucer/Source/Application/Windows/jucer_PIPCreatorWindowComponent.h +++ b/extras/Projucer/Source/Application/Windows/jucer_PIPCreatorWindowComponent.h @@ -85,7 +85,7 @@ public: pipTree.addListener (this); } - ~PIPCreatorWindowComponent() + ~PIPCreatorWindowComponent() override { setLookAndFeel (nullptr); } diff --git a/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp b/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp index 30f26af5a3..2cfc53a275 100644 --- a/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp +++ b/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp @@ -316,7 +316,7 @@ public: lookAndFeelChanged(); } - ~UpdateUserDialog() + ~UpdateUserDialog() override { titleLabel.reset(); contentLabel.reset(); diff --git a/extras/Projucer/Source/Application/jucer_AutoUpdater.h b/extras/Projucer/Source/Application/jucer_AutoUpdater.h index bd0ab27d9f..38b63560c4 100644 --- a/extras/Projucer/Source/Application/jucer_AutoUpdater.h +++ b/extras/Projucer/Source/Application/jucer_AutoUpdater.h @@ -58,7 +58,7 @@ public: //============================================================================== LatestVersionChecker(); - ~LatestVersionChecker(); + ~LatestVersionChecker() override; static String getOSString(); diff --git a/extras/Projucer/Source/Application/jucer_MainWindow.h b/extras/Projucer/Source/Application/jucer_MainWindow.h index 7e69255f5d..919691f7ab 100644 --- a/extras/Projucer/Source/Application/jucer_MainWindow.h +++ b/extras/Projucer/Source/Application/jucer_MainWindow.h @@ -42,7 +42,7 @@ class MainWindow : public DocumentWindow, public: //============================================================================== MainWindow(); - ~MainWindow(); + ~MainWindow() override; //============================================================================== void closeButtonPressed() override; diff --git a/extras/Projucer/Source/Application/jucer_ProjucerAnalytics.h b/extras/Projucer/Source/Application/jucer_ProjucerAnalytics.h index 7b64f17191..f33b009d53 100644 --- a/extras/Projucer/Source/Application/jucer_ProjucerAnalytics.h +++ b/extras/Projucer/Source/Application/jucer_ProjucerAnalytics.h @@ -43,7 +43,7 @@ class ProjucerAnalyticsDestination : public ThreadedAnalyticsDestination { public: ProjucerAnalyticsDestination(); - ~ProjucerAnalyticsDestination(); + ~ProjucerAnalyticsDestination() override; //============================================================================== bool logBatchedEvents (const Array&) override; diff --git a/extras/Projucer/Source/CodeEditor/jucer_DocumentEditorComponent.h b/extras/Projucer/Source/CodeEditor/jucer_DocumentEditorComponent.h index 24a96a7fb2..9bd7a85ade 100644 --- a/extras/Projucer/Source/CodeEditor/jucer_DocumentEditorComponent.h +++ b/extras/Projucer/Source/CodeEditor/jucer_DocumentEditorComponent.h @@ -35,7 +35,7 @@ class DocumentEditorComponent : public Component, public: //============================================================================== DocumentEditorComponent (OpenDocumentManager::Document* document); - ~DocumentEditorComponent(); + ~DocumentEditorComponent() override; OpenDocumentManager::Document* getDocument() const { return document; } diff --git a/extras/Projucer/Source/CodeEditor/jucer_LiveBuildCodeEditor.h b/extras/Projucer/Source/CodeEditor/jucer_LiveBuildCodeEditor.h index 2e6881bcf0..dcf368bb86 100644 --- a/extras/Projucer/Source/CodeEditor/jucer_LiveBuildCodeEditor.h +++ b/extras/Projucer/Source/CodeEditor/jucer_LiveBuildCodeEditor.h @@ -40,7 +40,7 @@ public: { } - ~LiveBuildCodeEditor() + ~LiveBuildCodeEditor() override { for (int i = getNumChildComponents(); --i >= 0;) if (auto* c = dynamic_cast (getChildComponent (i))) @@ -77,7 +77,7 @@ private: endPosition.setPositionMaintained (true); } - ~OverlayComponent() + ~OverlayComponent() override { setEditor (nullptr); } @@ -224,7 +224,7 @@ private: startTimer (600); } - ~ComponentClassList() + ~ComponentClassList() override { deleteOverlays(); } @@ -627,7 +627,7 @@ private: owner.getDocument().addListener (this); } - ~LiteralHighlightOverlay() + ~LiteralHighlightOverlay() override { if (auto* p = getParentComponent()) { diff --git a/extras/Projucer/Source/CodeEditor/jucer_SourceCodeEditor.h b/extras/Projucer/Source/CodeEditor/jucer_SourceCodeEditor.h index 13604b1cd8..6fd416a4cd 100644 --- a/extras/Projucer/Source/CodeEditor/jucer_SourceCodeEditor.h +++ b/extras/Projucer/Source/CodeEditor/jucer_SourceCodeEditor.h @@ -145,7 +145,7 @@ class SourceCodeEditor : public DocumentEditorComponent, public: SourceCodeEditor (OpenDocumentManager::Document*, CodeDocument&); SourceCodeEditor (OpenDocumentManager::Document*, GenericCodeEditorComponent*); - ~SourceCodeEditor(); + ~SourceCodeEditor() override; void scrollToKeepRangeOnScreen (Range range); void highlight (Range range, bool cursorAtStart); @@ -179,7 +179,7 @@ class GenericCodeEditorComponent : public CodeEditorComponent { public: GenericCodeEditorComponent (const File&, CodeDocument&, CodeTokeniser*); - ~GenericCodeEditorComponent(); + ~GenericCodeEditorComponent() override; void addPopupMenuItems (PopupMenu&, const MouseEvent*) override; void performPopupMenuAction (int menuItemID) override; @@ -225,7 +225,7 @@ class CppCodeEditorComponent : public GenericCodeEditorComponent { public: CppCodeEditorComponent (const File&, CodeDocument&); - ~CppCodeEditorComponent(); + ~CppCodeEditorComponent() override; void addPopupMenuItems (PopupMenu&, const MouseEvent*) override; void performPopupMenuAction (int menuItemID) override; diff --git a/extras/Projucer/Source/ComponentEditor/Components/jucer_TabbedComponentHandler.h b/extras/Projucer/Source/ComponentEditor/Components/jucer_TabbedComponentHandler.h index 2472bda42d..9c6ba03187 100644 --- a/extras/Projucer/Source/ComponentEditor/Components/jucer_TabbedComponentHandler.h +++ b/extras/Projucer/Source/ComponentEditor/Components/jucer_TabbedComponentHandler.h @@ -798,7 +798,7 @@ private: document.addChangeListener (this); } - ~TabColourProperty() + ~TabColourProperty() override { document.removeChangeListener (this); } diff --git a/extras/Projucer/Source/ComponentEditor/Documents/jucer_ComponentDocument.cpp b/extras/Projucer/Source/ComponentEditor/Documents/jucer_ComponentDocument.cpp index a7f0a1d016..3682eced86 100644 --- a/extras/Projucer/Source/ComponentEditor/Documents/jucer_ComponentDocument.cpp +++ b/extras/Projucer/Source/ComponentEditor/Documents/jucer_ComponentDocument.cpp @@ -112,7 +112,7 @@ public: addAndMakeVisible (layout->getComponent (i)); } - ~NormalTestComponent() + ~NormalTestComponent() override { for (int i = getNumChildComponents(); --i >= 0;) removeChildComponent (i); diff --git a/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_ColouredElement.h b/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_ColouredElement.h index 73ab6f4c82..817d0a26c1 100644 --- a/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_ColouredElement.h +++ b/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_ColouredElement.h @@ -43,7 +43,7 @@ public: const bool showOutline_, const bool showJointAndEnd_); - ~ColouredElement(); + ~ColouredElement() override; //============================================================================== void getEditableProperties (Array& props, bool multipleSelected) override; diff --git a/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElement.h b/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElement.h index e877f014f0..1794a5a4d9 100644 --- a/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElement.h +++ b/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElement.h @@ -45,7 +45,7 @@ class PaintElement : public Component, public: //============================================================================== PaintElement (PaintRoutine* owner, const String& typeName); - virtual ~PaintElement(); + ~PaintElement() override; //============================================================================== virtual void setInitialBounds (int parentWidth, int parentHeight); diff --git a/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementGroup.h b/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementGroup.h index 239b8ffb53..d77c3ba22b 100644 --- a/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementGroup.h +++ b/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementGroup.h @@ -34,8 +34,7 @@ class PaintElementGroup : public PaintElement { public: PaintElementGroup (PaintRoutine*); - - ~PaintElementGroup(); + ~PaintElementGroup() override; void ungroup (const bool); diff --git a/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementImage.h b/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementImage.h index fe62a736d9..905b90a74b 100644 --- a/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementImage.h +++ b/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementImage.h @@ -36,7 +36,7 @@ class PaintElementImage : public PaintElement { public: PaintElementImage (PaintRoutine*); - ~PaintElementImage(); + ~PaintElementImage() override; enum StretchMode { diff --git a/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementPath.h b/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementPath.h index fc1f6da5ce..a97fb6a497 100644 --- a/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementPath.h +++ b/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementPath.h @@ -64,7 +64,7 @@ class PaintElementPath : public ColouredElement { public: PaintElementPath (PaintRoutine* owner); - ~PaintElementPath(); + ~PaintElementPath() override; //============================================================================== void setInitialBounds (int parentWidth, int parentHeight) override; diff --git a/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementText.h b/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementText.h index ff4b72f835..e8b1be1082 100644 --- a/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementText.h +++ b/extras/Projucer/Source/ComponentEditor/PaintElements/jucer_PaintElementText.h @@ -405,7 +405,7 @@ private: element->getDocument()->addChangeListener (this); } - ~TextProperty() + ~TextProperty() override { element->getDocument()->removeChangeListener (this); } diff --git a/extras/Projucer/Source/ComponentEditor/UI/jucer_ComponentLayoutEditor.h b/extras/Projucer/Source/ComponentEditor/UI/jucer_ComponentLayoutEditor.h index 4e4ea26d49..8c4c8e9e30 100644 --- a/extras/Projucer/Source/ComponentEditor/UI/jucer_ComponentLayoutEditor.h +++ b/extras/Projucer/Source/ComponentEditor/UI/jucer_ComponentLayoutEditor.h @@ -39,8 +39,8 @@ class ComponentLayoutEditor : public Component, { public: //============================================================================== - ComponentLayoutEditor (JucerDocument& document, ComponentLayout& layout); - ~ComponentLayoutEditor(); + ComponentLayoutEditor (JucerDocument&, ComponentLayout&); + ~ComponentLayoutEditor() override; //============================================================================== void paint (Graphics&) override; diff --git a/extras/Projucer/Source/ComponentEditor/UI/jucer_ComponentOverlayComponent.h b/extras/Projucer/Source/ComponentEditor/UI/jucer_ComponentOverlayComponent.h index 85b1ba18a8..1a815a6208 100644 --- a/extras/Projucer/Source/ComponentEditor/UI/jucer_ComponentOverlayComponent.h +++ b/extras/Projucer/Source/ComponentEditor/UI/jucer_ComponentOverlayComponent.h @@ -39,7 +39,7 @@ public: ComponentOverlayComponent (Component* const targetComponent, ComponentLayout& layout); - ~ComponentOverlayComponent(); + ~ComponentOverlayComponent() override; //============================================================================== virtual void showPopupMenu(); diff --git a/extras/Projucer/Source/ComponentEditor/UI/jucer_EditingPanelBase.h b/extras/Projucer/Source/ComponentEditor/UI/jucer_EditingPanelBase.h index 5192110bcc..2e80eb85a3 100644 --- a/extras/Projucer/Source/ComponentEditor/UI/jucer_EditingPanelBase.h +++ b/extras/Projucer/Source/ComponentEditor/UI/jucer_EditingPanelBase.h @@ -44,7 +44,7 @@ public: Component* propsPanel, Component* editorComp); - ~EditingPanelBase(); + ~EditingPanelBase() override; //============================================================================== void resized() override; diff --git a/extras/Projucer/Source/ComponentEditor/UI/jucer_JucerDocumentEditor.cpp b/extras/Projucer/Source/ComponentEditor/UI/jucer_JucerDocumentEditor.cpp index da36ea9e9f..ca86c37dfe 100644 --- a/extras/Projucer/Source/ComponentEditor/UI/jucer_JucerDocumentEditor.cpp +++ b/extras/Projucer/Source/ComponentEditor/UI/jucer_JucerDocumentEditor.cpp @@ -54,7 +54,7 @@ public: document.addChangeListener (this); } - ~ExtraMethodsList() + ~ExtraMethodsList() override { document.removeChangeListener (this); } @@ -165,7 +165,7 @@ public: doc.addChangeListener (this); } - ~ClassPropertiesPanel() + ~ClassPropertiesPanel() override { document.removeChangeListener (this); } diff --git a/extras/Projucer/Source/ComponentEditor/UI/jucer_JucerDocumentEditor.h b/extras/Projucer/Source/ComponentEditor/UI/jucer_JucerDocumentEditor.h index 479b14ea65..de5ece63f9 100644 --- a/extras/Projucer/Source/ComponentEditor/UI/jucer_JucerDocumentEditor.h +++ b/extras/Projucer/Source/ComponentEditor/UI/jucer_JucerDocumentEditor.h @@ -39,7 +39,7 @@ class JucerDocumentEditor : public Component, public: //============================================================================== JucerDocumentEditor (JucerDocument* const document); - ~JucerDocumentEditor(); + ~JucerDocumentEditor() override; JucerDocument* getDocument() const noexcept { return document.get(); } diff --git a/extras/Projucer/Source/ComponentEditor/UI/jucer_PaintRoutinePanel.cpp b/extras/Projucer/Source/ComponentEditor/UI/jucer_PaintRoutinePanel.cpp index 4c17bca1ad..078dcd14de 100644 --- a/extras/Projucer/Source/ComponentEditor/UI/jucer_PaintRoutinePanel.cpp +++ b/extras/Projucer/Source/ComponentEditor/UI/jucer_PaintRoutinePanel.cpp @@ -43,7 +43,7 @@ public: document.addChangeListener (this); } - ~ComponentBackgroundColourProperty() + ~ComponentBackgroundColourProperty() override { document.removeChangeListener (this); } diff --git a/extras/Projucer/Source/ComponentEditor/UI/jucer_ResourceEditorPanel.h b/extras/Projucer/Source/ComponentEditor/UI/jucer_ResourceEditorPanel.h index bc97e817b2..cd423df639 100644 --- a/extras/Projucer/Source/ComponentEditor/UI/jucer_ResourceEditorPanel.h +++ b/extras/Projucer/Source/ComponentEditor/UI/jucer_ResourceEditorPanel.h @@ -35,7 +35,7 @@ class ResourceEditorPanel : public Component, { public: ResourceEditorPanel (JucerDocument& document); - ~ResourceEditorPanel(); + ~ResourceEditorPanel() override; void resized() override; void paint (Graphics& g) override; diff --git a/extras/Projucer/Source/ComponentEditor/UI/jucer_TestComponent.h b/extras/Projucer/Source/ComponentEditor/UI/jucer_TestComponent.h index ba6f3bde91..ebc7ca426a 100644 --- a/extras/Projucer/Source/ComponentEditor/UI/jucer_TestComponent.h +++ b/extras/Projucer/Source/ComponentEditor/UI/jucer_TestComponent.h @@ -37,7 +37,7 @@ public: JucerDocument* const loadedDocument, const bool alwaysFillBackground); - ~TestComponent(); + ~TestComponent() override; //============================================================================== void setFilename (const String& fn); diff --git a/extras/Projucer/Source/ComponentEditor/jucer_JucerDocument.h b/extras/Projucer/Source/ComponentEditor/jucer_JucerDocument.h index f10edb6491..c059562663 100644 --- a/extras/Projucer/Source/ComponentEditor/jucer_JucerDocument.h +++ b/extras/Projucer/Source/ComponentEditor/jucer_JucerDocument.h @@ -40,7 +40,7 @@ class JucerDocument : public ChangeBroadcaster, { public: JucerDocument (SourceCodeDocument* cpp); - ~JucerDocument(); + ~JucerDocument() override; static bool isValidJucerCppFile (const File&); static XmlElement* pullMetaDataFromCppFile (const String& cpp); diff --git a/extras/Projucer/Source/ComponentEditor/jucer_ObjectTypes.cpp b/extras/Projucer/Source/ComponentEditor/jucer_ObjectTypes.cpp index f705823c62..76ff5203c6 100644 --- a/extras/Projucer/Source/ComponentEditor/jucer_ObjectTypes.cpp +++ b/extras/Projucer/Source/ComponentEditor/jucer_ObjectTypes.cpp @@ -78,7 +78,7 @@ static const char* const elementNames[] = nullptr }; -const char** const elementTypeNames = (const char**) elementNames; +const char* const* const elementTypeNames = (const char* const*) elementNames; const int numElementTypes = (sizeof (elementNames) / sizeof (elementNames[0])) - 1; PaintElement* createNewElement (const int index, PaintRoutine* owner) @@ -158,7 +158,7 @@ static ComponentTypeHandler* const compTypes[] = nullptr }; -ComponentTypeHandler** const componentTypeHandlers = (ComponentTypeHandler**) compTypes; +ComponentTypeHandler* const* const componentTypeHandlers = (ComponentTypeHandler* const*) compTypes; const int numComponentTypes = numElementsInArray (compTypes) - 1; } diff --git a/extras/Projucer/Source/ComponentEditor/jucer_ObjectTypes.h b/extras/Projucer/Source/ComponentEditor/jucer_ObjectTypes.h index 36d264110e..2681e02a55 100644 --- a/extras/Projucer/Source/ComponentEditor/jucer_ObjectTypes.h +++ b/extras/Projucer/Source/ComponentEditor/jucer_ObjectTypes.h @@ -34,12 +34,12 @@ namespace ObjectTypes { //============================================================================== // Component types - extern ComponentTypeHandler** const componentTypeHandlers; + extern ComponentTypeHandler* const* const componentTypeHandlers; extern const int numComponentTypes; //============================================================================== // Element types - extern const char** const elementTypeNames; + extern const char* const* const elementTypeNames; extern const int numElementTypes; PaintElement* createNewElement (const int index, PaintRoutine* owner); diff --git a/extras/Projucer/Source/Licenses/jucer_LicenseThread.h b/extras/Projucer/Source/Licenses/jucer_LicenseThread.h index 8d5febaf3c..2c21429ad7 100644 --- a/extras/Projucer/Source/Licenses/jucer_LicenseThread.h +++ b/extras/Projucer/Source/Licenses/jucer_LicenseThread.h @@ -33,7 +33,7 @@ struct NetWorkerThread : public Thread, { NetWorkerThread() : Thread ("License") {} - ~NetWorkerThread() + ~NetWorkerThread() override { JUCE_ASSERT_MESSAGE_MANAGER_IS_LOCKED diff --git a/extras/Projucer/Source/Licenses/jucer_LicenseWebview.h b/extras/Projucer/Source/Licenses/jucer_LicenseWebview.h index f5f8556410..adb3709d5e 100644 --- a/extras/Projucer/Source/Licenses/jucer_LicenseWebview.h +++ b/extras/Projucer/Source/Licenses/jucer_LicenseWebview.h @@ -65,7 +65,7 @@ private: struct RedirectWebBrowserComponent : public WebBrowserComponent { RedirectWebBrowserComponent (LicenseWebviewContent& controller) : WebBrowserComponent (false), owner (controller) {} - virtual ~RedirectWebBrowserComponent() {} + ~RedirectWebBrowserComponent() override {} bool pageAboutToLoad (const String& url) override { return owner.pageAboutToLoad (url); } void pageFinishedLoading (const String& url) override { owner.pageFinishedLoading (url); } @@ -95,7 +95,7 @@ private: } } - virtual ~Header() + ~Header() override { if (auto* licenseController = ProjucerApplication::getApp().licenseController.get()) licenseController->removeLicenseStatusChangedCallback (this); diff --git a/extras/Projucer/Source/LiveBuildEngine/UI/jucer_ActivityListComponent.h b/extras/Projucer/Source/LiveBuildEngine/UI/jucer_ActivityListComponent.h index 8104e21974..70831aebf4 100644 --- a/extras/Projucer/Source/LiveBuildEngine/UI/jucer_ActivityListComponent.h +++ b/extras/Projucer/Source/LiveBuildEngine/UI/jucer_ActivityListComponent.h @@ -45,7 +45,7 @@ public: activityList.addChangeListener (this); } - ~CurrentActivitiesComp() + ~CurrentActivitiesComp() override { activityList.removeChangeListener (this); } diff --git a/extras/Projucer/Source/LiveBuildEngine/UI/jucer_BuildTabStatusComponent.h b/extras/Projucer/Source/LiveBuildEngine/UI/jucer_BuildTabStatusComponent.h index 0a862def62..689090e44a 100644 --- a/extras/Projucer/Source/LiveBuildEngine/UI/jucer_BuildTabStatusComponent.h +++ b/extras/Projucer/Source/LiveBuildEngine/UI/jucer_BuildTabStatusComponent.h @@ -42,7 +42,7 @@ public: errorList.addChangeListener (this); } - ~BuildStatusTabComp() + ~BuildStatusTabComp() override { activityList.removeChangeListener (this); errorList.removeChangeListener (this); diff --git a/extras/Projucer/Source/LiveBuildEngine/UI/jucer_ComponentListComponent.h b/extras/Projucer/Source/LiveBuildEngine/UI/jucer_ComponentListComponent.h index 91b2e3d364..1b09085ecc 100644 --- a/extras/Projucer/Source/LiveBuildEngine/UI/jucer_ComponentListComponent.h +++ b/extras/Projucer/Source/LiveBuildEngine/UI/jucer_ComponentListComponent.h @@ -48,7 +48,7 @@ public: owner.activityList.addListener (this); } - ~ComponentListComp() + ~ComponentListComp() override { saveOpenness(); owner.activityList.removeListener (this); diff --git a/extras/Projucer/Source/LiveBuildEngine/UI/jucer_ErrorListComponent.h b/extras/Projucer/Source/LiveBuildEngine/UI/jucer_ErrorListComponent.h index 96ae657639..a41822e84b 100644 --- a/extras/Projucer/Source/LiveBuildEngine/UI/jucer_ErrorListComponent.h +++ b/extras/Projucer/Source/LiveBuildEngine/UI/jucer_ErrorListComponent.h @@ -47,7 +47,7 @@ public: errorListChanged(); } - ~ErrorListComp() + ~ErrorListComp() override { errorList.removeChangeListener (this); } @@ -219,7 +219,7 @@ private: uniqueID << message.message << ':' << message.range.toString(); } - ~ErrorMessageTreeItem() + ~ErrorMessageTreeItem() override { overlay.deleteAndZero(); } diff --git a/extras/Projucer/Source/LiveBuildEngine/jucer_CompileEngineClient.cpp b/extras/Projucer/Source/LiveBuildEngine/jucer_CompileEngineClient.cpp index 0069bacbc4..2875545060 100644 --- a/extras/Projucer/Source/LiveBuildEngine/jucer_CompileEngineClient.cpp +++ b/extras/Projucer/Source/LiveBuildEngine/jucer_CompileEngineClient.cpp @@ -210,7 +210,7 @@ public: openedOk = true; } - ~ChildProcess() + ~ChildProcess() override { projectRoot.removeListener (this); @@ -642,7 +642,7 @@ struct CompileEngineChildProcess::Editor : private CodeDocument::Listener, document.addListener (this); } - ~Editor() + ~Editor() override { document.removeListener (this); } diff --git a/extras/Projucer/Source/LiveBuildEngine/jucer_CompileEngineClient.h b/extras/Projucer/Source/LiveBuildEngine/jucer_CompileEngineClient.h index 1732424097..4c990c3cfc 100644 --- a/extras/Projucer/Source/LiveBuildEngine/jucer_CompileEngineClient.h +++ b/extras/Projucer/Source/LiveBuildEngine/jucer_CompileEngineClient.h @@ -36,7 +36,7 @@ class CompileEngineChildProcess : public ReferenceCountedObject, { public: CompileEngineChildProcess (Project&); - ~CompileEngineChildProcess(); + ~CompileEngineChildProcess() override; //============================================================================== bool openedOk() const { return process != nullptr; } diff --git a/extras/Projucer/Source/LiveBuildEngine/jucer_CompileEngineServer.cpp b/extras/Projucer/Source/LiveBuildEngine/jucer_CompileEngineServer.cpp index a1963b4564..1f809f7cbc 100644 --- a/extras/Projucer/Source/LiveBuildEngine/jucer_CompileEngineServer.cpp +++ b/extras/Projucer/Source/LiveBuildEngine/jucer_CompileEngineServer.cpp @@ -67,7 +67,7 @@ struct ZombiePatrol : private Thread, startTimer (1000); } - ~ZombiePatrol() + ~ZombiePatrol() override { stopThread (1000); } @@ -161,7 +161,7 @@ public: zombieKiller.reset (new ZombiePatrol (*this)); } - ~ServerIPC() + ~ServerIPC() override { zombieKiller.reset(); diff --git a/extras/Projucer/Source/Project/UI/Sidebar/jucer_FileTreeItems.h b/extras/Projucer/Source/Project/UI/Sidebar/jucer_FileTreeItems.h index 7a3c3000dd..13d7d04300 100644 --- a/extras/Projucer/Source/Project/UI/Sidebar/jucer_FileTreeItems.h +++ b/extras/Projucer/Source/Project/UI/Sidebar/jucer_FileTreeItems.h @@ -38,7 +38,7 @@ public: item.state.addListener (this); } - ~FileTreeItemBase() + ~FileTreeItemBase() override { item.state.removeListener (this); } diff --git a/extras/Projucer/Source/Project/UI/Sidebar/jucer_ModuleTreeItems.h b/extras/Projucer/Source/Project/UI/Sidebar/jucer_ModuleTreeItems.h index c2b114de3a..9cee8477da 100644 --- a/extras/Projucer/Source/Project/UI/Sidebar/jucer_ModuleTreeItems.h +++ b/extras/Projucer/Source/Project/UI/Sidebar/jucer_ModuleTreeItems.h @@ -456,7 +456,7 @@ public: project.getExporterPathsModuleList().addListener (this); } - ~EnabledModulesItem() + ~EnabledModulesItem() override { ProjucerApplication::getApp().getJUCEPathModuleList().removeListener (this); ProjucerApplication::getApp().getUserPathsModuleList().removeListener (this); diff --git a/extras/Projucer/Source/Project/UI/Sidebar/jucer_ProjectTab.h b/extras/Projucer/Source/Project/UI/Sidebar/jucer_ProjectTab.h index 1a5492204a..bcd061f94b 100644 --- a/extras/Projucer/Source/Project/UI/Sidebar/jucer_ProjectTab.h +++ b/extras/Projucer/Source/Project/UI/Sidebar/jucer_ProjectTab.h @@ -42,7 +42,7 @@ struct ProjectSettingsComponent : public Component, project.addChangeListener (this); } - ~ProjectSettingsComponent() + ~ProjectSettingsComponent() override { project.removeChangeListener (this); } @@ -139,7 +139,7 @@ public: buildConcertina(); } - ~ProjectTab() + ~ProjectTab() override { getFileTreePanel()->saveOpenness(); getModuleTreePanel()->saveOpenness(); diff --git a/extras/Projucer/Source/Project/UI/Sidebar/jucer_TabComponents.h b/extras/Projucer/Source/Project/UI/Sidebar/jucer_TabComponents.h index 6f463f2189..c10509a28b 100644 --- a/extras/Projucer/Source/Project/UI/Sidebar/jucer_TabComponents.h +++ b/extras/Projucer/Source/Project/UI/Sidebar/jucer_TabComponents.h @@ -111,7 +111,7 @@ public: lookAndFeelChanged(); } - ~FindPanel() + ~FindPanel() override { Desktop::getInstance().removeFocusChangeListener (this); } @@ -194,7 +194,7 @@ public: addAndMakeVisible (treeToDisplay.get()); } - ~ConcertinaTreeComponent() + ~ConcertinaTreeComponent() override { treeToDisplay.reset(); addButton.reset(); diff --git a/extras/Projucer/Source/Project/UI/jucer_FileGroupInformationComponent.h b/extras/Projucer/Source/Project/UI/jucer_FileGroupInformationComponent.h index 3d71f6564f..d799bfb4a6 100644 --- a/extras/Projucer/Source/Project/UI/jucer_FileGroupInformationComponent.h +++ b/extras/Projucer/Source/Project/UI/jucer_FileGroupInformationComponent.h @@ -50,7 +50,7 @@ public: addAndMakeVisible (header); } - ~FileGroupInformationComponent() + ~FileGroupInformationComponent() override { item.state.removeListener (this); } diff --git a/extras/Projucer/Source/Project/UI/jucer_HeaderComponent.h b/extras/Projucer/Source/Project/UI/jucer_HeaderComponent.h index 88b1836d12..774b935a8d 100644 --- a/extras/Projucer/Source/Project/UI/jucer_HeaderComponent.h +++ b/extras/Projucer/Source/Project/UI/jucer_HeaderComponent.h @@ -40,7 +40,7 @@ class HeaderComponent : public Component, { public: HeaderComponent(); - ~HeaderComponent(); + ~HeaderComponent() override; //========================================================================== void resized() override; diff --git a/extras/Projucer/Source/Project/UI/jucer_ProjectContentComponent.h b/extras/Projucer/Source/Project/UI/jucer_ProjectContentComponent.h index 6c7254ae68..5e9c8d369b 100644 --- a/extras/Projucer/Source/Project/UI/jucer_ProjectContentComponent.h +++ b/extras/Projucer/Source/Project/UI/jucer_ProjectContentComponent.h @@ -44,7 +44,7 @@ class ProjectContentComponent : public Component, public: //============================================================================== ProjectContentComponent(); - ~ProjectContentComponent(); + ~ProjectContentComponent() override; Project* getProject() const noexcept { return project; } virtual void setProject (Project*); diff --git a/extras/Projucer/Source/Project/jucer_Project.h b/extras/Projucer/Source/Project/jucer_Project.h index a9b3ed2676..92974b1596 100644 --- a/extras/Projucer/Source/Project/jucer_Project.h +++ b/extras/Projucer/Source/Project/jucer_Project.h @@ -42,7 +42,7 @@ class Project : public FileBasedDocument, public: //============================================================================== Project (const File&); - ~Project(); + ~Project() override; //============================================================================== // FileBasedDocument stuff.. diff --git a/extras/Projucer/Source/Settings/jucer_StoredSettings.h b/extras/Projucer/Source/Settings/jucer_StoredSettings.h index 0871b470e1..b4744a3086 100644 --- a/extras/Projucer/Source/Settings/jucer_StoredSettings.h +++ b/extras/Projucer/Source/Settings/jucer_StoredSettings.h @@ -34,7 +34,7 @@ class StoredSettings : public ValueTree::Listener { public: StoredSettings(); - ~StoredSettings(); + ~StoredSettings() override; PropertiesFile& getGlobalProperties(); PropertiesFile& getProjectProperties (const String& projectUID); @@ -54,7 +54,7 @@ public: struct ColourSelectorWithSwatches : public ColourSelector { ColourSelectorWithSwatches(); - ~ColourSelectorWithSwatches(); + ~ColourSelectorWithSwatches() override; int getNumSwatches() const override; Colour getSwatchColour (int index) const override; diff --git a/extras/Projucer/Source/Utility/UI/PropertyComponents/jucer_LabelPropertyComponent.h b/extras/Projucer/Source/Utility/UI/PropertyComponents/jucer_LabelPropertyComponent.h index a9c0948915..196ec37c2c 100644 --- a/extras/Projucer/Source/Utility/UI/PropertyComponents/jucer_LabelPropertyComponent.h +++ b/extras/Projucer/Source/Utility/UI/PropertyComponents/jucer_LabelPropertyComponent.h @@ -46,7 +46,7 @@ public: setLookAndFeel (&lf); } - ~LabelPropertyComponent() { setLookAndFeel (nullptr); } + ~LabelPropertyComponent() override { setLookAndFeel (nullptr); } //============================================================================== void refresh() override {} diff --git a/extras/Projucer/Source/Utility/UI/PropertyComponents/jucer_PropertyComponentsWithEnablement.h b/extras/Projucer/Source/Utility/UI/PropertyComponents/jucer_PropertyComponentsWithEnablement.h index 7338b22d8f..3a0674a6f3 100644 --- a/extras/Projucer/Source/Utility/UI/PropertyComponents/jucer_PropertyComponentsWithEnablement.h +++ b/extras/Projucer/Source/Utility/UI/PropertyComponents/jucer_PropertyComponentsWithEnablement.h @@ -45,7 +45,7 @@ public: setEnabled (valueWithDefault.get()); } - ~TextPropertyComponentWithEnablement() { value.removeListener (this); } + ~TextPropertyComponentWithEnablement() override { value.removeListener (this); } private: ValueWithDefault valueWithDefault; @@ -72,7 +72,7 @@ public: setEnabled (valueWithDefault.get()); } - ~ChoicePropertyComponentWithEnablement() { value.removeListener (this); } + ~ChoicePropertyComponentWithEnablement() override { value.removeListener (this); } private: ValueWithDefault valueWithDefault; diff --git a/extras/Projucer/Source/Utility/UI/jucer_JucerTreeViewBase.h b/extras/Projucer/Source/Utility/UI/jucer_JucerTreeViewBase.h index f49e057cdb..b758d923f7 100644 --- a/extras/Projucer/Source/Utility/UI/jucer_JucerTreeViewBase.h +++ b/extras/Projucer/Source/Utility/UI/jucer_JucerTreeViewBase.h @@ -35,7 +35,7 @@ class JucerTreeViewBase : public TreeViewItem, { public: JucerTreeViewBase(); - ~JucerTreeViewBase(); + ~JucerTreeViewBase() override; int getItemWidth() const override { return -1; } int getItemHeight() const override { return 25; } @@ -134,7 +134,7 @@ public: tree.addMouseListener (this, true); } - ~TreePanelBase() + ~TreePanelBase() override { tree.setRootItem (nullptr); } diff --git a/extras/Projucer/Source/Utility/UI/jucer_ProjucerLookAndFeel.h b/extras/Projucer/Source/Utility/UI/jucer_ProjucerLookAndFeel.h index b7b221df35..7b80b6d1e9 100644 --- a/extras/Projucer/Source/Utility/UI/jucer_ProjucerLookAndFeel.h +++ b/extras/Projucer/Source/Utility/UI/jucer_ProjucerLookAndFeel.h @@ -32,7 +32,7 @@ class ProjucerLookAndFeel : public LookAndFeel_V4 { public: ProjucerLookAndFeel(); - ~ProjucerLookAndFeel(); + ~ProjucerLookAndFeel() override; void drawTabButton (TabBarButton& button, Graphics&, bool isMouseOver, bool isMouseDown) override; int getTabButtonBestWidth (TabBarButton&, int tabDepth) override; diff --git a/extras/Projucer/Source/Utility/UI/jucer_SlidingPanelComponent.h b/extras/Projucer/Source/Utility/UI/jucer_SlidingPanelComponent.h index 63edb8c815..0cfaada18f 100644 --- a/extras/Projucer/Source/Utility/UI/jucer_SlidingPanelComponent.h +++ b/extras/Projucer/Source/Utility/UI/jucer_SlidingPanelComponent.h @@ -33,7 +33,7 @@ class SlidingPanelComponent : public Component { public: SlidingPanelComponent(); - ~SlidingPanelComponent(); + ~SlidingPanelComponent() override; /** Adds a new tab to the panel slider. */ void addTab (const String& tabName, diff --git a/modules/juce_analytics/analytics/juce_ButtonTracker.h b/modules/juce_analytics/analytics/juce_ButtonTracker.h index 89d444a771..8b005bbac5 100644 --- a/modules/juce_analytics/analytics/juce_ButtonTracker.h +++ b/modules/juce_analytics/analytics/juce_ButtonTracker.h @@ -63,7 +63,7 @@ public: int triggeredEventType = 0); /** Destructor. */ - ~ButtonTracker(); + ~ButtonTracker() override; private: /** @internal */ diff --git a/modules/juce_analytics/destinations/juce_ThreadedAnalyticsDestination.h b/modules/juce_analytics/destinations/juce_ThreadedAnalyticsDestination.h index 3eb9a4bc80..d6d0182f25 100644 --- a/modules/juce_analytics/destinations/juce_ThreadedAnalyticsDestination.h +++ b/modules/juce_analytics/destinations/juce_ThreadedAnalyticsDestination.h @@ -63,7 +63,7 @@ public: ThreadedAnalyticsDestination (const String& threadName = "Analytics thread"); /** Destructor. */ - virtual ~ThreadedAnalyticsDestination(); + ~ThreadedAnalyticsDestination() override; //============================================================================== /** diff --git a/modules/juce_core/containers/juce_AbstractFifo.cpp b/modules/juce_core/containers/juce_AbstractFifo.cpp index ca28851313..502db53cc8 100644 --- a/modules/juce_core/containers/juce_AbstractFifo.cpp +++ b/modules/juce_core/containers/juce_AbstractFifo.cpp @@ -30,8 +30,8 @@ AbstractFifo::AbstractFifo (int capacity) noexcept : bufferSize (capacity) AbstractFifo::~AbstractFifo() {} -int AbstractFifo::getTotalSize() const noexcept { return bufferSize; } -int AbstractFifo::getFreeSpace() const noexcept { return bufferSize - getNumReady() - 1; } +int AbstractFifo::getTotalSize() const noexcept { return bufferSize; } +int AbstractFifo::getFreeSpace() const noexcept { return bufferSize - getNumReady() - 1; } int AbstractFifo::getNumReady() const noexcept { @@ -54,7 +54,8 @@ void AbstractFifo::setTotalSize (int newSize) noexcept } //============================================================================== -void AbstractFifo::prepareToWrite (int numToWrite, int& startIndex1, int& blockSize1, int& startIndex2, int& blockSize2) const noexcept +void AbstractFifo::prepareToWrite (int numToWrite, int& startIndex1, int& blockSize1, + int& startIndex2, int& blockSize2) const noexcept { auto vs = validStart.get(); auto ve = validEnd.get(); @@ -91,7 +92,8 @@ void AbstractFifo::finishedWrite (int numWritten) noexcept validEnd = newEnd; } -void AbstractFifo::prepareToRead (int numWanted, int& startIndex1, int& blockSize1, int& startIndex2, int& blockSize2) const noexcept +void AbstractFifo::prepareToRead (int numWanted, int& startIndex1, int& blockSize1, + int& startIndex2, int& blockSize2) const noexcept { auto vs = validStart.get(); auto ve = validEnd.get(); @@ -198,6 +200,10 @@ void AbstractFifo::ScopedReadWrite::finish (Ab template class AbstractFifo::ScopedReadWrite; template class AbstractFifo::ScopedReadWrite; +AbstractFifo::ScopedRead AbstractFifo::read (int numToRead) noexcept { return { *this, numToRead }; } +AbstractFifo::ScopedWrite AbstractFifo::write (int numToWrite) noexcept { return { *this, numToWrite }; } + + //============================================================================== #if JUCE_UNIT_TESTS diff --git a/modules/juce_core/containers/juce_AbstractFifo.h b/modules/juce_core/containers/juce_AbstractFifo.h index 6638e94935..5926f70a60 100644 --- a/modules/juce_core/containers/juce_AbstractFifo.h +++ b/modules/juce_core/containers/juce_AbstractFifo.h @@ -281,7 +281,7 @@ public: } // readHandle goes out of scope here, finishing the read operation @endcode */ - ScopedRead read (int numToRead) noexcept { return { *this, numToRead }; } + ScopedRead read (int numToRead) noexcept; /** Replaces prepareToWrite/finishedWrite with a single function. This function returns an object which contains the start indices and @@ -303,7 +303,7 @@ public: } // writeHandle goes out of scope here, finishing the write operation @endcode */ - ScopedWrite write (int numToWrite) noexcept { return { *this, numToWrite }; } + ScopedWrite write (int numToWrite) noexcept; private: //============================================================================== diff --git a/modules/juce_core/files/juce_FileInputStream.h b/modules/juce_core/files/juce_FileInputStream.h index 3af822e0ed..82d39b4a47 100644 --- a/modules/juce_core/files/juce_FileInputStream.h +++ b/modules/juce_core/files/juce_FileInputStream.h @@ -44,7 +44,7 @@ public: explicit FileInputStream (const File& fileToRead); /** Destructor. */ - ~FileInputStream(); + ~FileInputStream() override; //============================================================================== /** Returns the file that this stream is reading from. */ diff --git a/modules/juce_core/files/juce_FileOutputStream.h b/modules/juce_core/files/juce_FileOutputStream.h index 60051b7e6d..c621d4eaf3 100644 --- a/modules/juce_core/files/juce_FileOutputStream.h +++ b/modules/juce_core/files/juce_FileOutputStream.h @@ -67,7 +67,7 @@ public: size_t bufferSizeToUse = 16384); /** Destructor. */ - ~FileOutputStream(); + ~FileOutputStream() override; //============================================================================== /** Returns the file that this stream is writing to. diff --git a/modules/juce_core/files/juce_WildcardFileFilter.h b/modules/juce_core/files/juce_WildcardFileFilter.h index e0335fd2fc..d6f4ce74e8 100644 --- a/modules/juce_core/files/juce_WildcardFileFilter.h +++ b/modules/juce_core/files/juce_WildcardFileFilter.h @@ -57,7 +57,7 @@ public: const String& description); /** Destructor. */ - ~WildcardFileFilter(); + ~WildcardFileFilter() override; //============================================================================== /** Returns true if the filename matches one of the patterns specified. */ diff --git a/modules/juce_core/logging/juce_FileLogger.h b/modules/juce_core/logging/juce_FileLogger.h index 6629f851b2..b6b10745c4 100644 --- a/modules/juce_core/logging/juce_FileLogger.h +++ b/modules/juce_core/logging/juce_FileLogger.h @@ -56,7 +56,7 @@ public: const int64 maxInitialFileSizeBytes = 128 * 1024); /** Destructor. */ - ~FileLogger(); + ~FileLogger() override; //============================================================================== /** Returns the file that this logger is writing to. */ diff --git a/modules/juce_core/maths/juce_BigInteger.cpp b/modules/juce_core/maths/juce_BigInteger.cpp index 6589e55483..dda62ad705 100644 --- a/modules/juce_core/maths/juce_BigInteger.cpp +++ b/modules/juce_core/maths/juce_BigInteger.cpp @@ -171,7 +171,7 @@ uint32* BigInteger::getValues() const noexcept jassert (heapAllocation != nullptr || allocatedSize <= numPreallocatedInts); return heapAllocation != nullptr ? heapAllocation - : (uint32*) preallocated; + : const_cast (preallocated); } uint32* BigInteger::ensureSize (const size_t numVals) diff --git a/modules/juce_core/memory/juce_Memory.h b/modules/juce_core/memory/juce_Memory.h index ebe7012a5f..75d30976c3 100644 --- a/modules/juce_core/memory/juce_Memory.h +++ b/modules/juce_core/memory/juce_Memory.h @@ -44,7 +44,7 @@ inline void deleteAndZero (Type& pointer) { delete poi a specific number of bytes, */ template -inline Type* addBytesToPointer (Type* basePointer, IntegerType bytes) noexcept { return (Type*) (((char*) basePointer) + bytes); } +inline Type* addBytesToPointer (Type* basePointer, IntegerType bytes) noexcept { return (Type*) (const_cast (reinterpret_cast (basePointer)) + bytes); } /** A handy function to round up a pointer to the nearest multiple of a given number of bytes. alignmentBytes must be a power of two. */ diff --git a/modules/juce_core/native/juce_mac_Network.mm b/modules/juce_core/native/juce_mac_Network.mm index 8ea082e4d9..27f21f7538 100644 --- a/modules/juce_core/native/juce_mac_Network.mm +++ b/modules/juce_core/native/juce_mac_Network.mm @@ -37,7 +37,7 @@ void MACAddress::findAllAddresses (Array& result) if (sto.sa_family == AF_LINK) { - auto sadd = (const sockaddr_dl*) cursor->ifa_addr; + auto sadd = reinterpret_cast (cursor->ifa_addr); #ifndef IFT_ETHER enum { IFT_ETHER = 6 }; @@ -127,7 +127,7 @@ public: DelegateClass::setState (delegate, this); } - ~URLConnectionState() + ~URLConnectionState() override { signalThreadShouldExit(); @@ -1096,38 +1096,44 @@ private: { jassert (connection == nullptr); - if (NSMutableURLRequest* req = [NSMutableURLRequest requestWithURL: [NSURL URLWithString: juceStringToNS (url.toString (! isPost))] - cachePolicy: NSURLRequestReloadIgnoringLocalCacheData - timeoutInterval: timeOutMs <= 0 ? 60.0 : (timeOutMs / 1000.0)]) + if (NSURL* nsURL = [NSURL URLWithString: juceStringToNS (url.toString (! isPost))]) { - [req setHTTPMethod: [NSString stringWithUTF8String: httpRequestCmd.toRawUTF8()]]; - - if (isPost) + if (NSMutableURLRequest* req = [NSMutableURLRequest requestWithURL: nsURL + cachePolicy: NSURLRequestReloadIgnoringLocalCacheData + timeoutInterval: timeOutMs <= 0 ? 60.0 : (timeOutMs / 1000.0)]) { - WebInputStream::createHeadersAndPostData (url, headers, postData); + if (NSString* httpMethod = [NSString stringWithUTF8String: httpRequestCmd.toRawUTF8()]) + { + [req setHTTPMethod: httpMethod]; - if (postData.getSize() > 0) - [req setHTTPBody: [NSData dataWithBytes: postData.getData() - length: postData.getSize()]]; - } + if (isPost) + { + WebInputStream::createHeadersAndPostData (url, headers, postData); - StringArray headerLines; - headerLines.addLines (headers); - headerLines.removeEmptyStrings (true); + if (postData.getSize() > 0) + [req setHTTPBody: [NSData dataWithBytes: postData.getData() + length: postData.getSize()]]; + } - for (int i = 0; i < headerLines.size(); ++i) - { - String key = headerLines[i].upToFirstOccurrenceOf (":", false, false).trim(); - String value = headerLines[i].fromFirstOccurrenceOf (":", false, false).trim(); + StringArray headerLines; + headerLines.addLines (headers); + headerLines.removeEmptyStrings (true); - if (key.isNotEmpty() && value.isNotEmpty()) - [req addValue: juceStringToNS (value) forHTTPHeaderField: juceStringToNS (key)]; - } + for (int i = 0; i < headerLines.size(); ++i) + { + auto key = headerLines[i].upToFirstOccurrenceOf (":", false, false).trim(); + auto value = headerLines[i].fromFirstOccurrenceOf (":", false, false).trim(); + + if (key.isNotEmpty() && value.isNotEmpty()) + [req addValue: juceStringToNS (value) forHTTPHeaderField: juceStringToNS (key)]; + } - // Workaround for an Apple bug. See https://github.com/AFNetworking/AFNetworking/issues/2334 - [req HTTPBody]; + // Workaround for an Apple bug. See https://github.com/AFNetworking/AFNetworking/issues/2334 + [req HTTPBody]; - connection.reset (new URLConnectionState (req, numRedirectsToFollow)); + connection.reset (new URLConnectionState (req, numRedirectsToFollow)); + } + } } } diff --git a/modules/juce_core/native/juce_mac_Strings.mm b/modules/juce_core/native/juce_mac_Strings.mm index 40be0e8a19..68f53972fc 100644 --- a/modules/juce_core/native/juce_mac_Strings.mm +++ b/modules/juce_core/native/juce_mac_Strings.mm @@ -92,7 +92,7 @@ String String::convertToPrecomposedUnicode() const bytesNeeded, &bytesRead, &outputBufferSize, tempOut) == noErr) { - result = String (CharPointer_UTF16 ((CharPointer_UTF16::CharType*) tempOut.get())); + result = String (CharPointer_UTF16 (reinterpret_cast (tempOut.get()))); } DisposeUnicodeToTextInfo (&conversionInfo); diff --git a/modules/juce_core/native/juce_posix_IPAddress.h b/modules/juce_core/native/juce_posix_IPAddress.h index f063f50099..9cdb772431 100644 --- a/modules/juce_core/native/juce_posix_IPAddress.h +++ b/modules/juce_core/native/juce_posix_IPAddress.h @@ -71,8 +71,8 @@ namespace { if (ifa->ifa_addr->sa_family == AF_INET) { - auto interfaceAddressInfo = (sockaddr_in*) ifa->ifa_addr; - auto broadcastAddressInfo = (sockaddr_in*) ifa->ifa_dstaddr; + auto interfaceAddressInfo = reinterpret_cast (ifa->ifa_addr); + auto broadcastAddressInfo = reinterpret_cast (ifa->ifa_dstaddr); if (interfaceAddressInfo->sin_addr.s_addr != INADDR_NONE) { @@ -83,8 +83,8 @@ namespace } else if (ifa->ifa_addr->sa_family == AF_INET6) { - interfaceInfo.interfaceAddress = makeAddress ((sockaddr_in6*) ifa->ifa_addr); - interfaceInfo.broadcastAddress = makeAddress ((sockaddr_in6*) ifa->ifa_dstaddr); + interfaceInfo.interfaceAddress = makeAddress (reinterpret_cast (ifa->ifa_addr)); + interfaceInfo.broadcastAddress = makeAddress (reinterpret_cast (ifa->ifa_dstaddr)); return true; } } diff --git a/modules/juce_core/network/juce_URL.cpp b/modules/juce_core/network/juce_URL.cpp index c423a3ce3b..f3b7828992 100644 --- a/modules/juce_core/network/juce_URL.cpp +++ b/modules/juce_core/network/juce_URL.cpp @@ -46,7 +46,7 @@ struct FallbackDownloadTask : public URL::DownloadTask, startThread(); } - ~FallbackDownloadTask() + ~FallbackDownloadTask() override { signalThreadShouldExit(); stream->cancel(); diff --git a/modules/juce_core/network/juce_WebInputStream.h b/modules/juce_core/network/juce_WebInputStream.h index 2d4f0e8a3d..ba2d9d0bce 100644 --- a/modules/juce_core/network/juce_WebInputStream.h +++ b/modules/juce_core/network/juce_WebInputStream.h @@ -50,7 +50,7 @@ class JUCE_API WebInputStream : public InputStream */ WebInputStream (const URL& url, const bool usePost); - ~WebInputStream(); + ~WebInputStream() override; /** Add extra headers to http request diff --git a/modules/juce_core/streams/juce_BufferedInputStream.h b/modules/juce_core/streams/juce_BufferedInputStream.h index acdb2bc877..c1521bcfb5 100644 --- a/modules/juce_core/streams/juce_BufferedInputStream.h +++ b/modules/juce_core/streams/juce_BufferedInputStream.h @@ -61,7 +61,7 @@ public: This may also delete the source stream, if that option was chosen when the buffered stream was created. */ - ~BufferedInputStream(); + ~BufferedInputStream() override; //============================================================================== diff --git a/modules/juce_core/streams/juce_FileInputSource.h b/modules/juce_core/streams/juce_FileInputSource.h index de4d22756f..01e72684f5 100644 --- a/modules/juce_core/streams/juce_FileInputSource.h +++ b/modules/juce_core/streams/juce_FileInputSource.h @@ -43,7 +43,7 @@ public: FileInputSource (const File& file, bool useFileTimeInHashGeneration = false); /** Destructor. */ - ~FileInputSource(); + ~FileInputSource() override; InputStream* createInputStream() override; InputStream* createInputStreamFor (const String& relatedItemPath) override; diff --git a/modules/juce_core/streams/juce_MemoryInputStream.h b/modules/juce_core/streams/juce_MemoryInputStream.h index c565d3c3a2..fc08528f8d 100644 --- a/modules/juce_core/streams/juce_MemoryInputStream.h +++ b/modules/juce_core/streams/juce_MemoryInputStream.h @@ -63,7 +63,7 @@ public: bool keepInternalCopyOfData); /** Destructor. */ - ~MemoryInputStream(); + ~MemoryInputStream() override; /** Returns a pointer to the source data block from which this stream is reading. */ const void* getData() const noexcept { return data; } diff --git a/modules/juce_core/streams/juce_MemoryOutputStream.h b/modules/juce_core/streams/juce_MemoryOutputStream.h index f7b0a2982e..0a2480306e 100644 --- a/modules/juce_core/streams/juce_MemoryOutputStream.h +++ b/modules/juce_core/streams/juce_MemoryOutputStream.h @@ -66,7 +66,7 @@ public: /** Destructor. This will free any data that was written to it. */ - ~MemoryOutputStream(); + ~MemoryOutputStream() override; //============================================================================== /** Returns a pointer to the data that has been written to the stream. diff --git a/modules/juce_core/streams/juce_SubregionStream.h b/modules/juce_core/streams/juce_SubregionStream.h index 1c4ead3353..4b728d0a71 100644 --- a/modules/juce_core/streams/juce_SubregionStream.h +++ b/modules/juce_core/streams/juce_SubregionStream.h @@ -62,7 +62,7 @@ public: This may also delete the source stream, if that option was chosen when the buffered stream was created. */ - ~SubregionStream(); + ~SubregionStream() override; //============================================================================== diff --git a/modules/juce_core/streams/juce_URLInputSource.h b/modules/juce_core/streams/juce_URLInputSource.h index 89f334800a..c30dfa6dc0 100644 --- a/modules/juce_core/streams/juce_URLInputSource.h +++ b/modules/juce_core/streams/juce_URLInputSource.h @@ -45,7 +45,7 @@ public: URLInputSource (URL&& url); /** Destructor. */ - ~URLInputSource(); + ~URLInputSource() override; InputStream* createInputStream() override; InputStream* createInputStreamFor (const String& relatedItemPath) override; diff --git a/modules/juce_core/text/juce_String.cpp b/modules/juce_core/text/juce_String.cpp index 9509dc693d..13f51a4734 100644 --- a/modules/juce_core/text/juce_String.cpp +++ b/modules/juce_core/text/juce_String.cpp @@ -2005,7 +2005,7 @@ String String::createStringFromData (const void* const unknownData, int size) StringCreationHelper builder ((size_t) numChars); - auto src = (const uint16*) (data + 2); + auto src = reinterpret_cast (data + 2); if (CharPointer_UTF16::isByteOrderMarkBigEndian (data)) { @@ -2075,19 +2075,19 @@ struct StringEncodingConverter template <> struct StringEncodingConverter { - static CharPointer_UTF8 convert (const String& source) noexcept { return CharPointer_UTF8 ((CharPointer_UTF8::CharType*) source.getCharPointer().getAddress()); } + static CharPointer_UTF8 convert (const String& source) noexcept { return CharPointer_UTF8 (reinterpret_cast (source.getCharPointer().getAddress())); } }; template <> struct StringEncodingConverter { - static CharPointer_UTF16 convert (const String& source) noexcept { return CharPointer_UTF16 ((CharPointer_UTF16::CharType*) source.getCharPointer().getAddress()); } + static CharPointer_UTF16 convert (const String& source) noexcept { return CharPointer_UTF16 (reinterpret_cast (source.getCharPointer().getAddress())); } }; template <> struct StringEncodingConverter { - static CharPointer_UTF32 convert (const String& source) noexcept { return CharPointer_UTF32 ((CharPointer_UTF32::CharType*) source.getCharPointer().getAddress()); } + static CharPointer_UTF32 convert (const String& source) noexcept { return CharPointer_UTF32 (reinterpret_cast (source.getCharPointer().getAddress())); } }; CharPointer_UTF8 String::toUTF8() const { return StringEncodingConverter::convert (*this); } diff --git a/modules/juce_core/threads/juce_TimeSliceThread.h b/modules/juce_core/threads/juce_TimeSliceThread.h index 108a7349b6..d47994c837 100644 --- a/modules/juce_core/threads/juce_TimeSliceThread.h +++ b/modules/juce_core/threads/juce_TimeSliceThread.h @@ -98,7 +98,7 @@ public: should always call stopThread() with a decent timeout before deleting, to avoid the thread being forcibly killed (which is a Bad Thing). */ - ~TimeSliceThread(); + ~TimeSliceThread() override; //============================================================================== /** Adds a client to the list. diff --git a/modules/juce_core/zip/juce_GZIPCompressorOutputStream.h b/modules/juce_core/zip/juce_GZIPCompressorOutputStream.h index 151c56cdf5..f9a06d9de5 100644 --- a/modules/juce_core/zip/juce_GZIPCompressorOutputStream.h +++ b/modules/juce_core/zip/juce_GZIPCompressorOutputStream.h @@ -72,7 +72,7 @@ public: int windowBits = 0); /** Destructor. */ - ~GZIPCompressorOutputStream(); + ~GZIPCompressorOutputStream() override; //============================================================================== /** Flushes and closes the stream. diff --git a/modules/juce_core/zip/juce_GZIPDecompressorInputStream.h b/modules/juce_core/zip/juce_GZIPDecompressorInputStream.h index 031fad89e8..a5debf30da 100644 --- a/modules/juce_core/zip/juce_GZIPDecompressorInputStream.h +++ b/modules/juce_core/zip/juce_GZIPDecompressorInputStream.h @@ -70,7 +70,7 @@ public: GZIPDecompressorInputStream (InputStream& sourceStream); /** Destructor. */ - ~GZIPDecompressorInputStream(); + ~GZIPDecompressorInputStream() override; //============================================================================== int64 getPosition() override; diff --git a/modules/juce_core/zip/juce_ZipFile.cpp b/modules/juce_core/zip/juce_ZipFile.cpp index 83d8abc1af..c8c7b39f13 100644 --- a/modules/juce_core/zip/juce_ZipFile.cpp +++ b/modules/juce_core/zip/juce_ZipFile.cpp @@ -154,7 +154,7 @@ struct ZipFile::ZipInputStream : public InputStream } } - ~ZipInputStream() + ~ZipInputStream() override { #if JUCE_DEBUG if (inputStream != nullptr && inputStream == file.inputStream) diff --git a/modules/juce_data_structures/app_properties/juce_PropertiesFile.h b/modules/juce_data_structures/app_properties/juce_PropertiesFile.h index aeefba4b6c..8ef3ae0ae7 100644 --- a/modules/juce_data_structures/app_properties/juce_PropertiesFile.h +++ b/modules/juce_data_structures/app_properties/juce_PropertiesFile.h @@ -180,7 +180,7 @@ public: /** Destructor. When deleted, the file will first call saveIfNeeded() to flush any changes to disk. */ - ~PropertiesFile(); + ~PropertiesFile() override; //============================================================================== /** Returns true if this file was created from a valid (or non-existent) file. diff --git a/modules/juce_data_structures/values/juce_Value.h b/modules/juce_data_structures/values/juce_Value.h index aa6fe21dbf..b22cf80c61 100644 --- a/modules/juce_data_structures/values/juce_Value.h +++ b/modules/juce_data_structures/values/juce_Value.h @@ -180,7 +180,7 @@ public: { public: ValueSource(); - virtual ~ValueSource(); + virtual ~ValueSource() override; /** Returns the current value of this object. */ virtual var getValue() const = 0; diff --git a/modules/juce_data_structures/values/juce_ValueTree.cpp b/modules/juce_data_structures/values/juce_ValueTree.cpp index 091f1c5a78..a4ffc0062a 100644 --- a/modules/juce_data_structures/values/juce_ValueTree.cpp +++ b/modules/juce_data_structures/values/juce_ValueTree.cpp @@ -815,7 +815,7 @@ struct ValueTreePropertyValueSource : public Value::ValueSource, tree.addListener (this); } - ~ValueTreePropertyValueSource() + ~ValueTreePropertyValueSource() override { tree.removeListener (this); } diff --git a/modules/juce_data_structures/values/juce_ValueTreeSynchroniser.h b/modules/juce_data_structures/values/juce_ValueTreeSynchroniser.h index 65c152267f..61e73da472 100644 --- a/modules/juce_data_structures/values/juce_ValueTreeSynchroniser.h +++ b/modules/juce_data_structures/values/juce_ValueTreeSynchroniser.h @@ -55,7 +55,7 @@ public: ValueTreeSynchroniser (const ValueTree& tree); /** Destructor. */ - virtual ~ValueTreeSynchroniser(); + ~ValueTreeSynchroniser() override; /** This callback happens when the ValueTree changes and the given state-change message needs to be applied to any other trees that need to stay in sync with it. diff --git a/modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp b/modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp index 88500dce2b..ba8b27aaea 100644 --- a/modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp +++ b/modules/juce_events/interprocess/juce_ConnectedChildProcess.cpp @@ -94,7 +94,7 @@ struct ChildProcessMaster::Connection : public InterprocessConnection, startThread (4); } - ~Connection() + ~Connection() override { stopThread (10000); } @@ -192,7 +192,7 @@ struct ChildProcessSlave::Connection : public InterprocessConnection, startThread (4); } - ~Connection() + ~Connection() override { stopThread (10000); } diff --git a/modules/juce_events/interprocess/juce_InterprocessConnectionServer.h b/modules/juce_events/interprocess/juce_InterprocessConnectionServer.h index de04682392..2df7439e32 100644 --- a/modules/juce_events/interprocess/juce_InterprocessConnectionServer.h +++ b/modules/juce_events/interprocess/juce_InterprocessConnectionServer.h @@ -45,7 +45,7 @@ public: InterprocessConnectionServer(); /** Destructor. */ - ~InterprocessConnectionServer(); + ~InterprocessConnectionServer() override; //============================================================================== /** Starts an internal thread which listens on the given port number. diff --git a/modules/juce_events/interprocess/juce_NetworkServiceDiscovery.h b/modules/juce_events/interprocess/juce_NetworkServiceDiscovery.h index 63e3e4f657..c5dd99cb8c 100644 --- a/modules/juce_events/interprocess/juce_NetworkServiceDiscovery.h +++ b/modules/juce_events/interprocess/juce_NetworkServiceDiscovery.h @@ -53,7 +53,7 @@ struct NetworkServiceDiscovery RelativeTime minTimeBetweenBroadcasts = RelativeTime::seconds (1.5)); /** Destructor */ - ~Advertiser(); + ~Advertiser() override; private: XmlElement message; @@ -101,7 +101,7 @@ struct NetworkServiceDiscovery AvailableServiceList (const String& serviceTypeUID, int broadcastPort); /** Destructor */ - ~AvailableServiceList(); + ~AvailableServiceList() override; /** A lambda that can be set to recieve a callback when the list changes */ std::function onChange; diff --git a/modules/juce_events/messages/juce_Message.h b/modules/juce_events/messages/juce_Message.h index cdd79de331..8218bf404a 100644 --- a/modules/juce_events/messages/juce_Message.h +++ b/modules/juce_events/messages/juce_Message.h @@ -46,7 +46,7 @@ public: //============================================================================== /** Creates an uninitialised message. */ Message() noexcept; - ~Message(); + ~Message() override; using Ptr = ReferenceCountedObjectPtr; diff --git a/modules/juce_events/messages/juce_MessageManager.cpp b/modules/juce_events/messages/juce_MessageManager.cpp index 81ecbba31f..ee83d2f981 100644 --- a/modules/juce_events/messages/juce_MessageManager.cpp +++ b/modules/juce_events/messages/juce_MessageManager.cpp @@ -433,7 +433,7 @@ bool MessageManagerLock::attemptLock (Thread* threadToCheck, ThreadPoolJob* jobT return true; } -MessageManagerLock::~MessageManagerLock() noexcept { mmLock.exit(); } +MessageManagerLock::~MessageManagerLock() { mmLock.exit(); } void MessageManagerLock::exitSignalSent() { diff --git a/modules/juce_events/messages/juce_MessageManager.h b/modules/juce_events/messages/juce_MessageManager.h index 4518cb4066..901d006a16 100644 --- a/modules/juce_events/messages/juce_MessageManager.h +++ b/modules/juce_events/messages/juce_MessageManager.h @@ -452,7 +452,7 @@ public: Make sure this object is created and deleted by the same thread, otherwise there are no guarantees what will happen! */ - ~MessageManagerLock() noexcept; + ~MessageManagerLock() override; //============================================================================== /** Returns true if the lock was successfully acquired. diff --git a/modules/juce_events/native/juce_mac_MessageManager.mm b/modules/juce_events/native/juce_mac_MessageManager.mm index 01463e8da1..a132278d6d 100644 --- a/modules/juce_events/native/juce_mac_MessageManager.mm +++ b/modules/juce_events/native/juce_mac_MessageManager.mm @@ -454,7 +454,7 @@ void __attribute__ ((visibility("default"))) repostCurrentNSEvent() struct EventReposter : public CallbackMessage { EventReposter() : e ([[NSApp currentEvent] retain]) {} - ~EventReposter() { [e release]; } + ~EventReposter() override { [e release]; } void messageCallback() override { diff --git a/modules/juce_events/timers/juce_Timer.cpp b/modules/juce_events/timers/juce_Timer.cpp index a989c89b0d..9ec3958f30 100644 --- a/modules/juce_events/timers/juce_Timer.cpp +++ b/modules/juce_events/timers/juce_Timer.cpp @@ -36,7 +36,7 @@ public: triggerAsyncUpdate(); } - ~TimerThread() noexcept + ~TimerThread() override { signalThreadShouldExit(); callbackArrived.signal(); diff --git a/modules/juce_graphics/colour/juce_PixelFormats.h b/modules/juce_graphics/colour/juce_PixelFormats.h index 69a66e4c9c..c57ad53c63 100644 --- a/modules/juce_graphics/colour/juce_PixelFormats.h +++ b/modules/juce_graphics/colour/juce_PixelFormats.h @@ -315,8 +315,7 @@ public: private: //============================================================================== - PixelARGB (const uint32 internalValue) noexcept - : internal (internalValue) + PixelARGB (uint32 internalValue) noexcept : internal (internalValue) { } @@ -378,9 +377,9 @@ public: forcedinline uint32 getNativeARGB() const noexcept { #if JUCE_ANDROID - return (uint32) ((0xff << 24) | r | (g << 8) | (b << 16)); + return (uint32) ((0xffu << 24) | r | ((uint32) g << 8) | ((uint32) b << 16)); #else - return (uint32) ((0xff << 24) | b | (g << 8) | (r << 16)); + return (uint32) ((0xffu << 24) | b | ((uint32) g << 8) | ((uint32) r << 16)); #endif } @@ -389,7 +388,7 @@ public: forcedinline uint32 getInARGBMaskOrder() const noexcept { #if JUCE_ANDROID - return (uint32) ((0xff << 24) | (r << 16) | (g << 8) | (b << 0)); + return (uint32) ((0xffu << 24) | b | ((uint32) g << 8) | ((uint32) r << 16)); #else return getNativeARGB(); #endif diff --git a/modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h b/modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h index 82ab607afc..fdda3d81b8 100644 --- a/modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h +++ b/modules/juce_graphics/contexts/juce_LowLevelGraphicsPostScriptRenderer.h @@ -43,7 +43,7 @@ public: int totalWidth, int totalHeight); - ~LowLevelGraphicsPostScriptRenderer(); + ~LowLevelGraphicsPostScriptRenderer() override; //============================================================================== bool isVectorDevice() const override; diff --git a/modules/juce_graphics/effects/juce_DropShadowEffect.h b/modules/juce_graphics/effects/juce_DropShadowEffect.h index ee5d38f56c..574e284812 100644 --- a/modules/juce_graphics/effects/juce_DropShadowEffect.h +++ b/modules/juce_graphics/effects/juce_DropShadowEffect.h @@ -93,7 +93,7 @@ public: DropShadowEffect(); /** Destructor. */ - ~DropShadowEffect(); + ~DropShadowEffect() override; //============================================================================== /** Sets up parameters affecting the shadow's appearance. */ diff --git a/modules/juce_graphics/effects/juce_GlowEffect.h b/modules/juce_graphics/effects/juce_GlowEffect.h index 5fb80138c8..e391ab34bc 100644 --- a/modules/juce_graphics/effects/juce_GlowEffect.h +++ b/modules/juce_graphics/effects/juce_GlowEffect.h @@ -47,7 +47,7 @@ public: GlowEffect(); /** Destructor. */ - ~GlowEffect(); + ~GlowEffect() override; //============================================================================== /** Sets the glow's radius and colour. diff --git a/modules/juce_graphics/fonts/juce_CustomTypeface.h b/modules/juce_graphics/fonts/juce_CustomTypeface.h index 4794d58f8a..b0eb86c558 100644 --- a/modules/juce_graphics/fonts/juce_CustomTypeface.h +++ b/modules/juce_graphics/fonts/juce_CustomTypeface.h @@ -65,7 +65,7 @@ public: explicit CustomTypeface (InputStream& serialisedTypefaceStream); /** Destructor. */ - ~CustomTypeface(); + ~CustomTypeface() override; //============================================================================== /** Resets this typeface, deleting all its glyphs and settings. */ diff --git a/modules/juce_graphics/images/juce_Image.h b/modules/juce_graphics/images/juce_Image.h index 5fb5818ed0..3e077926b7 100644 --- a/modules/juce_graphics/images/juce_Image.h +++ b/modules/juce_graphics/images/juce_Image.h @@ -528,7 +528,7 @@ class JUCE_API SoftwareImageType : public ImageType { public: SoftwareImageType(); - ~SoftwareImageType(); + ~SoftwareImageType() override; ImagePixelData::Ptr create (Image::PixelFormat, int width, int height, bool clearImage) const override; int getTypeID() const override; @@ -546,7 +546,7 @@ class JUCE_API NativeImageType : public ImageType { public: NativeImageType(); - ~NativeImageType(); + ~NativeImageType() override; ImagePixelData::Ptr create (Image::PixelFormat, int width, int height, bool clearImage) const override; int getTypeID() const override; diff --git a/modules/juce_graphics/images/juce_ImageCache.cpp b/modules/juce_graphics/images/juce_ImageCache.cpp index a2fce16afe..fed286cc18 100644 --- a/modules/juce_graphics/images/juce_ImageCache.cpp +++ b/modules/juce_graphics/images/juce_ImageCache.cpp @@ -31,7 +31,7 @@ struct ImageCache::Pimpl : private Timer, private DeletedAtShutdown { Pimpl() {} - ~Pimpl() { clearSingletonInstance(); } + ~Pimpl() override { clearSingletonInstance(); } JUCE_DECLARE_SINGLETON_SINGLETHREADED_MINIMAL (ImageCache::Pimpl) diff --git a/modules/juce_graphics/images/juce_ImageFileFormat.h b/modules/juce_graphics/images/juce_ImageFileFormat.h index 4dda5c20c6..84e658820c 100644 --- a/modules/juce_graphics/images/juce_ImageFileFormat.h +++ b/modules/juce_graphics/images/juce_ImageFileFormat.h @@ -153,7 +153,7 @@ class JUCE_API PNGImageFormat : public ImageFileFormat public: //============================================================================== PNGImageFormat(); - ~PNGImageFormat(); + ~PNGImageFormat() override; //============================================================================== String getFormatName() override; @@ -177,7 +177,7 @@ class JUCE_API JPEGImageFormat : public ImageFileFormat public: //============================================================================== JPEGImageFormat(); - ~JPEGImageFormat(); + ~JPEGImageFormat() override; //============================================================================== /** Specifies the quality to be used when writing a JPEG file. @@ -211,7 +211,7 @@ class JUCE_API GIFImageFormat : public ImageFileFormat public: //============================================================================== GIFImageFormat(); - ~GIFImageFormat(); + ~GIFImageFormat() override; //============================================================================== String getFormatName() override; diff --git a/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.h b/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.h index bf9a0f5b64..0309f6e3d2 100644 --- a/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.h +++ b/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.h @@ -32,7 +32,7 @@ class CoreGraphicsContext : public LowLevelGraphicsContext { public: CoreGraphicsContext (CGContextRef context, float flipHeight, float targetScale); - ~CoreGraphicsContext(); + ~CoreGraphicsContext() override; //============================================================================== bool isVectorDevice() const override { return false; } diff --git a/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm b/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm index ec9b3457ea..46afd11989 100644 --- a/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm +++ b/modules/juce_graphics/native/juce_mac_CoreGraphicsContext.mm @@ -111,7 +111,7 @@ public: CGColorSpaceRelease (colourSpace); } - ~CoreGraphicsImage() + ~CoreGraphicsImage() override { freeCachedImageRef(); CGContextRelease (context); diff --git a/modules/juce_graphics/native/juce_mac_Fonts.mm b/modules/juce_graphics/native/juce_mac_Fonts.mm index 93d009b6de..ef3024089d 100644 --- a/modules/juce_graphics/native/juce_mac_Fonts.mm +++ b/modules/juce_graphics/native/juce_mac_Fonts.mm @@ -551,7 +551,7 @@ public: CFRelease (numberRef); } - ~OSXTypeface() + ~OSXTypeface() override { if (attributedStringAtts != nullptr) CFRelease (attributedStringAtts); diff --git a/modules/juce_gui_basics/application/juce_Application.h b/modules/juce_gui_basics/application/juce_Application.h index fb4c2981d7..ca95913d8d 100644 --- a/modules/juce_gui_basics/application/juce_Application.h +++ b/modules/juce_gui_basics/application/juce_Application.h @@ -107,7 +107,7 @@ public: JUCE code in there - put your startup/shutdown code in initialise() and shutdown() instead. */ - ~JUCEApplication(); + ~JUCEApplication() override; //============================================================================== /** Returns the global instance of the application object being run. */ diff --git a/modules/juce_gui_basics/buttons/juce_ArrowButton.h b/modules/juce_gui_basics/buttons/juce_ArrowButton.h index 9c60b93d97..c7b1f4882e 100644 --- a/modules/juce_gui_basics/buttons/juce_ArrowButton.h +++ b/modules/juce_gui_basics/buttons/juce_ArrowButton.h @@ -51,7 +51,7 @@ public: Colour arrowColour); /** Destructor. */ - ~ArrowButton(); + ~ArrowButton() override; /** @internal */ void paintButton (Graphics&, bool, bool) override; diff --git a/modules/juce_gui_basics/buttons/juce_Button.h b/modules/juce_gui_basics/buttons/juce_Button.h index e6eb39bd0f..8c71a4ac58 100644 --- a/modules/juce_gui_basics/buttons/juce_Button.h +++ b/modules/juce_gui_basics/buttons/juce_Button.h @@ -54,7 +54,7 @@ protected: public: /** Destructor. */ - virtual ~Button(); + virtual ~Button() override; //============================================================================== /** Changes the button's text. diff --git a/modules/juce_gui_basics/buttons/juce_DrawableButton.h b/modules/juce_gui_basics/buttons/juce_DrawableButton.h index cd614371d0..9758a94a9f 100644 --- a/modules/juce_gui_basics/buttons/juce_DrawableButton.h +++ b/modules/juce_gui_basics/buttons/juce_DrawableButton.h @@ -68,7 +68,7 @@ public: ButtonStyle buttonStyle); /** Destructor. */ - ~DrawableButton(); + ~DrawableButton() override; //============================================================================== /** Sets up the images to draw for the various button states. diff --git a/modules/juce_gui_basics/buttons/juce_HyperlinkButton.h b/modules/juce_gui_basics/buttons/juce_HyperlinkButton.h index 3bc9ba5526..2ba68b689c 100644 --- a/modules/juce_gui_basics/buttons/juce_HyperlinkButton.h +++ b/modules/juce_gui_basics/buttons/juce_HyperlinkButton.h @@ -54,7 +54,7 @@ public: HyperlinkButton(); /** Destructor. */ - ~HyperlinkButton(); + ~HyperlinkButton() override; //============================================================================== /** Changes the font to use for the text. diff --git a/modules/juce_gui_basics/buttons/juce_ImageButton.h b/modules/juce_gui_basics/buttons/juce_ImageButton.h index 95fc89cc74..2703d7d66c 100644 --- a/modules/juce_gui_basics/buttons/juce_ImageButton.h +++ b/modules/juce_gui_basics/buttons/juce_ImageButton.h @@ -52,7 +52,7 @@ public: explicit ImageButton (const String& name = String()); /** Destructor. */ - ~ImageButton(); + ~ImageButton() override; //============================================================================== /** Sets up the images to draw in various states. diff --git a/modules/juce_gui_basics/buttons/juce_ShapeButton.h b/modules/juce_gui_basics/buttons/juce_ShapeButton.h index 13a0247431..609df7b589 100644 --- a/modules/juce_gui_basics/buttons/juce_ShapeButton.h +++ b/modules/juce_gui_basics/buttons/juce_ShapeButton.h @@ -52,7 +52,7 @@ public: Colour downColour); /** Destructor. */ - ~ShapeButton(); + ~ShapeButton() override; //============================================================================== /** Sets the shape to use. diff --git a/modules/juce_gui_basics/buttons/juce_TextButton.h b/modules/juce_gui_basics/buttons/juce_TextButton.h index 12186a8040..b5811cbc6c 100644 --- a/modules/juce_gui_basics/buttons/juce_TextButton.h +++ b/modules/juce_gui_basics/buttons/juce_TextButton.h @@ -59,7 +59,7 @@ public: TextButton (const String& buttonName, const String& toolTip); /** Destructor. */ - ~TextButton(); + ~TextButton() override; //============================================================================== /** A set of colour IDs to use to change the colour of various aspects of the button. diff --git a/modules/juce_gui_basics/buttons/juce_ToggleButton.h b/modules/juce_gui_basics/buttons/juce_ToggleButton.h index b7c502e6f3..3282a64a50 100644 --- a/modules/juce_gui_basics/buttons/juce_ToggleButton.h +++ b/modules/juce_gui_basics/buttons/juce_ToggleButton.h @@ -54,7 +54,7 @@ public: explicit ToggleButton (const String& buttonText); /** Destructor. */ - ~ToggleButton(); + ~ToggleButton() override; //============================================================================== /** Resizes the button to fit neatly around its current text. diff --git a/modules/juce_gui_basics/buttons/juce_ToolbarButton.h b/modules/juce_gui_basics/buttons/juce_ToolbarButton.h index e18ea02009..a875e500b4 100644 --- a/modules/juce_gui_basics/buttons/juce_ToolbarButton.h +++ b/modules/juce_gui_basics/buttons/juce_ToolbarButton.h @@ -66,7 +66,7 @@ public: Drawable* toggledOnImage); /** Destructor. */ - ~ToolbarButton(); + ~ToolbarButton() override; //============================================================================== diff --git a/modules/juce_gui_basics/commands/juce_ApplicationCommandManager.h b/modules/juce_gui_basics/commands/juce_ApplicationCommandManager.h index 961a5d0f70..03b16c45c6 100644 --- a/modules/juce_gui_basics/commands/juce_ApplicationCommandManager.h +++ b/modules/juce_gui_basics/commands/juce_ApplicationCommandManager.h @@ -102,7 +102,7 @@ public: Make sure that you don't delete this if pointers to it are still being used by objects such as PopupMenus or Buttons. */ - virtual ~ApplicationCommandManager(); + virtual ~ApplicationCommandManager() override; //============================================================================== /** Clears the current list of all commands. diff --git a/modules/juce_gui_basics/commands/juce_KeyPressMappingSet.h b/modules/juce_gui_basics/commands/juce_KeyPressMappingSet.h index 43f9063fb1..f4a0abe576 100644 --- a/modules/juce_gui_basics/commands/juce_KeyPressMappingSet.h +++ b/modules/juce_gui_basics/commands/juce_KeyPressMappingSet.h @@ -108,7 +108,7 @@ public: KeyPressMappingSet (const KeyPressMappingSet&); /** Destructor. */ - ~KeyPressMappingSet(); + ~KeyPressMappingSet() override; //============================================================================== ApplicationCommandManager& getCommandManager() const noexcept { return commandManager; } diff --git a/modules/juce_gui_basics/components/juce_Component.h b/modules/juce_gui_basics/components/juce_Component.h index d711d94428..255dc3f4f4 100644 --- a/modules/juce_gui_basics/components/juce_Component.h +++ b/modules/juce_gui_basics/components/juce_Component.h @@ -63,7 +63,7 @@ public: callback. Any ComponentListener objects that have registered with it will also have their ComponentListener::componentBeingDeleted() methods called. */ - virtual ~Component(); + ~Component() override; //============================================================================== /** Creates a component, setting its name at the same time. diff --git a/modules/juce_gui_basics/components/juce_ModalComponentManager.h b/modules/juce_gui_basics/components/juce_ModalComponentManager.h index 631bc803fa..0845197252 100644 --- a/modules/juce_gui_basics/components/juce_ModalComponentManager.h +++ b/modules/juce_gui_basics/components/juce_ModalComponentManager.h @@ -134,7 +134,7 @@ protected: ModalComponentManager(); /** Destructor. */ - ~ModalComponentManager(); + ~ModalComponentManager() override; /** @internal */ void handleAsyncUpdate() override; diff --git a/modules/juce_gui_basics/desktop/juce_Desktop.h b/modules/juce_gui_basics/desktop/juce_Desktop.h index 1b66a67708..3cf790f0c6 100644 --- a/modules/juce_gui_basics/desktop/juce_Desktop.h +++ b/modules/juce_gui_basics/desktop/juce_Desktop.h @@ -408,7 +408,7 @@ private: static double getDefaultMasterScale(); Desktop(); - ~Desktop(); + ~Desktop() override; JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (Desktop) }; diff --git a/modules/juce_gui_basics/drawables/juce_Drawable.h b/modules/juce_gui_basics/drawables/juce_Drawable.h index 1c86c6f60d..c687476be8 100644 --- a/modules/juce_gui_basics/drawables/juce_Drawable.h +++ b/modules/juce_gui_basics/drawables/juce_Drawable.h @@ -47,7 +47,7 @@ protected: public: /** Destructor. */ - virtual ~Drawable(); + virtual ~Drawable() override; //============================================================================== /** Creates a deep copy of this Drawable object. diff --git a/modules/juce_gui_basics/drawables/juce_DrawableComposite.h b/modules/juce_gui_basics/drawables/juce_DrawableComposite.h index 7e7ec89874..593a7dbaa5 100644 --- a/modules/juce_gui_basics/drawables/juce_DrawableComposite.h +++ b/modules/juce_gui_basics/drawables/juce_DrawableComposite.h @@ -51,7 +51,7 @@ public: DrawableComposite (const DrawableComposite&); /** Destructor. */ - ~DrawableComposite(); + ~DrawableComposite() override; //============================================================================== /** Sets the parallelogram that defines the target position of the content rectangle when the drawable is rendered. diff --git a/modules/juce_gui_basics/drawables/juce_DrawableImage.h b/modules/juce_gui_basics/drawables/juce_DrawableImage.h index 6828d1ead7..b6e7a23c5e 100644 --- a/modules/juce_gui_basics/drawables/juce_DrawableImage.h +++ b/modules/juce_gui_basics/drawables/juce_DrawableImage.h @@ -43,7 +43,7 @@ public: DrawableImage (const DrawableImage&); /** Destructor. */ - ~DrawableImage(); + ~DrawableImage() override; //============================================================================== /** Sets the image that this drawable will render. */ diff --git a/modules/juce_gui_basics/drawables/juce_DrawablePath.h b/modules/juce_gui_basics/drawables/juce_DrawablePath.h index 575e5c9913..38499d3b1a 100644 --- a/modules/juce_gui_basics/drawables/juce_DrawablePath.h +++ b/modules/juce_gui_basics/drawables/juce_DrawablePath.h @@ -46,7 +46,7 @@ public: DrawablePath (const DrawablePath&); /** Destructor. */ - ~DrawablePath(); + ~DrawablePath() override; //============================================================================== /** Changes the path that will be drawn. diff --git a/modules/juce_gui_basics/drawables/juce_DrawableRectangle.h b/modules/juce_gui_basics/drawables/juce_DrawableRectangle.h index d3eae4f7a8..43076a2c99 100644 --- a/modules/juce_gui_basics/drawables/juce_DrawableRectangle.h +++ b/modules/juce_gui_basics/drawables/juce_DrawableRectangle.h @@ -45,7 +45,7 @@ public: DrawableRectangle (const DrawableRectangle&); /** Destructor. */ - ~DrawableRectangle(); + ~DrawableRectangle() override; //============================================================================== /** Sets the rectangle's bounds. */ diff --git a/modules/juce_gui_basics/drawables/juce_DrawableShape.h b/modules/juce_gui_basics/drawables/juce_DrawableShape.h index 70983ee805..53ae27937a 100644 --- a/modules/juce_gui_basics/drawables/juce_DrawableShape.h +++ b/modules/juce_gui_basics/drawables/juce_DrawableShape.h @@ -45,7 +45,7 @@ protected: public: /** Destructor. */ - ~DrawableShape(); + ~DrawableShape() override; //============================================================================== /** Sets a fill type for the path. diff --git a/modules/juce_gui_basics/drawables/juce_DrawableText.h b/modules/juce_gui_basics/drawables/juce_DrawableText.h index 498dc7cf18..13ab956d7f 100644 --- a/modules/juce_gui_basics/drawables/juce_DrawableText.h +++ b/modules/juce_gui_basics/drawables/juce_DrawableText.h @@ -44,7 +44,7 @@ public: DrawableText (const DrawableText&); /** Destructor. */ - ~DrawableText(); + ~DrawableText() override; //============================================================================== /** Sets the text to display.*/ diff --git a/modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.h b/modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.h index c65b077723..69b7686478 100644 --- a/modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.h +++ b/modules/juce_gui_basics/filebrowser/juce_DirectoryContentsList.h @@ -66,7 +66,7 @@ public: TimeSliceThread& threadToUse); /** Destructor. */ - ~DirectoryContentsList(); + ~DirectoryContentsList() override; //============================================================================== diff --git a/modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.h b/modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.h index fe98a9f242..2b77b69a23 100644 --- a/modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.h +++ b/modules/juce_gui_basics/filebrowser/juce_FileBrowserComponent.h @@ -88,7 +88,7 @@ public: FilePreviewComponent* previewComp); /** Destructor. */ - ~FileBrowserComponent(); + ~FileBrowserComponent() override; //============================================================================== /** Returns the number of files that the user has got selected. diff --git a/modules/juce_gui_basics/filebrowser/juce_FileChooser.cpp b/modules/juce_gui_basics/filebrowser/juce_FileChooser.cpp index 4325ef864b..913e2b7ad0 100644 --- a/modules/juce_gui_basics/filebrowser/juce_FileChooser.cpp +++ b/modules/juce_gui_basics/filebrowser/juce_FileChooser.cpp @@ -43,7 +43,7 @@ public: browserComponent.findColour (AlertWindow::backgroundColourId), owner.parent) {} - ~NonNative() + ~NonNative() override { dialogBox.exitModalState (0); } diff --git a/modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.h b/modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.h index 68159c3d02..c6f3b02ab6 100644 --- a/modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.h +++ b/modules/juce_gui_basics/filebrowser/juce_FileChooserDialogBox.h @@ -97,7 +97,7 @@ public: Component* parentComponent = nullptr); /** Destructor. */ - ~FileChooserDialogBox(); + ~FileChooserDialogBox() override; //============================================================================== #if JUCE_MODAL_LOOPS_PERMITTED diff --git a/modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp b/modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp index 11623e46ad..b3e0376c87 100644 --- a/modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp +++ b/modules/juce_gui_basics/filebrowser/juce_FileListComponent.cpp @@ -109,7 +109,7 @@ public: { } - ~ItemComponent() + ~ItemComponent() override { thread.removeTimeSliceClient (this); } diff --git a/modules/juce_gui_basics/filebrowser/juce_FileListComponent.h b/modules/juce_gui_basics/filebrowser/juce_FileListComponent.h index 04bcab080e..c57317b677 100644 --- a/modules/juce_gui_basics/filebrowser/juce_FileListComponent.h +++ b/modules/juce_gui_basics/filebrowser/juce_FileListComponent.h @@ -52,7 +52,7 @@ public: FileListComponent (DirectoryContentsList& listToShow); /** Destructor. */ - ~FileListComponent(); + ~FileListComponent() override; //============================================================================== /** Returns the number of files the user has got selected. diff --git a/modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.h b/modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.h index 32b87bc5cf..7033af38a5 100644 --- a/modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.h +++ b/modules/juce_gui_basics/filebrowser/juce_FileSearchPathListComponent.h @@ -47,7 +47,7 @@ public: FileSearchPathListComponent(); /** Destructor. */ - ~FileSearchPathListComponent(); + ~FileSearchPathListComponent() override; //============================================================================== /** Returns the path as it is currently shown. */ diff --git a/modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.cpp b/modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.cpp index c4a7722ec0..f1a3c300cb 100644 --- a/modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.cpp +++ b/modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.cpp @@ -63,7 +63,7 @@ public: } } - ~FileListTreeItem() + ~FileListTreeItem() override { thread.removeTimeSliceClient (this); clearSubItems(); diff --git a/modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.h b/modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.h index 998d08ed4a..93cbd48d80 100644 --- a/modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.h +++ b/modules/juce_gui_basics/filebrowser/juce_FileTreeComponent.h @@ -51,7 +51,7 @@ public: FileTreeComponent (DirectoryContentsList& listToShow); /** Destructor. */ - ~FileTreeComponent(); + ~FileTreeComponent() override; //============================================================================== /** Returns the number of files the user has got selected. diff --git a/modules/juce_gui_basics/filebrowser/juce_FilenameComponent.h b/modules/juce_gui_basics/filebrowser/juce_FilenameComponent.h index 4a21a573b1..7e773a9ba5 100644 --- a/modules/juce_gui_basics/filebrowser/juce_FilenameComponent.h +++ b/modules/juce_gui_basics/filebrowser/juce_FilenameComponent.h @@ -100,7 +100,7 @@ public: const String& textWhenNothingSelected); /** Destructor. */ - ~FilenameComponent(); + ~FilenameComponent() override; //============================================================================== /** Returns the currently displayed filename. */ diff --git a/modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.h b/modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.h index 9b31e6693e..79c88c4204 100644 --- a/modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.h +++ b/modules/juce_gui_basics/filebrowser/juce_ImagePreviewComponent.h @@ -44,7 +44,7 @@ public: ImagePreviewComponent(); /** Destructor. */ - ~ImagePreviewComponent(); + ~ImagePreviewComponent() override; //============================================================================== diff --git a/modules/juce_gui_basics/keyboard/juce_CaretComponent.h b/modules/juce_gui_basics/keyboard/juce_CaretComponent.h index 2fb9394641..2ceaa61bf1 100644 --- a/modules/juce_gui_basics/keyboard/juce_CaretComponent.h +++ b/modules/juce_gui_basics/keyboard/juce_CaretComponent.h @@ -44,7 +44,7 @@ public: CaretComponent (Component* keyFocusOwner); /** Destructor. */ - ~CaretComponent(); + ~CaretComponent() override; //============================================================================== /** Sets the caret's position to place it next to the given character. diff --git a/modules/juce_gui_basics/layout/juce_ComponentAnimator.h b/modules/juce_gui_basics/layout/juce_ComponentAnimator.h index 0f42d012fc..e6f2be8b5e 100644 --- a/modules/juce_gui_basics/layout/juce_ComponentAnimator.h +++ b/modules/juce_gui_basics/layout/juce_ComponentAnimator.h @@ -59,7 +59,7 @@ public: ComponentAnimator(); /** Destructor. */ - ~ComponentAnimator(); + ~ComponentAnimator() override; //============================================================================== /** Starts a component moving from its current position to a specified position. diff --git a/modules/juce_gui_basics/layout/juce_ComponentBuilder.h b/modules/juce_gui_basics/layout/juce_ComponentBuilder.h index dd8acc37f2..b2be38b5f3 100644 --- a/modules/juce_gui_basics/layout/juce_ComponentBuilder.h +++ b/modules/juce_gui_basics/layout/juce_ComponentBuilder.h @@ -59,7 +59,7 @@ public: ComponentBuilder(); /** Destructor. */ - ~ComponentBuilder(); + ~ComponentBuilder() override; /** This is the ValueTree data object that the builder is working with. */ ValueTree state; diff --git a/modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.h b/modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.h index daa1f7fb54..0e3107bbc5 100644 --- a/modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.h +++ b/modules/juce_gui_basics/layout/juce_ComponentMovementWatcher.h @@ -52,7 +52,7 @@ public: ComponentMovementWatcher (Component* componentToWatch); /** Destructor. */ - ~ComponentMovementWatcher(); + ~ComponentMovementWatcher() override; //============================================================================== /** This callback happens when the component that is being watched is moved diff --git a/modules/juce_gui_basics/layout/juce_ConcertinaPanel.h b/modules/juce_gui_basics/layout/juce_ConcertinaPanel.h index 83968347aa..8298ce85d5 100644 --- a/modules/juce_gui_basics/layout/juce_ConcertinaPanel.h +++ b/modules/juce_gui_basics/layout/juce_ConcertinaPanel.h @@ -46,7 +46,7 @@ public: ConcertinaPanel(); /** Destructor. */ - ~ConcertinaPanel(); + ~ConcertinaPanel() override; /** Adds a component to the panel. @param insertIndex the index at which this component will be inserted, or diff --git a/modules/juce_gui_basics/layout/juce_GroupComponent.h b/modules/juce_gui_basics/layout/juce_GroupComponent.h index 46c3b6923d..2df67d94a0 100644 --- a/modules/juce_gui_basics/layout/juce_GroupComponent.h +++ b/modules/juce_gui_basics/layout/juce_GroupComponent.h @@ -48,7 +48,7 @@ public: const String& labelText = String()); /** Destructor. */ - ~GroupComponent(); + ~GroupComponent() override; //============================================================================== /** Changes the text that's shown at the top of the component. */ diff --git a/modules/juce_gui_basics/layout/juce_MultiDocumentPanel.h b/modules/juce_gui_basics/layout/juce_MultiDocumentPanel.h index 454480d56b..c1b1f8bde7 100644 --- a/modules/juce_gui_basics/layout/juce_MultiDocumentPanel.h +++ b/modules/juce_gui_basics/layout/juce_MultiDocumentPanel.h @@ -51,7 +51,7 @@ public: MultiDocumentPanelWindow (Colour backgroundColour); /** Destructor. */ - ~MultiDocumentPanelWindow(); + ~MultiDocumentPanelWindow() override; //============================================================================== /** @internal */ @@ -106,7 +106,7 @@ public: before closing, then you should call closeAllDocuments (true) and check that it returns true before deleting the panel. */ - ~MultiDocumentPanel(); + ~MultiDocumentPanel() override; //============================================================================== /** Tries to close all the documents. diff --git a/modules/juce_gui_basics/layout/juce_ResizableBorderComponent.h b/modules/juce_gui_basics/layout/juce_ResizableBorderComponent.h index 5a86c4f5bd..9e9c456d33 100644 --- a/modules/juce_gui_basics/layout/juce_ResizableBorderComponent.h +++ b/modules/juce_gui_basics/layout/juce_ResizableBorderComponent.h @@ -70,7 +70,7 @@ public: ComponentBoundsConstrainer* constrainer); /** Destructor. */ - ~ResizableBorderComponent(); + ~ResizableBorderComponent() override; //============================================================================== diff --git a/modules/juce_gui_basics/layout/juce_ResizableCornerComponent.h b/modules/juce_gui_basics/layout/juce_ResizableCornerComponent.h index e8754666c7..c77c85c2b7 100644 --- a/modules/juce_gui_basics/layout/juce_ResizableCornerComponent.h +++ b/modules/juce_gui_basics/layout/juce_ResizableCornerComponent.h @@ -65,7 +65,7 @@ public: ComponentBoundsConstrainer* constrainer); /** Destructor. */ - ~ResizableCornerComponent(); + ~ResizableCornerComponent() override; protected: diff --git a/modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.h b/modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.h index 757d7bca1e..f66549a103 100644 --- a/modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.h +++ b/modules/juce_gui_basics/layout/juce_ResizableEdgeComponent.h @@ -74,7 +74,7 @@ public: Edge edgeToResize); /** Destructor. */ - ~ResizableEdgeComponent(); + ~ResizableEdgeComponent() override; bool isVertical() const noexcept; diff --git a/modules/juce_gui_basics/layout/juce_ScrollBar.h b/modules/juce_gui_basics/layout/juce_ScrollBar.h index 038a86558b..0642f881df 100644 --- a/modules/juce_gui_basics/layout/juce_ScrollBar.h +++ b/modules/juce_gui_basics/layout/juce_ScrollBar.h @@ -61,7 +61,7 @@ public: ScrollBar (bool isVertical); /** Destructor. */ - ~ScrollBar(); + ~ScrollBar() override; //============================================================================== /** Returns true if the scrollbar is vertical, false if it's horizontal. */ diff --git a/modules/juce_gui_basics/layout/juce_SidePanel.h b/modules/juce_gui_basics/layout/juce_SidePanel.h index 510235cdf0..03d6c0def1 100644 --- a/modules/juce_gui_basics/layout/juce_SidePanel.h +++ b/modules/juce_gui_basics/layout/juce_SidePanel.h @@ -62,7 +62,7 @@ public: bool deleteComponentWhenNoLongerNeeded = true); /** Destructor */ - ~SidePanel(); + ~SidePanel() override; //============================================================================== /** Sets the component that this SidePanel will contain. diff --git a/modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.h b/modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.h index 9b087580a2..bc26d42751 100644 --- a/modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.h +++ b/modules/juce_gui_basics/layout/juce_StretchableLayoutResizerBar.h @@ -60,7 +60,7 @@ public: bool isBarVertical); /** Destructor. */ - ~StretchableLayoutResizerBar(); + ~StretchableLayoutResizerBar() override; //============================================================================== /** This is called when the bar is dragged. diff --git a/modules/juce_gui_basics/layout/juce_TabbedButtonBar.h b/modules/juce_gui_basics/layout/juce_TabbedButtonBar.h index a647c93da9..9b46055e42 100644 --- a/modules/juce_gui_basics/layout/juce_TabbedButtonBar.h +++ b/modules/juce_gui_basics/layout/juce_TabbedButtonBar.h @@ -49,7 +49,7 @@ public: TabBarButton (const String& name, TabbedButtonBar& ownerBar); /** Destructor. */ - ~TabBarButton(); + ~TabBarButton() override; /** Returns the bar that contains this button. */ TabbedButtonBar& getTabbedButtonBar() const { return owner; } @@ -173,7 +173,7 @@ public: TabbedButtonBar (Orientation orientation); /** Destructor. */ - ~TabbedButtonBar(); + ~TabbedButtonBar() override; //============================================================================== /** Changes the bar's orientation. diff --git a/modules/juce_gui_basics/layout/juce_TabbedComponent.h b/modules/juce_gui_basics/layout/juce_TabbedComponent.h index 78e6e01be6..7b43c78745 100644 --- a/modules/juce_gui_basics/layout/juce_TabbedComponent.h +++ b/modules/juce_gui_basics/layout/juce_TabbedComponent.h @@ -49,7 +49,7 @@ public: explicit TabbedComponent (TabbedButtonBar::Orientation orientation); /** Destructor. */ - ~TabbedComponent(); + ~TabbedComponent() override; //============================================================================== /** Changes the placement of the tabs. diff --git a/modules/juce_gui_basics/layout/juce_Viewport.cpp b/modules/juce_gui_basics/layout/juce_Viewport.cpp index d43f6ede46..5d2524383c 100644 --- a/modules/juce_gui_basics/layout/juce_Viewport.cpp +++ b/modules/juce_gui_basics/layout/juce_Viewport.cpp @@ -214,7 +214,7 @@ struct Viewport::DragToScrollListener : private MouseListener, offsetY.behaviour.setMinimumVelocity (60); } - ~DragToScrollListener() + ~DragToScrollListener() override { viewport.contentHolder.removeMouseListener (this); Desktop::getInstance().removeGlobalMouseListener (this); diff --git a/modules/juce_gui_basics/layout/juce_Viewport.h b/modules/juce_gui_basics/layout/juce_Viewport.h index 6c493b4aa4..e634176db4 100644 --- a/modules/juce_gui_basics/layout/juce_Viewport.h +++ b/modules/juce_gui_basics/layout/juce_Viewport.h @@ -56,7 +56,7 @@ public: explicit Viewport (const String& componentName = String()); /** Destructor. */ - ~Viewport(); + ~Viewport() override; //============================================================================== /** Sets the component that this viewport will contain and scroll around. diff --git a/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V1.h b/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V1.h index cd5e5c6cda..bf3feb72af 100644 --- a/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V1.h +++ b/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V1.h @@ -38,7 +38,7 @@ class JUCE_API LookAndFeel_V1 : public LookAndFeel_V2 { public: LookAndFeel_V1(); - ~LookAndFeel_V1(); + ~LookAndFeel_V1() override; //============================================================================== void drawButtonBackground (Graphics&, Button&, const Colour& backgroundColour, diff --git a/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V2.h b/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V2.h index 5b01782e0a..4920f83753 100644 --- a/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V2.h +++ b/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V2.h @@ -39,7 +39,7 @@ class JUCE_API LookAndFeel_V2 : public LookAndFeel { public: LookAndFeel_V2(); - ~LookAndFeel_V2(); + ~LookAndFeel_V2() override; //============================================================================== void drawButtonBackground (Graphics&, Button&, const Colour& backgroundColour, diff --git a/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V3.h b/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V3.h index 3378ff3fab..6cc2797fc7 100644 --- a/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V3.h +++ b/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V3.h @@ -38,7 +38,7 @@ class JUCE_API LookAndFeel_V3 : public LookAndFeel_V2 { public: LookAndFeel_V3(); - ~LookAndFeel_V3(); + ~LookAndFeel_V3() override; //============================================================================== void drawButtonBackground (Graphics&, Button&, const Colour& backgroundColour, diff --git a/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V4.h b/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V4.h index db4726a381..722ad234d0 100644 --- a/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V4.h +++ b/modules/juce_gui_basics/lookandfeel/juce_LookAndFeel_V4.h @@ -95,7 +95,7 @@ public: LookAndFeel_V4 (ColourScheme); /** Destructor. */ - ~LookAndFeel_V4(); + ~LookAndFeel_V4() override; //============================================================================== void setColourScheme (ColourScheme); diff --git a/modules/juce_gui_basics/menus/juce_BurgerMenuComponent.h b/modules/juce_gui_basics/menus/juce_BurgerMenuComponent.h index 8b36e8d664..09407a4e44 100644 --- a/modules/juce_gui_basics/menus/juce_BurgerMenuComponent.h +++ b/modules/juce_gui_basics/menus/juce_BurgerMenuComponent.h @@ -54,7 +54,7 @@ public: BurgerMenuComponent (MenuBarModel* model = nullptr); /** Destructor. */ - ~BurgerMenuComponent(); + ~BurgerMenuComponent() override; //============================================================================== /** Changes the model object to use to control the burger menu. diff --git a/modules/juce_gui_basics/menus/juce_MenuBarComponent.h b/modules/juce_gui_basics/menus/juce_MenuBarComponent.h index 190384a19f..9d98e58328 100644 --- a/modules/juce_gui_basics/menus/juce_MenuBarComponent.h +++ b/modules/juce_gui_basics/menus/juce_MenuBarComponent.h @@ -50,7 +50,7 @@ public: MenuBarComponent (MenuBarModel* model = nullptr); /** Destructor. */ - ~MenuBarComponent(); + ~MenuBarComponent() override; //============================================================================== /** Changes the model object to use to control the bar. diff --git a/modules/juce_gui_basics/menus/juce_MenuBarModel.h b/modules/juce_gui_basics/menus/juce_MenuBarModel.h index 245836d2a3..3dce8d2bbb 100644 --- a/modules/juce_gui_basics/menus/juce_MenuBarModel.h +++ b/modules/juce_gui_basics/menus/juce_MenuBarModel.h @@ -46,7 +46,7 @@ public: MenuBarModel() noexcept; /** Destructor. */ - virtual ~MenuBarModel(); + virtual ~MenuBarModel() override; //============================================================================== /** Call this when some of your menu items have changed. diff --git a/modules/juce_gui_basics/menus/juce_PopupMenu.cpp b/modules/juce_gui_basics/menus/juce_PopupMenu.cpp index 8554b6150a..465cbd7c3e 100644 --- a/modules/juce_gui_basics/menus/juce_PopupMenu.cpp +++ b/modules/juce_gui_basics/menus/juce_PopupMenu.cpp @@ -94,7 +94,7 @@ struct ItemComponent : public Component addMouseListener (&parent, false); } - ~ItemComponent() + ~ItemComponent() override { removeChildComponent (customComp.get()); } @@ -267,7 +267,7 @@ struct MenuWindow : public Component getMouseState (Desktop::getInstance().getMainMouseSource()); // forces creation of a mouse source watcher for the main mouse } - ~MenuWindow() + ~MenuWindow() override { getActiveWindows().removeFirstMatchingValue (this); Desktop::getInstance().removeGlobalMouseListener (this); diff --git a/modules/juce_gui_basics/misc/juce_BubbleComponent.h b/modules/juce_gui_basics/misc/juce_BubbleComponent.h index 1026143e71..7208ccb0e5 100644 --- a/modules/juce_gui_basics/misc/juce_BubbleComponent.h +++ b/modules/juce_gui_basics/misc/juce_BubbleComponent.h @@ -57,7 +57,7 @@ protected: public: /** Destructor. */ - ~BubbleComponent(); + ~BubbleComponent() override; //============================================================================== /** A list of permitted placements for the bubble, relative to the coordinates diff --git a/modules/juce_gui_basics/misc/juce_DropShadower.h b/modules/juce_gui_basics/misc/juce_DropShadower.h index 633a9ae26c..0aba44503b 100644 --- a/modules/juce_gui_basics/misc/juce_DropShadower.h +++ b/modules/juce_gui_basics/misc/juce_DropShadower.h @@ -51,7 +51,7 @@ public: DropShadower (const DropShadow& shadowType); /** Destructor. */ - ~DropShadower(); + ~DropShadower() override; /** Attaches the DropShadower to the component you want to shadow. */ void setOwner (Component* componentToFollow); diff --git a/modules/juce_gui_basics/misc/juce_JUCESplashScreen.cpp b/modules/juce_gui_basics/misc/juce_JUCESplashScreen.cpp index b28a73bc85..f2208fe7f1 100644 --- a/modules/juce_gui_basics/misc/juce_JUCESplashScreen.cpp +++ b/modules/juce_gui_basics/misc/juce_JUCESplashScreen.cpp @@ -74,7 +74,7 @@ struct ReportingThreadContainer : public ChangeListener, public DeletedAtShutdown { ReportingThreadContainer() {} - ~ReportingThreadContainer() { clearSingletonInstance(); } + ~ReportingThreadContainer() override { clearSingletonInstance(); } void sendReport (String, String&, StringPairArray&); void changeListenerCallback (ChangeBroadcaster*) override; @@ -109,7 +109,7 @@ struct ReportingThread : public Thread, addChangeListener (&threadContainer); } - ~ReportingThread() + ~ReportingThread() override { removeChangeListener (&threadContainer); diff --git a/modules/juce_gui_basics/misc/juce_JUCESplashScreen.h b/modules/juce_gui_basics/misc/juce_JUCESplashScreen.h index 6f16ff4c2a..b8b2209778 100644 --- a/modules/juce_gui_basics/misc/juce_JUCESplashScreen.h +++ b/modules/juce_gui_basics/misc/juce_JUCESplashScreen.h @@ -53,7 +53,7 @@ class JUCE_API JUCESplashScreen : public Component, { public: JUCESplashScreen (Component& parentToAddTo); - ~JUCESplashScreen(); + ~JUCESplashScreen() override; static std::unique_ptr getSplashScreenLogo(); diff --git a/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp b/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp index ea55467214..185dda53c7 100644 --- a/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp +++ b/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp @@ -62,7 +62,7 @@ public: setAlwaysOnTop (true); } - ~DragImageComponent() + ~DragImageComponent() override { owner.dragImageComponents.remove (owner.dragImageComponents.indexOf (this), false); diff --git a/modules/juce_gui_basics/mouse/juce_MouseInactivityDetector.h b/modules/juce_gui_basics/mouse/juce_MouseInactivityDetector.h index 8dffcd8e65..0c67cfff4d 100644 --- a/modules/juce_gui_basics/mouse/juce_MouseInactivityDetector.h +++ b/modules/juce_gui_basics/mouse/juce_MouseInactivityDetector.h @@ -52,7 +52,7 @@ public: MouseInactivityDetector (Component& target); /** Destructor. */ - ~MouseInactivityDetector(); + ~MouseInactivityDetector() override; /** Sets the time for which the mouse must be still before the callback is triggered. diff --git a/modules/juce_gui_basics/mouse/juce_TooltipClient.h b/modules/juce_gui_basics/mouse/juce_TooltipClient.h index 8519fe7743..ee1a14dd42 100644 --- a/modules/juce_gui_basics/mouse/juce_TooltipClient.h +++ b/modules/juce_gui_basics/mouse/juce_TooltipClient.h @@ -70,7 +70,7 @@ class JUCE_API SettableTooltipClient : public TooltipClient public: //============================================================================== /** Destructor. */ - ~SettableTooltipClient() {} + ~SettableTooltipClient() override {} //============================================================================== /** Assigns a new tooltip to this object. */ diff --git a/modules/juce_gui_basics/native/juce_mac_FileChooser.mm b/modules/juce_gui_basics/native/juce_mac_FileChooser.mm index 00a8a20507..04de57cde1 100644 --- a/modules/juce_gui_basics/native/juce_mac_FileChooser.mm +++ b/modules/juce_gui_basics/native/juce_mac_FileChooser.mm @@ -128,7 +128,7 @@ public: #endif } - ~Native() + ~Native() override { exitModalState (0); removeFromDesktop(); diff --git a/modules/juce_gui_basics/native/juce_mac_MainMenu.mm b/modules/juce_gui_basics/native/juce_mac_MainMenu.mm index 50798a6786..c6c8b69339 100644 --- a/modules/juce_gui_basics/native/juce_mac_MainMenu.mm +++ b/modules/juce_gui_basics/native/juce_mac_MainMenu.mm @@ -73,7 +73,7 @@ public: JuceMenuCallbackClass::setOwner (callback, this); } - ~JuceMainMenuHandler() + ~JuceMainMenuHandler() override { setMenu (nullptr, nullptr, String()); diff --git a/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm b/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm index 865e1fa83f..a6de7b0165 100644 --- a/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm +++ b/modules/juce_gui_basics/native/juce_mac_NSViewComponentPeer.mm @@ -153,7 +153,7 @@ public: #if defined (MAC_OS_X_VERSION_10_13) && (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_13) if ([window respondsToSelector: @selector (setTabbingMode:)]) - [window setTabbingMode:NSWindowTabbingModeDisallowed]; + [window setTabbingMode: NSWindowTabbingModeDisallowed]; #endif [notificationCenter addObserver: view @@ -195,7 +195,7 @@ public: }; } - ~NSViewComponentPeer() + ~NSViewComponentPeer() override { [notificationCenter removeObserver: view]; setOwner (view, nullptr); @@ -1336,10 +1336,13 @@ public: while ((track = [enumerator nextObject]) != nil) { - NSURL* url = [NSURL URLWithString: [track valueForKey: nsStringLiteral ("Location")]]; + if (id value = [track valueForKey: nsStringLiteral ("Location")]) + { + NSURL* url = [NSURL URLWithString: value]; - if ([url isFileURL]) - files.add (nsStringToJuce ([url path])); + if ([url isFileURL]) + files.add (nsStringToJuce ([url path])); + } } } } diff --git a/modules/juce_gui_basics/native/juce_mac_Windowing.mm b/modules/juce_gui_basics/native/juce_mac_Windowing.mm index a3e348b62c..c9360d3c17 100644 --- a/modules/juce_gui_basics/native/juce_mac_Windowing.mm +++ b/modules/juce_gui_basics/native/juce_mac_Windowing.mm @@ -238,10 +238,9 @@ private: { // Our view doesn't receive a mouse up when the drag ends so we need to generate one here and send it... if (auto* view = getNSViewForDragEvent (nullptr)) - { - auto* cgEvent = CGEventCreateMouseEvent (nullptr, kCGEventLeftMouseUp, CGPointMake (p.x, p.y), kCGMouseButtonLeft); - [view mouseUp: [NSEvent eventWithCGEvent:cgEvent]]; - } + if (auto* cgEvent = CGEventCreateMouseEvent (nullptr, kCGEventLeftMouseUp, CGPointMake (p.x, p.y), kCGMouseButtonLeft)) + if (id e = [NSEvent eventWithCGEvent: cgEvent]) + [view mouseUp: e]; if (auto* cb = getIvar*> (self, "callback")) cb->operator()(); diff --git a/modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.h b/modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.h index c534c08f4f..a3aecb8d2d 100644 --- a/modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.h +++ b/modules/juce_gui_basics/positioning/juce_RelativeCoordinatePositioner.h @@ -39,7 +39,7 @@ class JUCE_API RelativeCoordinatePositionerBase : public Component::Positioner { public: RelativeCoordinatePositionerBase (Component&); - ~RelativeCoordinatePositionerBase(); + ~RelativeCoordinatePositionerBase() override; void componentMovedOrResized (Component&, bool, bool) override; void componentParentHierarchyChanged (Component&) override; diff --git a/modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.h b/modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.h index 5f92d73b6c..a66c0595a0 100644 --- a/modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.h +++ b/modules/juce_gui_basics/properties/juce_BooleanPropertyComponent.h @@ -71,7 +71,7 @@ public: const String& buttonText); /** Destructor. */ - ~BooleanPropertyComponent(); + ~BooleanPropertyComponent() override; //============================================================================== /** Called to change the state of the boolean value. */ diff --git a/modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.h b/modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.h index 67b85eba6c..6228cfa70e 100644 --- a/modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.h +++ b/modules/juce_gui_basics/properties/juce_ButtonPropertyComponent.h @@ -51,7 +51,7 @@ public: bool triggerOnMouseDown); /** Destructor. */ - ~ButtonPropertyComponent(); + ~ButtonPropertyComponent() override; //============================================================================== /** Called when the user clicks the button. diff --git a/modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.h b/modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.h index 3fa1f9a8a2..2a06266cb4 100644 --- a/modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.h +++ b/modules/juce_gui_basics/properties/juce_ChoicePropertyComponent.h @@ -106,7 +106,7 @@ public: const String& propertyName); /** Destructor. */ - ~ChoicePropertyComponent(); + ~ChoicePropertyComponent() override; //============================================================================== /** Called when the user selects an item from the combo box. diff --git a/modules/juce_gui_basics/properties/juce_MultiChoicePropertyComponent.h b/modules/juce_gui_basics/properties/juce_MultiChoicePropertyComponent.h index 7896eeac8e..d10b56d914 100644 --- a/modules/juce_gui_basics/properties/juce_MultiChoicePropertyComponent.h +++ b/modules/juce_gui_basics/properties/juce_MultiChoicePropertyComponent.h @@ -82,7 +82,7 @@ public: const Array& correspondingValues, int maxChoices = -1); - ~MultiChoicePropertyComponent(); + ~MultiChoicePropertyComponent() override; //============================================================================== /** Returns true if the list of options is expanded. */ diff --git a/modules/juce_gui_basics/properties/juce_PropertyComponent.h b/modules/juce_gui_basics/properties/juce_PropertyComponent.h index d29c7b36f8..d1e3ca7db8 100644 --- a/modules/juce_gui_basics/properties/juce_PropertyComponent.h +++ b/modules/juce_gui_basics/properties/juce_PropertyComponent.h @@ -64,7 +64,7 @@ public: int preferredHeight = 25); /** Destructor. */ - ~PropertyComponent(); + ~PropertyComponent() override; //============================================================================== /** Returns this item's preferred height. diff --git a/modules/juce_gui_basics/properties/juce_PropertyPanel.cpp b/modules/juce_gui_basics/properties/juce_PropertyPanel.cpp index 92713f7ed6..e0f6292171 100644 --- a/modules/juce_gui_basics/properties/juce_PropertyPanel.cpp +++ b/modules/juce_gui_basics/properties/juce_PropertyPanel.cpp @@ -45,7 +45,7 @@ struct PropertyPanel::SectionComponent : public Component } } - ~SectionComponent() + ~SectionComponent() override { propertyComps.clear(); } diff --git a/modules/juce_gui_basics/properties/juce_PropertyPanel.h b/modules/juce_gui_basics/properties/juce_PropertyPanel.h index 8aedf8a0f8..3fc2241766 100644 --- a/modules/juce_gui_basics/properties/juce_PropertyPanel.h +++ b/modules/juce_gui_basics/properties/juce_PropertyPanel.h @@ -52,7 +52,7 @@ public: PropertyPanel (const String& name); /** Destructor. */ - ~PropertyPanel(); + ~PropertyPanel() override; //============================================================================== /** Deletes all property components from the panel. */ diff --git a/modules/juce_gui_basics/properties/juce_SliderPropertyComponent.h b/modules/juce_gui_basics/properties/juce_SliderPropertyComponent.h index 240c5f1793..31fa228e51 100644 --- a/modules/juce_gui_basics/properties/juce_SliderPropertyComponent.h +++ b/modules/juce_gui_basics/properties/juce_SliderPropertyComponent.h @@ -75,7 +75,7 @@ public: bool symmetricSkew = false); /** Destructor. */ - ~SliderPropertyComponent(); + ~SliderPropertyComponent() override; //============================================================================== diff --git a/modules/juce_gui_basics/properties/juce_TextPropertyComponent.h b/modules/juce_gui_basics/properties/juce_TextPropertyComponent.h index cfcb569cb8..195ca37117 100644 --- a/modules/juce_gui_basics/properties/juce_TextPropertyComponent.h +++ b/modules/juce_gui_basics/properties/juce_TextPropertyComponent.h @@ -90,7 +90,7 @@ public: bool isEditable = true); /** Destructor. */ - ~TextPropertyComponent(); + ~TextPropertyComponent() override; //============================================================================== /** Called when the user edits the text. diff --git a/modules/juce_gui_basics/widgets/juce_ComboBox.h b/modules/juce_gui_basics/widgets/juce_ComboBox.h index f6d51d88d7..4780dd6c23 100644 --- a/modules/juce_gui_basics/widgets/juce_ComboBox.h +++ b/modules/juce_gui_basics/widgets/juce_ComboBox.h @@ -61,7 +61,7 @@ public: explicit ComboBox (const String& componentName = String()); /** Destructor. */ - virtual ~ComboBox(); + virtual ~ComboBox() override; //============================================================================== /** Sets whether the text in the combo-box is editable. diff --git a/modules/juce_gui_basics/widgets/juce_ImageComponent.h b/modules/juce_gui_basics/widgets/juce_ImageComponent.h index 80bdda510b..32cff19ac6 100644 --- a/modules/juce_gui_basics/widgets/juce_ImageComponent.h +++ b/modules/juce_gui_basics/widgets/juce_ImageComponent.h @@ -44,7 +44,7 @@ public: ImageComponent (const String& componentName = String()); /** Destructor. */ - ~ImageComponent(); + ~ImageComponent() override; //============================================================================== /** Sets the image that should be displayed. */ diff --git a/modules/juce_gui_basics/widgets/juce_Label.h b/modules/juce_gui_basics/widgets/juce_Label.h index e6f1bf2318..79af5f1c52 100644 --- a/modules/juce_gui_basics/widgets/juce_Label.h +++ b/modules/juce_gui_basics/widgets/juce_Label.h @@ -51,7 +51,7 @@ public: const String& labelText = String()); /** Destructor. */ - ~Label(); + ~Label() override; //============================================================================== /** Changes the label text. diff --git a/modules/juce_gui_basics/widgets/juce_ListBox.cpp b/modules/juce_gui_basics/widgets/juce_ListBox.cpp index d2c4d75a57..2f995f742f 100644 --- a/modules/juce_gui_basics/widgets/juce_ListBox.cpp +++ b/modules/juce_gui_basics/widgets/juce_ListBox.cpp @@ -352,7 +352,7 @@ struct ListBoxMouseMoveSelector : public MouseListener owner.addMouseListener (this, true); } - ~ListBoxMouseMoveSelector() + ~ListBoxMouseMoveSelector() override { owner.removeMouseListener (this); } diff --git a/modules/juce_gui_basics/widgets/juce_ListBox.h b/modules/juce_gui_basics/widgets/juce_ListBox.h index 6dc7f606ec..a70525ffb4 100644 --- a/modules/juce_gui_basics/widgets/juce_ListBox.h +++ b/modules/juce_gui_basics/widgets/juce_ListBox.h @@ -193,7 +193,7 @@ public: ListBoxModel* model = nullptr); /** Destructor. */ - ~ListBox(); + ~ListBox() override; //============================================================================== diff --git a/modules/juce_gui_basics/widgets/juce_ProgressBar.h b/modules/juce_gui_basics/widgets/juce_ProgressBar.h index cc5dd8d6b4..51e3b7765b 100644 --- a/modules/juce_gui_basics/widgets/juce_ProgressBar.h +++ b/modules/juce_gui_basics/widgets/juce_ProgressBar.h @@ -65,7 +65,7 @@ public: explicit ProgressBar (double& progress); /** Destructor. */ - ~ProgressBar(); + ~ProgressBar() override; //============================================================================== /** Turns the percentage display on or off. diff --git a/modules/juce_gui_basics/widgets/juce_Slider.cpp b/modules/juce_gui_basics/widgets/juce_Slider.cpp index dea2bacd93..0cf10425a6 100644 --- a/modules/juce_gui_basics/widgets/juce_Slider.cpp +++ b/modules/juce_gui_basics/widgets/juce_Slider.cpp @@ -42,7 +42,7 @@ public: rotaryParams.stopAtEnd = true; } - ~Pimpl() + ~Pimpl() override { currentValue.removeListener (this); valueMin.removeListener (this); @@ -1298,7 +1298,7 @@ public: setLookAndFeel (&s.getLookAndFeel()); } - ~PopupDisplayComponent() + ~PopupDisplayComponent() override { if (owner.pimpl != nullptr) owner.pimpl->lastPopupDismissal = Time::getMillisecondCounterHiRes(); diff --git a/modules/juce_gui_basics/widgets/juce_Slider.h b/modules/juce_gui_basics/widgets/juce_Slider.h index cfa3b81aa7..63b2b1812e 100644 --- a/modules/juce_gui_basics/widgets/juce_Slider.h +++ b/modules/juce_gui_basics/widgets/juce_Slider.h @@ -125,7 +125,7 @@ public: Slider (SliderStyle style, TextEntryBoxPosition textBoxPosition); /** Destructor. */ - ~Slider(); + ~Slider() override; //============================================================================== /** Changes the type of slider interface being used. diff --git a/modules/juce_gui_basics/widgets/juce_TableHeaderComponent.h b/modules/juce_gui_basics/widgets/juce_TableHeaderComponent.h index f606a77da8..27fa913c1f 100644 --- a/modules/juce_gui_basics/widgets/juce_TableHeaderComponent.h +++ b/modules/juce_gui_basics/widgets/juce_TableHeaderComponent.h @@ -53,7 +53,7 @@ public: TableHeaderComponent(); /** Destructor. */ - ~TableHeaderComponent(); + ~TableHeaderComponent() override; //============================================================================== /** A combination of these flags are passed into the addColumn() method to specify diff --git a/modules/juce_gui_basics/widgets/juce_TableListBox.h b/modules/juce_gui_basics/widgets/juce_TableListBox.h index 4467a0f338..438b5132bd 100644 --- a/modules/juce_gui_basics/widgets/juce_TableListBox.h +++ b/modules/juce_gui_basics/widgets/juce_TableListBox.h @@ -225,7 +225,7 @@ public: TableListBoxModel* model = nullptr); /** Destructor. */ - ~TableListBox(); + ~TableListBox() override; //============================================================================== /** Changes the TableListBoxModel that is being used for this table. diff --git a/modules/juce_gui_basics/widgets/juce_TextEditor.cpp b/modules/juce_gui_basics/widgets/juce_TextEditor.cpp index fc14b446d6..10ae35fd3d 100644 --- a/modules/juce_gui_basics/widgets/juce_TextEditor.cpp +++ b/modules/juce_gui_basics/widgets/juce_TextEditor.cpp @@ -795,7 +795,7 @@ struct TextEditor::TextHolderComponent : public Component, owner.getTextValue().addListener (this); } - ~TextHolderComponent() + ~TextHolderComponent() override { owner.getTextValue().removeListener (this); } diff --git a/modules/juce_gui_basics/widgets/juce_TextEditor.h b/modules/juce_gui_basics/widgets/juce_TextEditor.h index d2fa0b1cbc..23e7e53300 100644 --- a/modules/juce_gui_basics/widgets/juce_TextEditor.h +++ b/modules/juce_gui_basics/widgets/juce_TextEditor.h @@ -58,7 +58,7 @@ public: juce_wchar passwordCharacter = 0); /** Destructor. */ - ~TextEditor(); + ~TextEditor() override; //============================================================================== /** Puts the editor into either multi- or single-line mode. diff --git a/modules/juce_gui_basics/widgets/juce_Toolbar.cpp b/modules/juce_gui_basics/widgets/juce_Toolbar.cpp index ee95ba03af..710c1f75d7 100644 --- a/modules/juce_gui_basics/widgets/juce_Toolbar.cpp +++ b/modules/juce_gui_basics/widgets/juce_Toolbar.cpp @@ -174,7 +174,7 @@ public: layout (400); } - ~MissingItemsComponent() + ~MissingItemsComponent() override { if (owner != nullptr) { @@ -656,7 +656,7 @@ public: positionNearBar(); } - ~CustomisationDialog() + ~CustomisationDialog() override { toolbar.setEditingActive (false); } diff --git a/modules/juce_gui_basics/widgets/juce_Toolbar.h b/modules/juce_gui_basics/widgets/juce_Toolbar.h index fb7cc23c30..bf9d910d83 100644 --- a/modules/juce_gui_basics/widgets/juce_Toolbar.h +++ b/modules/juce_gui_basics/widgets/juce_Toolbar.h @@ -70,7 +70,7 @@ public: Any items on the bar will be deleted when the toolbar is deleted. */ - ~Toolbar(); + ~Toolbar() override; //============================================================================== /** Changes the bar's orientation. diff --git a/modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.h b/modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.h index f09df82734..4a000fdbea 100644 --- a/modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.h +++ b/modules/juce_gui_basics/widgets/juce_ToolbarItemComponent.h @@ -65,7 +65,7 @@ public: bool isBeingUsedAsAButton); /** Destructor. */ - ~ToolbarItemComponent(); + ~ToolbarItemComponent() override; //============================================================================== /** Returns the item type ID that this component represents. diff --git a/modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.h b/modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.h index a5765b0aea..c93b8d79e1 100644 --- a/modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.h +++ b/modules/juce_gui_basics/widgets/juce_ToolbarItemPalette.h @@ -56,7 +56,7 @@ public: Toolbar& toolbar); /** Destructor. */ - ~ToolbarItemPalette(); + ~ToolbarItemPalette() override; //============================================================================== /** @internal */ diff --git a/modules/juce_gui_basics/widgets/juce_TreeView.h b/modules/juce_gui_basics/widgets/juce_TreeView.h index 48ec7afca7..aa103a4905 100644 --- a/modules/juce_gui_basics/widgets/juce_TreeView.h +++ b/modules/juce_gui_basics/widgets/juce_TreeView.h @@ -651,7 +651,7 @@ public: TreeView (const String& componentName = String()); /** Destructor. */ - ~TreeView(); + ~TreeView() override; //============================================================================== /** Sets the item that is displayed in the treeview. diff --git a/modules/juce_gui_basics/windows/juce_AlertWindow.h b/modules/juce_gui_basics/windows/juce_AlertWindow.h index c6edf07e62..9e0b7aee01 100644 --- a/modules/juce_gui_basics/windows/juce_AlertWindow.h +++ b/modules/juce_gui_basics/windows/juce_AlertWindow.h @@ -76,7 +76,7 @@ public: Component* associatedComponent = nullptr); /** Destroys the AlertWindow */ - ~AlertWindow(); + ~AlertWindow() override; //============================================================================== /** Returns the type of alert icon that was specified when the window diff --git a/modules/juce_gui_basics/windows/juce_CallOutBox.h b/modules/juce_gui_basics/windows/juce_CallOutBox.h index 62f7cc7a12..a723b2a885 100644 --- a/modules/juce_gui_basics/windows/juce_CallOutBox.h +++ b/modules/juce_gui_basics/windows/juce_CallOutBox.h @@ -79,7 +79,7 @@ public: Component* parentComponent); /** Destructor. */ - ~CallOutBox(); + ~CallOutBox() override; //============================================================================== /** Changes the base width of the arrow. */ diff --git a/modules/juce_gui_basics/windows/juce_ComponentPeer.h b/modules/juce_gui_basics/windows/juce_ComponentPeer.h index 714b9ee6ea..26a07ee1e9 100644 --- a/modules/juce_gui_basics/windows/juce_ComponentPeer.h +++ b/modules/juce_gui_basics/windows/juce_ComponentPeer.h @@ -72,7 +72,7 @@ public: windowIgnoresKeyPresses = (1 << 10), /**< Tells the window not to catch any keypresses. This can be used for things like plugin windows, to stop them interfering with the host's shortcut keys */ - windowIsSemiTransparent = (1 << 31) /**< Not intended for public use - makes a window transparent. */ + windowIsSemiTransparent = (1 << 30) /**< Not intended for public use - makes a window transparent. */ }; diff --git a/modules/juce_gui_basics/windows/juce_DialogWindow.h b/modules/juce_gui_basics/windows/juce_DialogWindow.h index eabcffdc3a..29ec188b5d 100644 --- a/modules/juce_gui_basics/windows/juce_DialogWindow.h +++ b/modules/juce_gui_basics/windows/juce_DialogWindow.h @@ -72,7 +72,7 @@ public: /** Destructor. If a content component has been set with setContentOwned(), it will be deleted. */ - ~DialogWindow(); + ~DialogWindow() override; //============================================================================== /** This class defines a collection of settings to be used to open a DialogWindow. diff --git a/modules/juce_gui_basics/windows/juce_DocumentWindow.h b/modules/juce_gui_basics/windows/juce_DocumentWindow.h index 31c17d5120..8074f18fee 100644 --- a/modules/juce_gui_basics/windows/juce_DocumentWindow.h +++ b/modules/juce_gui_basics/windows/juce_DocumentWindow.h @@ -95,7 +95,7 @@ public: /** Destructor. If a content component has been set with setContentOwned(), it will be deleted. */ - ~DocumentWindow(); + ~DocumentWindow() override; //============================================================================== /** Changes the component's name. diff --git a/modules/juce_gui_basics/windows/juce_ResizableWindow.h b/modules/juce_gui_basics/windows/juce_ResizableWindow.h index 26add9d797..4e71533e35 100644 --- a/modules/juce_gui_basics/windows/juce_ResizableWindow.h +++ b/modules/juce_gui_basics/windows/juce_ResizableWindow.h @@ -79,7 +79,7 @@ public: /** Destructor. If a content component has been set with setContentOwned(), it will be deleted. */ - ~ResizableWindow(); + ~ResizableWindow() override; //============================================================================== /** Returns the colour currently being used for the window's background. diff --git a/modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.h b/modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.h index f905569318..2927b14ff4 100644 --- a/modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.h +++ b/modules/juce_gui_basics/windows/juce_ThreadWithProgressWindow.h @@ -111,7 +111,7 @@ public: Component* componentToCentreAround = nullptr); /** Destructor. */ - ~ThreadWithProgressWindow(); + ~ThreadWithProgressWindow() override; //============================================================================== #if JUCE_MODAL_LOOPS_PERMITTED diff --git a/modules/juce_gui_basics/windows/juce_TooltipWindow.h b/modules/juce_gui_basics/windows/juce_TooltipWindow.h index cbdc16989d..179014e8e3 100644 --- a/modules/juce_gui_basics/windows/juce_TooltipWindow.h +++ b/modules/juce_gui_basics/windows/juce_TooltipWindow.h @@ -77,7 +77,7 @@ public: int millisecondsBeforeTipAppears = 700); /** Destructor. */ - ~TooltipWindow(); + ~TooltipWindow() override; //============================================================================== /** Changes the time before the tip appears. diff --git a/modules/juce_gui_basics/windows/juce_TopLevelWindow.cpp b/modules/juce_gui_basics/windows/juce_TopLevelWindow.cpp index 1c0b0ac505..7f0f271bf2 100644 --- a/modules/juce_gui_basics/windows/juce_TopLevelWindow.cpp +++ b/modules/juce_gui_basics/windows/juce_TopLevelWindow.cpp @@ -32,8 +32,8 @@ class TopLevelWindowManager : private Timer, private DeletedAtShutdown { public: - TopLevelWindowManager() {} - ~TopLevelWindowManager() { clearSingletonInstance(); } + TopLevelWindowManager() {} + ~TopLevelWindowManager() override { clearSingletonInstance(); } JUCE_DECLARE_SINGLETON_SINGLETHREADED_MINIMAL (TopLevelWindowManager) diff --git a/modules/juce_gui_basics/windows/juce_TopLevelWindow.h b/modules/juce_gui_basics/windows/juce_TopLevelWindow.h index 44674aaa13..0bc0fa7be0 100644 --- a/modules/juce_gui_basics/windows/juce_TopLevelWindow.h +++ b/modules/juce_gui_basics/windows/juce_TopLevelWindow.h @@ -64,7 +64,7 @@ public: TopLevelWindow (const String& name, bool addToDesktop); /** Destructor. */ - ~TopLevelWindow(); + ~TopLevelWindow() override; //============================================================================== /** True if this is currently the TopLevelWindow that is actively being used. diff --git a/modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.h b/modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.h index 1c0cdc9009..84cf930569 100644 --- a/modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.h +++ b/modules/juce_gui_extra/code_editor/juce_CPlusPlusCodeTokeniser.h @@ -40,7 +40,7 @@ class JUCE_API CPlusPlusCodeTokeniser : public CodeTokeniser public: //============================================================================== CPlusPlusCodeTokeniser(); - ~CPlusPlusCodeTokeniser(); + ~CPlusPlusCodeTokeniser() override; //============================================================================== int readNextToken (CodeDocument::Iterator&) override; diff --git a/modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.h b/modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.h index c1db3976a6..895bae684f 100644 --- a/modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.h +++ b/modules/juce_gui_extra/code_editor/juce_CodeEditorComponent.h @@ -57,7 +57,7 @@ public: CodeTokeniser* codeTokeniser); /** Destructor. */ - ~CodeEditorComponent(); + ~CodeEditorComponent() override; //============================================================================== /** Returns the code document that this component is editing. */ diff --git a/modules/juce_gui_extra/code_editor/juce_LuaCodeTokeniser.h b/modules/juce_gui_extra/code_editor/juce_LuaCodeTokeniser.h index ef223626ab..6657b8b2bb 100644 --- a/modules/juce_gui_extra/code_editor/juce_LuaCodeTokeniser.h +++ b/modules/juce_gui_extra/code_editor/juce_LuaCodeTokeniser.h @@ -37,7 +37,7 @@ class JUCE_API LuaTokeniser : public CodeTokeniser public: //============================================================================== LuaTokeniser(); - ~LuaTokeniser(); + ~LuaTokeniser() override; //============================================================================== int readNextToken (CodeDocument::Iterator&) override; diff --git a/modules/juce_gui_extra/code_editor/juce_XMLCodeTokeniser.h b/modules/juce_gui_extra/code_editor/juce_XMLCodeTokeniser.h index 3a429d8779..f577efbb35 100644 --- a/modules/juce_gui_extra/code_editor/juce_XMLCodeTokeniser.h +++ b/modules/juce_gui_extra/code_editor/juce_XMLCodeTokeniser.h @@ -37,7 +37,7 @@ class JUCE_API XmlTokeniser : public CodeTokeniser public: //============================================================================== XmlTokeniser(); - ~XmlTokeniser(); + ~XmlTokeniser() override; //============================================================================== int readNextToken (CodeDocument::Iterator&) override; diff --git a/modules/juce_gui_extra/embedding/juce_NSViewComponent.h b/modules/juce_gui_extra/embedding/juce_NSViewComponent.h index 89e0623b32..4664a55bad 100644 --- a/modules/juce_gui_extra/embedding/juce_NSViewComponent.h +++ b/modules/juce_gui_extra/embedding/juce_NSViewComponent.h @@ -50,7 +50,7 @@ public: NSViewComponent(); /** Destructor. */ - ~NSViewComponent(); + ~NSViewComponent() override; /** Assigns an NSView to this peer. diff --git a/modules/juce_gui_extra/misc/juce_BubbleMessageComponent.h b/modules/juce_gui_extra/misc/juce_BubbleMessageComponent.h index 084d2cdb6f..eaa29f7e0d 100644 --- a/modules/juce_gui_extra/misc/juce_BubbleMessageComponent.h +++ b/modules/juce_gui_extra/misc/juce_BubbleMessageComponent.h @@ -56,7 +56,7 @@ public: BubbleMessageComponent (int fadeOutLengthMs = 150); /** Destructor. */ - ~BubbleMessageComponent(); + ~BubbleMessageComponent() override; //============================================================================== /** Shows a message bubble at a particular position. diff --git a/modules/juce_gui_extra/misc/juce_ColourSelector.h b/modules/juce_gui_extra/misc/juce_ColourSelector.h index 8fbe4d4d74..fb233ec32a 100644 --- a/modules/juce_gui_extra/misc/juce_ColourSelector.h +++ b/modules/juce_gui_extra/misc/juce_ColourSelector.h @@ -69,7 +69,7 @@ public: int gapAroundColourSpaceComponent = 7); /** Destructor. */ - ~ColourSelector(); + ~ColourSelector() override; //============================================================================== /** Returns the colour that the user has currently selected. diff --git a/modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.cpp b/modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.cpp index 00dcd926de..c626da0396 100644 --- a/modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.cpp +++ b/modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.cpp @@ -345,7 +345,7 @@ public: owner.getMappings().addChangeListener (this); } - ~TopLevelItem() + ~TopLevelItem() override { owner.getMappings().removeChangeListener (this); } diff --git a/modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.h b/modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.h index 7ea4d94f17..49c21562b6 100644 --- a/modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.h +++ b/modules/juce_gui_extra/misc/juce_KeyMappingEditorComponent.h @@ -51,7 +51,7 @@ public: bool showResetToDefaultButton); /** Destructor. */ - ~KeyMappingEditorComponent(); + ~KeyMappingEditorComponent() override; //============================================================================== /** Sets up the colours to use for parts of the component. diff --git a/modules/juce_gui_extra/misc/juce_LiveConstantEditor.cpp b/modules/juce_gui_extra/misc/juce_LiveConstantEditor.cpp index 5a4ec36745..08d9055bc2 100644 --- a/modules/juce_gui_extra/misc/juce_LiveConstantEditor.cpp +++ b/modules/juce_gui_extra/misc/juce_LiveConstantEditor.cpp @@ -38,7 +38,7 @@ class AllComponentRepainter : private Timer, { public: AllComponentRepainter() {} - ~AllComponentRepainter() { clearSingletonInstance(); } + ~AllComponentRepainter() override { clearSingletonInstance(); } JUCE_DECLARE_SINGLETON (AllComponentRepainter, false) @@ -314,7 +314,7 @@ public: setVisible (true); } - ~EditorWindow() + ~EditorWindow() override { setLookAndFeel (nullptr); } diff --git a/modules/juce_gui_extra/misc/juce_LiveConstantEditor.h b/modules/juce_gui_extra/misc/juce_LiveConstantEditor.h index 7a2ccd2f18..3230616b4f 100644 --- a/modules/juce_gui_extra/misc/juce_LiveConstantEditor.h +++ b/modules/juce_gui_extra/misc/juce_LiveConstantEditor.h @@ -196,7 +196,7 @@ namespace LiveConstantEditor { public: ValueList(); - ~ValueList(); + ~ValueList() override; JUCE_DECLARE_SINGLETON (ValueList, false) diff --git a/modules/juce_gui_extra/misc/juce_PreferencesPanel.h b/modules/juce_gui_extra/misc/juce_PreferencesPanel.h index d7d5ec571c..3f6db22040 100644 --- a/modules/juce_gui_extra/misc/juce_PreferencesPanel.h +++ b/modules/juce_gui_extra/misc/juce_PreferencesPanel.h @@ -57,7 +57,7 @@ public: PreferencesPanel(); /** Destructor. */ - ~PreferencesPanel(); + ~PreferencesPanel() override; //============================================================================== /** Creates a page using a set of drawables to define the page's icon. diff --git a/modules/juce_gui_extra/misc/juce_SplashScreen.h b/modules/juce_gui_extra/misc/juce_SplashScreen.h index c011a3d2f0..aa96a2a947 100644 --- a/modules/juce_gui_extra/misc/juce_SplashScreen.h +++ b/modules/juce_gui_extra/misc/juce_SplashScreen.h @@ -106,7 +106,7 @@ public: bool useDropShadow); /** Destructor. */ - ~SplashScreen(); + ~SplashScreen() override; /** Tells the component to auto-delete itself after a timeout period, or when the mouse is clicked. diff --git a/modules/juce_gui_extra/misc/juce_WebBrowserComponent.h b/modules/juce_gui_extra/misc/juce_WebBrowserComponent.h index ee9cd6157e..912d87e8d4 100644 --- a/modules/juce_gui_extra/misc/juce_WebBrowserComponent.h +++ b/modules/juce_gui_extra/misc/juce_WebBrowserComponent.h @@ -56,7 +56,7 @@ public: explicit WebBrowserComponent (bool unloadPageWhenBrowserIsHidden = true); /** Destructor. */ - ~WebBrowserComponent(); + ~WebBrowserComponent() override; //============================================================================== /** Sends the browser to a particular URL. diff --git a/modules/juce_gui_extra/native/juce_mac_NSViewComponent.mm b/modules/juce_gui_extra/native/juce_mac_NSViewComponent.mm index ce43a60aca..daf3ad3afa 100644 --- a/modules/juce_gui_extra/native/juce_mac_NSViewComponent.mm +++ b/modules/juce_gui_extra/native/juce_mac_NSViewComponent.mm @@ -113,7 +113,7 @@ public: attachViewWatcher (view); } - ~NSViewAttachment() + ~NSViewAttachment() override { detachViewWatcher(); removeFromParent(); diff --git a/modules/juce_gui_extra/native/juce_mac_SystemTrayIcon.cpp b/modules/juce_gui_extra/native/juce_mac_SystemTrayIcon.cpp index b49f9060ff..19c9f6b7d3 100644 --- a/modules/juce_gui_extra/native/juce_mac_SystemTrayIcon.cpp +++ b/modules/juce_gui_extra/native/juce_mac_SystemTrayIcon.cpp @@ -54,7 +54,7 @@ public: object: nil]; } - ~Pimpl() + ~Pimpl() override { [[NSNotificationCenter defaultCenter] removeObserver: view]; [[NSStatusBar systemStatusBar] removeStatusItem: statusItem]; diff --git a/modules/juce_gui_extra/native/juce_mac_WebBrowserComponent.mm b/modules/juce_gui_extra/native/juce_mac_WebBrowserComponent.mm index 7f9d96c19e..4f45d008d6 100644 --- a/modules/juce_gui_extra/native/juce_mac_WebBrowserComponent.mm +++ b/modules/juce_gui_extra/native/juce_mac_WebBrowserComponent.mm @@ -288,39 +288,43 @@ public: #else urlString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; #endif - NSMutableURLRequest* r - = [NSMutableURLRequest requestWithURL: [NSURL URLWithString: urlString] - cachePolicy: NSURLRequestUseProtocolCachePolicy - timeoutInterval: 30.0]; - if (postData != nullptr && postData->getSize() > 0) + if (NSURL* nsURL = [NSURL URLWithString: urlString]) { - [r setHTTPMethod: nsStringLiteral ("POST")]; - [r setHTTPBody: [NSData dataWithBytes: postData->getData() - length: postData->getSize()]]; - } + NSMutableURLRequest* r + = [NSMutableURLRequest requestWithURL: nsURL + cachePolicy: NSURLRequestUseProtocolCachePolicy + timeoutInterval: 30.0]; - if (headers != nullptr) - { - for (int i = 0; i < headers->size(); ++i) + if (postData != nullptr && postData->getSize() > 0) { - const String headerName ((*headers)[i].upToFirstOccurrenceOf (":", false, false).trim()); - const String headerValue ((*headers)[i].fromFirstOccurrenceOf (":", false, false).trim()); + [r setHTTPMethod: nsStringLiteral ("POST")]; + [r setHTTPBody: [NSData dataWithBytes: postData->getData() + length: postData->getSize()]]; + } - [r setValue: juceStringToNS (headerValue) - forHTTPHeaderField: juceStringToNS (headerName)]; + if (headers != nullptr) + { + for (int i = 0; i < headers->size(); ++i) + { + auto headerName = (*headers)[i].upToFirstOccurrenceOf (":", false, false).trim(); + auto headerValue = (*headers)[i].fromFirstOccurrenceOf (":", false, false).trim(); + + [r setValue: juceStringToNS (headerValue) + forHTTPHeaderField: juceStringToNS (headerName)]; + } } - } - #if JUCE_MAC - [[webView mainFrame] loadRequest: r]; - #else - [webView loadRequest: r]; - #endif + #if JUCE_MAC + [[webView mainFrame] loadRequest: r]; + #else + [webView loadRequest: r]; + #endif - #if JUCE_IOS - [webView setScalesPageToFit:YES]; - #endif + #if JUCE_IOS + [webView setScalesPageToFit:YES]; + #endif + } } }