| @@ -3228,7 +3228,7 @@ | |||||
| INFOPLIST_PREPROCESS = NO; | INFOPLIST_PREPROCESS = NO; | ||||
| INSTALL_PATH = "$(HOME)/Applications"; | INSTALL_PATH = "$(HOME)/Applications"; | ||||
| MACOSX_DEPLOYMENT_TARGET = 10.11; | 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_BUNDLE_IDENTIFIER = com.juce.theprojucer; | ||||
| PRODUCT_NAME = "Projucer"; | PRODUCT_NAME = "Projucer"; | ||||
| USE_HEADERMAP = NO; | USE_HEADERMAP = NO; | ||||
| @@ -3273,7 +3273,7 @@ | |||||
| INSTALL_PATH = "$(HOME)/Applications"; | INSTALL_PATH = "$(HOME)/Applications"; | ||||
| LLVM_LTO = YES; | LLVM_LTO = YES; | ||||
| MACOSX_DEPLOYMENT_TARGET = 10.11; | 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_BUNDLE_IDENTIFIER = com.juce.theprojucer; | ||||
| PRODUCT_NAME = "Projucer"; | PRODUCT_NAME = "Projucer"; | ||||
| USE_HEADERMAP = NO; | USE_HEADERMAP = NO; | ||||
| @@ -8,7 +8,7 @@ | |||||
| <EXPORTFORMATS> | <EXPORTFORMATS> | ||||
| <XCODE_MAC targetFolder="Builds/MacOSX" vstFolder="~/SDKs/vstsdk2.4" rtasFolder="~/SDKs/PT_80_SDK" | <XCODE_MAC targetFolder="Builds/MacOSX" vstFolder="~/SDKs/vstsdk2.4" rtasFolder="~/SDKs/PT_80_SDK" | ||||
| documentExtensions=".jucer" objCExtraSuffix="zkVtji" bigIcon="rv1F4h" | documentExtensions=".jucer" objCExtraSuffix="zkVtji" bigIcon="rv1F4h" | ||||
| extraLinkerFlags="" extraCompilerFlags="-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" | |||||
| extraLinkerFlags="" extraCompilerFlags="-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" | |||||
| customPList="<plist> <dict> 	<key>NSAppTransportSecurity</key> 	<dict> 		<key>NSAllowsArbitraryLoads</key> 		<true/> 		<key>NSExceptionDomains</key> 		<dict> 			<key>amazonaws.com</key> 			<dict> 				<key>NSExceptionAllowsInsecureHTTPLoads</key> 				<true/> 				<key>NSIncludesSubdomains</key> 				<true/> 			</dict> 		</dict> 	</dict> </dict> </plist>" | customPList="<plist> <dict> 	<key>NSAppTransportSecurity</key> 	<dict> 		<key>NSAllowsArbitraryLoads</key> 		<true/> 		<key>NSExceptionDomains</key> 		<dict> 			<key>amazonaws.com</key> 			<dict> 				<key>NSExceptionAllowsInsecureHTTPLoads</key> 				<true/> 				<key>NSIncludesSubdomains</key> 				<true/> 			</dict> 		</dict> 	</dict> </dict> </plist>" | ||||
| extraFrameworks="AudioUnit; Accelerate; AVFoundation; CoreAudio; CoreAudioKit; CoreMIDI; DiscRecording; QuartzCore; AudioToolbox; OpenGL; QTKit; QuickTime"> | extraFrameworks="AudioUnit; Accelerate; AVFoundation; CoreAudio; CoreAudioKit; CoreMIDI; DiscRecording; QuartzCore; AudioToolbox; OpenGL; QTKit; QuickTime"> | ||||
| <CONFIGURATIONS> | <CONFIGURATIONS> | ||||
| @@ -91,7 +91,7 @@ public: | |||||
| } | } | ||||
| } | } | ||||
| ~ApplicationUsageDataWindowComponent() | |||||
| ~ApplicationUsageDataWindowComponent() override | |||||
| { | { | ||||
| if (auto* controller = ProjucerApplication::getApp().licenseController.get()) | if (auto* controller = ProjucerApplication::getApp().licenseController.get()) | ||||
| { | { | ||||
| @@ -142,7 +142,7 @@ private: | |||||
| saveSchemeState(); | saveSchemeState(); | ||||
| } | } | ||||
| ~EditorPanel() | |||||
| ~EditorPanel() override | |||||
| { | { | ||||
| if (hasSchemeBeenModifiedSinceSave()) | if (hasSchemeBeenModifiedSinceSave()) | ||||
| saveScheme (true); | saveScheme (true); | ||||
| @@ -60,7 +60,7 @@ struct FloatingToolWindow : public DialogWindow | |||||
| owner.reset (this); | owner.reset (this); | ||||
| } | } | ||||
| ~FloatingToolWindow() | |||||
| ~FloatingToolWindow() override | |||||
| { | { | ||||
| if (windowPosProperty.isNotEmpty()) | if (windowPosProperty.isNotEmpty()) | ||||
| getGlobalProperties().setValue (windowPosProperty, getWindowStateAsString()); | getGlobalProperties().setValue (windowPosProperty, getWindowStateAsString()); | ||||
| @@ -70,7 +70,7 @@ public: | |||||
| lastUserModulePath = getAppSettings().getStoredPath (Ids::defaultUserModulePath, TargetOS::getThisOS()).get(); | lastUserModulePath = getAppSettings().getStoredPath (Ids::defaultUserModulePath, TargetOS::getThisOS()).get(); | ||||
| } | } | ||||
| ~GlobalPathsWindowComponent() | |||||
| ~GlobalPathsWindowComponent() override | |||||
| { | { | ||||
| auto juceValue = getAppSettings().getStoredPath (Ids::defaultJuceModulePath, TargetOS::getThisOS()); | auto juceValue = getAppSettings().getStoredPath (Ids::defaultJuceModulePath, TargetOS::getThisOS()); | ||||
| auto userValue = getAppSettings().getStoredPath (Ids::defaultUserModulePath, TargetOS::getThisOS()); | auto userValue = getAppSettings().getStoredPath (Ids::defaultUserModulePath, TargetOS::getThisOS()); | ||||
| @@ -85,7 +85,7 @@ public: | |||||
| pipTree.addListener (this); | pipTree.addListener (this); | ||||
| } | } | ||||
| ~PIPCreatorWindowComponent() | |||||
| ~PIPCreatorWindowComponent() override | |||||
| { | { | ||||
| setLookAndFeel (nullptr); | setLookAndFeel (nullptr); | ||||
| } | } | ||||
| @@ -316,7 +316,7 @@ public: | |||||
| lookAndFeelChanged(); | lookAndFeelChanged(); | ||||
| } | } | ||||
| ~UpdateUserDialog() | |||||
| ~UpdateUserDialog() override | |||||
| { | { | ||||
| titleLabel.reset(); | titleLabel.reset(); | ||||
| contentLabel.reset(); | contentLabel.reset(); | ||||
| @@ -58,7 +58,7 @@ public: | |||||
| //============================================================================== | //============================================================================== | ||||
| LatestVersionChecker(); | LatestVersionChecker(); | ||||
| ~LatestVersionChecker(); | |||||
| ~LatestVersionChecker() override; | |||||
| static String getOSString(); | static String getOSString(); | ||||
| @@ -42,7 +42,7 @@ class MainWindow : public DocumentWindow, | |||||
| public: | public: | ||||
| //============================================================================== | //============================================================================== | ||||
| MainWindow(); | MainWindow(); | ||||
| ~MainWindow(); | |||||
| ~MainWindow() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| void closeButtonPressed() override; | void closeButtonPressed() override; | ||||
| @@ -43,7 +43,7 @@ class ProjucerAnalyticsDestination : public ThreadedAnalyticsDestination | |||||
| { | { | ||||
| public: | public: | ||||
| ProjucerAnalyticsDestination(); | ProjucerAnalyticsDestination(); | ||||
| ~ProjucerAnalyticsDestination(); | |||||
| ~ProjucerAnalyticsDestination() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| bool logBatchedEvents (const Array<AnalyticsEvent>&) override; | bool logBatchedEvents (const Array<AnalyticsEvent>&) override; | ||||
| @@ -35,7 +35,7 @@ class DocumentEditorComponent : public Component, | |||||
| public: | public: | ||||
| //============================================================================== | //============================================================================== | ||||
| DocumentEditorComponent (OpenDocumentManager::Document* document); | DocumentEditorComponent (OpenDocumentManager::Document* document); | ||||
| ~DocumentEditorComponent(); | |||||
| ~DocumentEditorComponent() override; | |||||
| OpenDocumentManager::Document* getDocument() const { return document; } | OpenDocumentManager::Document* getDocument() const { return document; } | ||||
| @@ -40,7 +40,7 @@ public: | |||||
| { | { | ||||
| } | } | ||||
| ~LiveBuildCodeEditor() | |||||
| ~LiveBuildCodeEditor() override | |||||
| { | { | ||||
| for (int i = getNumChildComponents(); --i >= 0;) | for (int i = getNumChildComponents(); --i >= 0;) | ||||
| if (auto* c = dynamic_cast<DiagnosticOverlayComponent*> (getChildComponent (i))) | if (auto* c = dynamic_cast<DiagnosticOverlayComponent*> (getChildComponent (i))) | ||||
| @@ -77,7 +77,7 @@ private: | |||||
| endPosition.setPositionMaintained (true); | endPosition.setPositionMaintained (true); | ||||
| } | } | ||||
| ~OverlayComponent() | |||||
| ~OverlayComponent() override | |||||
| { | { | ||||
| setEditor (nullptr); | setEditor (nullptr); | ||||
| } | } | ||||
| @@ -224,7 +224,7 @@ private: | |||||
| startTimer (600); | startTimer (600); | ||||
| } | } | ||||
| ~ComponentClassList() | |||||
| ~ComponentClassList() override | |||||
| { | { | ||||
| deleteOverlays(); | deleteOverlays(); | ||||
| } | } | ||||
| @@ -627,7 +627,7 @@ private: | |||||
| owner.getDocument().addListener (this); | owner.getDocument().addListener (this); | ||||
| } | } | ||||
| ~LiteralHighlightOverlay() | |||||
| ~LiteralHighlightOverlay() override | |||||
| { | { | ||||
| if (auto* p = getParentComponent()) | if (auto* p = getParentComponent()) | ||||
| { | { | ||||
| @@ -145,7 +145,7 @@ class SourceCodeEditor : public DocumentEditorComponent, | |||||
| public: | public: | ||||
| SourceCodeEditor (OpenDocumentManager::Document*, CodeDocument&); | SourceCodeEditor (OpenDocumentManager::Document*, CodeDocument&); | ||||
| SourceCodeEditor (OpenDocumentManager::Document*, GenericCodeEditorComponent*); | SourceCodeEditor (OpenDocumentManager::Document*, GenericCodeEditorComponent*); | ||||
| ~SourceCodeEditor(); | |||||
| ~SourceCodeEditor() override; | |||||
| void scrollToKeepRangeOnScreen (Range<int> range); | void scrollToKeepRangeOnScreen (Range<int> range); | ||||
| void highlight (Range<int> range, bool cursorAtStart); | void highlight (Range<int> range, bool cursorAtStart); | ||||
| @@ -179,7 +179,7 @@ class GenericCodeEditorComponent : public CodeEditorComponent | |||||
| { | { | ||||
| public: | public: | ||||
| GenericCodeEditorComponent (const File&, CodeDocument&, CodeTokeniser*); | GenericCodeEditorComponent (const File&, CodeDocument&, CodeTokeniser*); | ||||
| ~GenericCodeEditorComponent(); | |||||
| ~GenericCodeEditorComponent() override; | |||||
| void addPopupMenuItems (PopupMenu&, const MouseEvent*) override; | void addPopupMenuItems (PopupMenu&, const MouseEvent*) override; | ||||
| void performPopupMenuAction (int menuItemID) override; | void performPopupMenuAction (int menuItemID) override; | ||||
| @@ -225,7 +225,7 @@ class CppCodeEditorComponent : public GenericCodeEditorComponent | |||||
| { | { | ||||
| public: | public: | ||||
| CppCodeEditorComponent (const File&, CodeDocument&); | CppCodeEditorComponent (const File&, CodeDocument&); | ||||
| ~CppCodeEditorComponent(); | |||||
| ~CppCodeEditorComponent() override; | |||||
| void addPopupMenuItems (PopupMenu&, const MouseEvent*) override; | void addPopupMenuItems (PopupMenu&, const MouseEvent*) override; | ||||
| void performPopupMenuAction (int menuItemID) override; | void performPopupMenuAction (int menuItemID) override; | ||||
| @@ -798,7 +798,7 @@ private: | |||||
| document.addChangeListener (this); | document.addChangeListener (this); | ||||
| } | } | ||||
| ~TabColourProperty() | |||||
| ~TabColourProperty() override | |||||
| { | { | ||||
| document.removeChangeListener (this); | document.removeChangeListener (this); | ||||
| } | } | ||||
| @@ -112,7 +112,7 @@ public: | |||||
| addAndMakeVisible (layout->getComponent (i)); | addAndMakeVisible (layout->getComponent (i)); | ||||
| } | } | ||||
| ~NormalTestComponent() | |||||
| ~NormalTestComponent() override | |||||
| { | { | ||||
| for (int i = getNumChildComponents(); --i >= 0;) | for (int i = getNumChildComponents(); --i >= 0;) | ||||
| removeChildComponent (i); | removeChildComponent (i); | ||||
| @@ -43,7 +43,7 @@ public: | |||||
| const bool showOutline_, | const bool showOutline_, | ||||
| const bool showJointAndEnd_); | const bool showJointAndEnd_); | ||||
| ~ColouredElement(); | |||||
| ~ColouredElement() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| void getEditableProperties (Array<PropertyComponent*>& props, bool multipleSelected) override; | void getEditableProperties (Array<PropertyComponent*>& props, bool multipleSelected) override; | ||||
| @@ -45,7 +45,7 @@ class PaintElement : public Component, | |||||
| public: | public: | ||||
| //============================================================================== | //============================================================================== | ||||
| PaintElement (PaintRoutine* owner, const String& typeName); | PaintElement (PaintRoutine* owner, const String& typeName); | ||||
| virtual ~PaintElement(); | |||||
| ~PaintElement() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| virtual void setInitialBounds (int parentWidth, int parentHeight); | virtual void setInitialBounds (int parentWidth, int parentHeight); | ||||
| @@ -34,8 +34,7 @@ class PaintElementGroup : public PaintElement | |||||
| { | { | ||||
| public: | public: | ||||
| PaintElementGroup (PaintRoutine*); | PaintElementGroup (PaintRoutine*); | ||||
| ~PaintElementGroup(); | |||||
| ~PaintElementGroup() override; | |||||
| void ungroup (const bool); | void ungroup (const bool); | ||||
| @@ -36,7 +36,7 @@ class PaintElementImage : public PaintElement | |||||
| { | { | ||||
| public: | public: | ||||
| PaintElementImage (PaintRoutine*); | PaintElementImage (PaintRoutine*); | ||||
| ~PaintElementImage(); | |||||
| ~PaintElementImage() override; | |||||
| enum StretchMode | enum StretchMode | ||||
| { | { | ||||
| @@ -64,7 +64,7 @@ class PaintElementPath : public ColouredElement | |||||
| { | { | ||||
| public: | public: | ||||
| PaintElementPath (PaintRoutine* owner); | PaintElementPath (PaintRoutine* owner); | ||||
| ~PaintElementPath(); | |||||
| ~PaintElementPath() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| void setInitialBounds (int parentWidth, int parentHeight) override; | void setInitialBounds (int parentWidth, int parentHeight) override; | ||||
| @@ -405,7 +405,7 @@ private: | |||||
| element->getDocument()->addChangeListener (this); | element->getDocument()->addChangeListener (this); | ||||
| } | } | ||||
| ~TextProperty() | |||||
| ~TextProperty() override | |||||
| { | { | ||||
| element->getDocument()->removeChangeListener (this); | element->getDocument()->removeChangeListener (this); | ||||
| } | } | ||||
| @@ -39,8 +39,8 @@ class ComponentLayoutEditor : public Component, | |||||
| { | { | ||||
| public: | public: | ||||
| //============================================================================== | //============================================================================== | ||||
| ComponentLayoutEditor (JucerDocument& document, ComponentLayout& layout); | |||||
| ~ComponentLayoutEditor(); | |||||
| ComponentLayoutEditor (JucerDocument&, ComponentLayout&); | |||||
| ~ComponentLayoutEditor() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| void paint (Graphics&) override; | void paint (Graphics&) override; | ||||
| @@ -39,7 +39,7 @@ public: | |||||
| ComponentOverlayComponent (Component* const targetComponent, | ComponentOverlayComponent (Component* const targetComponent, | ||||
| ComponentLayout& layout); | ComponentLayout& layout); | ||||
| ~ComponentOverlayComponent(); | |||||
| ~ComponentOverlayComponent() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| virtual void showPopupMenu(); | virtual void showPopupMenu(); | ||||
| @@ -44,7 +44,7 @@ public: | |||||
| Component* propsPanel, | Component* propsPanel, | ||||
| Component* editorComp); | Component* editorComp); | ||||
| ~EditingPanelBase(); | |||||
| ~EditingPanelBase() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| void resized() override; | void resized() override; | ||||
| @@ -54,7 +54,7 @@ public: | |||||
| document.addChangeListener (this); | document.addChangeListener (this); | ||||
| } | } | ||||
| ~ExtraMethodsList() | |||||
| ~ExtraMethodsList() override | |||||
| { | { | ||||
| document.removeChangeListener (this); | document.removeChangeListener (this); | ||||
| } | } | ||||
| @@ -165,7 +165,7 @@ public: | |||||
| doc.addChangeListener (this); | doc.addChangeListener (this); | ||||
| } | } | ||||
| ~ClassPropertiesPanel() | |||||
| ~ClassPropertiesPanel() override | |||||
| { | { | ||||
| document.removeChangeListener (this); | document.removeChangeListener (this); | ||||
| } | } | ||||
| @@ -39,7 +39,7 @@ class JucerDocumentEditor : public Component, | |||||
| public: | public: | ||||
| //============================================================================== | //============================================================================== | ||||
| JucerDocumentEditor (JucerDocument* const document); | JucerDocumentEditor (JucerDocument* const document); | ||||
| ~JucerDocumentEditor(); | |||||
| ~JucerDocumentEditor() override; | |||||
| JucerDocument* getDocument() const noexcept { return document.get(); } | JucerDocument* getDocument() const noexcept { return document.get(); } | ||||
| @@ -43,7 +43,7 @@ public: | |||||
| document.addChangeListener (this); | document.addChangeListener (this); | ||||
| } | } | ||||
| ~ComponentBackgroundColourProperty() | |||||
| ~ComponentBackgroundColourProperty() override | |||||
| { | { | ||||
| document.removeChangeListener (this); | document.removeChangeListener (this); | ||||
| } | } | ||||
| @@ -35,7 +35,7 @@ class ResourceEditorPanel : public Component, | |||||
| { | { | ||||
| public: | public: | ||||
| ResourceEditorPanel (JucerDocument& document); | ResourceEditorPanel (JucerDocument& document); | ||||
| ~ResourceEditorPanel(); | |||||
| ~ResourceEditorPanel() override; | |||||
| void resized() override; | void resized() override; | ||||
| void paint (Graphics& g) override; | void paint (Graphics& g) override; | ||||
| @@ -37,7 +37,7 @@ public: | |||||
| JucerDocument* const loadedDocument, | JucerDocument* const loadedDocument, | ||||
| const bool alwaysFillBackground); | const bool alwaysFillBackground); | ||||
| ~TestComponent(); | |||||
| ~TestComponent() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| void setFilename (const String& fn); | void setFilename (const String& fn); | ||||
| @@ -40,7 +40,7 @@ class JucerDocument : public ChangeBroadcaster, | |||||
| { | { | ||||
| public: | public: | ||||
| JucerDocument (SourceCodeDocument* cpp); | JucerDocument (SourceCodeDocument* cpp); | ||||
| ~JucerDocument(); | |||||
| ~JucerDocument() override; | |||||
| static bool isValidJucerCppFile (const File&); | static bool isValidJucerCppFile (const File&); | ||||
| static XmlElement* pullMetaDataFromCppFile (const String& cpp); | static XmlElement* pullMetaDataFromCppFile (const String& cpp); | ||||
| @@ -78,7 +78,7 @@ static const char* const elementNames[] = | |||||
| nullptr | 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; | const int numElementTypes = (sizeof (elementNames) / sizeof (elementNames[0])) - 1; | ||||
| PaintElement* createNewElement (const int index, PaintRoutine* owner) | PaintElement* createNewElement (const int index, PaintRoutine* owner) | ||||
| @@ -158,7 +158,7 @@ static ComponentTypeHandler* const compTypes[] = | |||||
| nullptr | nullptr | ||||
| }; | }; | ||||
| ComponentTypeHandler** const componentTypeHandlers = (ComponentTypeHandler**) compTypes; | |||||
| ComponentTypeHandler* const* const componentTypeHandlers = (ComponentTypeHandler* const*) compTypes; | |||||
| const int numComponentTypes = numElementsInArray (compTypes) - 1; | const int numComponentTypes = numElementsInArray (compTypes) - 1; | ||||
| } | } | ||||
| @@ -34,12 +34,12 @@ namespace ObjectTypes | |||||
| { | { | ||||
| //============================================================================== | //============================================================================== | ||||
| // Component types | // Component types | ||||
| extern ComponentTypeHandler** const componentTypeHandlers; | |||||
| extern ComponentTypeHandler* const* const componentTypeHandlers; | |||||
| extern const int numComponentTypes; | extern const int numComponentTypes; | ||||
| //============================================================================== | //============================================================================== | ||||
| // Element types | // Element types | ||||
| extern const char** const elementTypeNames; | |||||
| extern const char* const* const elementTypeNames; | |||||
| extern const int numElementTypes; | extern const int numElementTypes; | ||||
| PaintElement* createNewElement (const int index, PaintRoutine* owner); | PaintElement* createNewElement (const int index, PaintRoutine* owner); | ||||
| @@ -33,7 +33,7 @@ struct NetWorkerThread : public Thread, | |||||
| { | { | ||||
| NetWorkerThread() : Thread ("License") {} | NetWorkerThread() : Thread ("License") {} | ||||
| ~NetWorkerThread() | |||||
| ~NetWorkerThread() override | |||||
| { | { | ||||
| JUCE_ASSERT_MESSAGE_MANAGER_IS_LOCKED | JUCE_ASSERT_MESSAGE_MANAGER_IS_LOCKED | ||||
| @@ -65,7 +65,7 @@ private: | |||||
| struct RedirectWebBrowserComponent : public WebBrowserComponent | struct RedirectWebBrowserComponent : public WebBrowserComponent | ||||
| { | { | ||||
| RedirectWebBrowserComponent (LicenseWebviewContent& controller) : WebBrowserComponent (false), owner (controller) {} | RedirectWebBrowserComponent (LicenseWebviewContent& controller) : WebBrowserComponent (false), owner (controller) {} | ||||
| virtual ~RedirectWebBrowserComponent() {} | |||||
| ~RedirectWebBrowserComponent() override {} | |||||
| bool pageAboutToLoad (const String& url) override { return owner.pageAboutToLoad (url); } | bool pageAboutToLoad (const String& url) override { return owner.pageAboutToLoad (url); } | ||||
| void pageFinishedLoading (const String& url) override { owner.pageFinishedLoading (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()) | if (auto* licenseController = ProjucerApplication::getApp().licenseController.get()) | ||||
| licenseController->removeLicenseStatusChangedCallback (this); | licenseController->removeLicenseStatusChangedCallback (this); | ||||
| @@ -45,7 +45,7 @@ public: | |||||
| activityList.addChangeListener (this); | activityList.addChangeListener (this); | ||||
| } | } | ||||
| ~CurrentActivitiesComp() | |||||
| ~CurrentActivitiesComp() override | |||||
| { | { | ||||
| activityList.removeChangeListener (this); | activityList.removeChangeListener (this); | ||||
| } | } | ||||
| @@ -42,7 +42,7 @@ public: | |||||
| errorList.addChangeListener (this); | errorList.addChangeListener (this); | ||||
| } | } | ||||
| ~BuildStatusTabComp() | |||||
| ~BuildStatusTabComp() override | |||||
| { | { | ||||
| activityList.removeChangeListener (this); | activityList.removeChangeListener (this); | ||||
| errorList.removeChangeListener (this); | errorList.removeChangeListener (this); | ||||
| @@ -48,7 +48,7 @@ public: | |||||
| owner.activityList.addListener (this); | owner.activityList.addListener (this); | ||||
| } | } | ||||
| ~ComponentListComp() | |||||
| ~ComponentListComp() override | |||||
| { | { | ||||
| saveOpenness(); | saveOpenness(); | ||||
| owner.activityList.removeListener (this); | owner.activityList.removeListener (this); | ||||
| @@ -47,7 +47,7 @@ public: | |||||
| errorListChanged(); | errorListChanged(); | ||||
| } | } | ||||
| ~ErrorListComp() | |||||
| ~ErrorListComp() override | |||||
| { | { | ||||
| errorList.removeChangeListener (this); | errorList.removeChangeListener (this); | ||||
| } | } | ||||
| @@ -219,7 +219,7 @@ private: | |||||
| uniqueID << message.message << ':' << message.range.toString(); | uniqueID << message.message << ':' << message.range.toString(); | ||||
| } | } | ||||
| ~ErrorMessageTreeItem() | |||||
| ~ErrorMessageTreeItem() override | |||||
| { | { | ||||
| overlay.deleteAndZero(); | overlay.deleteAndZero(); | ||||
| } | } | ||||
| @@ -210,7 +210,7 @@ public: | |||||
| openedOk = true; | openedOk = true; | ||||
| } | } | ||||
| ~ChildProcess() | |||||
| ~ChildProcess() override | |||||
| { | { | ||||
| projectRoot.removeListener (this); | projectRoot.removeListener (this); | ||||
| @@ -642,7 +642,7 @@ struct CompileEngineChildProcess::Editor : private CodeDocument::Listener, | |||||
| document.addListener (this); | document.addListener (this); | ||||
| } | } | ||||
| ~Editor() | |||||
| ~Editor() override | |||||
| { | { | ||||
| document.removeListener (this); | document.removeListener (this); | ||||
| } | } | ||||
| @@ -36,7 +36,7 @@ class CompileEngineChildProcess : public ReferenceCountedObject, | |||||
| { | { | ||||
| public: | public: | ||||
| CompileEngineChildProcess (Project&); | CompileEngineChildProcess (Project&); | ||||
| ~CompileEngineChildProcess(); | |||||
| ~CompileEngineChildProcess() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| bool openedOk() const { return process != nullptr; } | bool openedOk() const { return process != nullptr; } | ||||
| @@ -67,7 +67,7 @@ struct ZombiePatrol : private Thread, | |||||
| startTimer (1000); | startTimer (1000); | ||||
| } | } | ||||
| ~ZombiePatrol() | |||||
| ~ZombiePatrol() override | |||||
| { | { | ||||
| stopThread (1000); | stopThread (1000); | ||||
| } | } | ||||
| @@ -161,7 +161,7 @@ public: | |||||
| zombieKiller.reset (new ZombiePatrol (*this)); | zombieKiller.reset (new ZombiePatrol (*this)); | ||||
| } | } | ||||
| ~ServerIPC() | |||||
| ~ServerIPC() override | |||||
| { | { | ||||
| zombieKiller.reset(); | zombieKiller.reset(); | ||||
| @@ -38,7 +38,7 @@ public: | |||||
| item.state.addListener (this); | item.state.addListener (this); | ||||
| } | } | ||||
| ~FileTreeItemBase() | |||||
| ~FileTreeItemBase() override | |||||
| { | { | ||||
| item.state.removeListener (this); | item.state.removeListener (this); | ||||
| } | } | ||||
| @@ -456,7 +456,7 @@ public: | |||||
| project.getExporterPathsModuleList().addListener (this); | project.getExporterPathsModuleList().addListener (this); | ||||
| } | } | ||||
| ~EnabledModulesItem() | |||||
| ~EnabledModulesItem() override | |||||
| { | { | ||||
| ProjucerApplication::getApp().getJUCEPathModuleList().removeListener (this); | ProjucerApplication::getApp().getJUCEPathModuleList().removeListener (this); | ||||
| ProjucerApplication::getApp().getUserPathsModuleList().removeListener (this); | ProjucerApplication::getApp().getUserPathsModuleList().removeListener (this); | ||||
| @@ -42,7 +42,7 @@ struct ProjectSettingsComponent : public Component, | |||||
| project.addChangeListener (this); | project.addChangeListener (this); | ||||
| } | } | ||||
| ~ProjectSettingsComponent() | |||||
| ~ProjectSettingsComponent() override | |||||
| { | { | ||||
| project.removeChangeListener (this); | project.removeChangeListener (this); | ||||
| } | } | ||||
| @@ -139,7 +139,7 @@ public: | |||||
| buildConcertina(); | buildConcertina(); | ||||
| } | } | ||||
| ~ProjectTab() | |||||
| ~ProjectTab() override | |||||
| { | { | ||||
| getFileTreePanel()->saveOpenness(); | getFileTreePanel()->saveOpenness(); | ||||
| getModuleTreePanel()->saveOpenness(); | getModuleTreePanel()->saveOpenness(); | ||||
| @@ -111,7 +111,7 @@ public: | |||||
| lookAndFeelChanged(); | lookAndFeelChanged(); | ||||
| } | } | ||||
| ~FindPanel() | |||||
| ~FindPanel() override | |||||
| { | { | ||||
| Desktop::getInstance().removeFocusChangeListener (this); | Desktop::getInstance().removeFocusChangeListener (this); | ||||
| } | } | ||||
| @@ -194,7 +194,7 @@ public: | |||||
| addAndMakeVisible (treeToDisplay.get()); | addAndMakeVisible (treeToDisplay.get()); | ||||
| } | } | ||||
| ~ConcertinaTreeComponent() | |||||
| ~ConcertinaTreeComponent() override | |||||
| { | { | ||||
| treeToDisplay.reset(); | treeToDisplay.reset(); | ||||
| addButton.reset(); | addButton.reset(); | ||||
| @@ -50,7 +50,7 @@ public: | |||||
| addAndMakeVisible (header); | addAndMakeVisible (header); | ||||
| } | } | ||||
| ~FileGroupInformationComponent() | |||||
| ~FileGroupInformationComponent() override | |||||
| { | { | ||||
| item.state.removeListener (this); | item.state.removeListener (this); | ||||
| } | } | ||||
| @@ -40,7 +40,7 @@ class HeaderComponent : public Component, | |||||
| { | { | ||||
| public: | public: | ||||
| HeaderComponent(); | HeaderComponent(); | ||||
| ~HeaderComponent(); | |||||
| ~HeaderComponent() override; | |||||
| //========================================================================== | //========================================================================== | ||||
| void resized() override; | void resized() override; | ||||
| @@ -44,7 +44,7 @@ class ProjectContentComponent : public Component, | |||||
| public: | public: | ||||
| //============================================================================== | //============================================================================== | ||||
| ProjectContentComponent(); | ProjectContentComponent(); | ||||
| ~ProjectContentComponent(); | |||||
| ~ProjectContentComponent() override; | |||||
| Project* getProject() const noexcept { return project; } | Project* getProject() const noexcept { return project; } | ||||
| virtual void setProject (Project*); | virtual void setProject (Project*); | ||||
| @@ -42,7 +42,7 @@ class Project : public FileBasedDocument, | |||||
| public: | public: | ||||
| //============================================================================== | //============================================================================== | ||||
| Project (const File&); | Project (const File&); | ||||
| ~Project(); | |||||
| ~Project() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| // FileBasedDocument stuff.. | // FileBasedDocument stuff.. | ||||
| @@ -34,7 +34,7 @@ class StoredSettings : public ValueTree::Listener | |||||
| { | { | ||||
| public: | public: | ||||
| StoredSettings(); | StoredSettings(); | ||||
| ~StoredSettings(); | |||||
| ~StoredSettings() override; | |||||
| PropertiesFile& getGlobalProperties(); | PropertiesFile& getGlobalProperties(); | ||||
| PropertiesFile& getProjectProperties (const String& projectUID); | PropertiesFile& getProjectProperties (const String& projectUID); | ||||
| @@ -54,7 +54,7 @@ public: | |||||
| struct ColourSelectorWithSwatches : public ColourSelector | struct ColourSelectorWithSwatches : public ColourSelector | ||||
| { | { | ||||
| ColourSelectorWithSwatches(); | ColourSelectorWithSwatches(); | ||||
| ~ColourSelectorWithSwatches(); | |||||
| ~ColourSelectorWithSwatches() override; | |||||
| int getNumSwatches() const override; | int getNumSwatches() const override; | ||||
| Colour getSwatchColour (int index) const override; | Colour getSwatchColour (int index) const override; | ||||
| @@ -46,7 +46,7 @@ public: | |||||
| setLookAndFeel (&lf); | setLookAndFeel (&lf); | ||||
| } | } | ||||
| ~LabelPropertyComponent() { setLookAndFeel (nullptr); } | |||||
| ~LabelPropertyComponent() override { setLookAndFeel (nullptr); } | |||||
| //============================================================================== | //============================================================================== | ||||
| void refresh() override {} | void refresh() override {} | ||||
| @@ -45,7 +45,7 @@ public: | |||||
| setEnabled (valueWithDefault.get()); | setEnabled (valueWithDefault.get()); | ||||
| } | } | ||||
| ~TextPropertyComponentWithEnablement() { value.removeListener (this); } | |||||
| ~TextPropertyComponentWithEnablement() override { value.removeListener (this); } | |||||
| private: | private: | ||||
| ValueWithDefault valueWithDefault; | ValueWithDefault valueWithDefault; | ||||
| @@ -72,7 +72,7 @@ public: | |||||
| setEnabled (valueWithDefault.get()); | setEnabled (valueWithDefault.get()); | ||||
| } | } | ||||
| ~ChoicePropertyComponentWithEnablement() { value.removeListener (this); } | |||||
| ~ChoicePropertyComponentWithEnablement() override { value.removeListener (this); } | |||||
| private: | private: | ||||
| ValueWithDefault valueWithDefault; | ValueWithDefault valueWithDefault; | ||||
| @@ -35,7 +35,7 @@ class JucerTreeViewBase : public TreeViewItem, | |||||
| { | { | ||||
| public: | public: | ||||
| JucerTreeViewBase(); | JucerTreeViewBase(); | ||||
| ~JucerTreeViewBase(); | |||||
| ~JucerTreeViewBase() override; | |||||
| int getItemWidth() const override { return -1; } | int getItemWidth() const override { return -1; } | ||||
| int getItemHeight() const override { return 25; } | int getItemHeight() const override { return 25; } | ||||
| @@ -134,7 +134,7 @@ public: | |||||
| tree.addMouseListener (this, true); | tree.addMouseListener (this, true); | ||||
| } | } | ||||
| ~TreePanelBase() | |||||
| ~TreePanelBase() override | |||||
| { | { | ||||
| tree.setRootItem (nullptr); | tree.setRootItem (nullptr); | ||||
| } | } | ||||
| @@ -32,7 +32,7 @@ class ProjucerLookAndFeel : public LookAndFeel_V4 | |||||
| { | { | ||||
| public: | public: | ||||
| ProjucerLookAndFeel(); | ProjucerLookAndFeel(); | ||||
| ~ProjucerLookAndFeel(); | |||||
| ~ProjucerLookAndFeel() override; | |||||
| void drawTabButton (TabBarButton& button, Graphics&, bool isMouseOver, bool isMouseDown) override; | void drawTabButton (TabBarButton& button, Graphics&, bool isMouseOver, bool isMouseDown) override; | ||||
| int getTabButtonBestWidth (TabBarButton&, int tabDepth) override; | int getTabButtonBestWidth (TabBarButton&, int tabDepth) override; | ||||
| @@ -33,7 +33,7 @@ class SlidingPanelComponent : public Component | |||||
| { | { | ||||
| public: | public: | ||||
| SlidingPanelComponent(); | SlidingPanelComponent(); | ||||
| ~SlidingPanelComponent(); | |||||
| ~SlidingPanelComponent() override; | |||||
| /** Adds a new tab to the panel slider. */ | /** Adds a new tab to the panel slider. */ | ||||
| void addTab (const String& tabName, | void addTab (const String& tabName, | ||||
| @@ -63,7 +63,7 @@ public: | |||||
| int triggeredEventType = 0); | int triggeredEventType = 0); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~ButtonTracker(); | |||||
| ~ButtonTracker() override; | |||||
| private: | private: | ||||
| /** @internal */ | /** @internal */ | ||||
| @@ -63,7 +63,7 @@ public: | |||||
| ThreadedAnalyticsDestination (const String& threadName = "Analytics thread"); | ThreadedAnalyticsDestination (const String& threadName = "Analytics thread"); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| virtual ~ThreadedAnalyticsDestination(); | |||||
| ~ThreadedAnalyticsDestination() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** | /** | ||||
| @@ -30,8 +30,8 @@ AbstractFifo::AbstractFifo (int capacity) noexcept : bufferSize (capacity) | |||||
| AbstractFifo::~AbstractFifo() {} | 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 | 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 vs = validStart.get(); | ||||
| auto ve = validEnd.get(); | auto ve = validEnd.get(); | ||||
| @@ -91,7 +92,8 @@ void AbstractFifo::finishedWrite (int numWritten) noexcept | |||||
| validEnd = newEnd; | 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 vs = validStart.get(); | ||||
| auto ve = validEnd.get(); | auto ve = validEnd.get(); | ||||
| @@ -198,6 +200,10 @@ void AbstractFifo::ScopedReadWrite<AbstractFifo::ReadOrWrite::write>::finish (Ab | |||||
| template class AbstractFifo::ScopedReadWrite<AbstractFifo::ReadOrWrite::read>; | template class AbstractFifo::ScopedReadWrite<AbstractFifo::ReadOrWrite::read>; | ||||
| template class AbstractFifo::ScopedReadWrite<AbstractFifo::ReadOrWrite::write>; | template class AbstractFifo::ScopedReadWrite<AbstractFifo::ReadOrWrite::write>; | ||||
| AbstractFifo::ScopedRead AbstractFifo::read (int numToRead) noexcept { return { *this, numToRead }; } | |||||
| AbstractFifo::ScopedWrite AbstractFifo::write (int numToWrite) noexcept { return { *this, numToWrite }; } | |||||
| //============================================================================== | //============================================================================== | ||||
| #if JUCE_UNIT_TESTS | #if JUCE_UNIT_TESTS | ||||
| @@ -281,7 +281,7 @@ public: | |||||
| } // readHandle goes out of scope here, finishing the read operation | } // readHandle goes out of scope here, finishing the read operation | ||||
| @endcode | @endcode | ||||
| */ | */ | ||||
| ScopedRead read (int numToRead) noexcept { return { *this, numToRead }; } | |||||
| ScopedRead read (int numToRead) noexcept; | |||||
| /** Replaces prepareToWrite/finishedWrite with a single function. | /** Replaces prepareToWrite/finishedWrite with a single function. | ||||
| This function returns an object which contains the start indices and | 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 | } // writeHandle goes out of scope here, finishing the write operation | ||||
| @endcode | @endcode | ||||
| */ | */ | ||||
| ScopedWrite write (int numToWrite) noexcept { return { *this, numToWrite }; } | |||||
| ScopedWrite write (int numToWrite) noexcept; | |||||
| private: | private: | ||||
| //============================================================================== | //============================================================================== | ||||
| @@ -44,7 +44,7 @@ public: | |||||
| explicit FileInputStream (const File& fileToRead); | explicit FileInputStream (const File& fileToRead); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~FileInputStream(); | |||||
| ~FileInputStream() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Returns the file that this stream is reading from. */ | /** Returns the file that this stream is reading from. */ | ||||
| @@ -67,7 +67,7 @@ public: | |||||
| size_t bufferSizeToUse = 16384); | size_t bufferSizeToUse = 16384); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~FileOutputStream(); | |||||
| ~FileOutputStream() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Returns the file that this stream is writing to. | /** Returns the file that this stream is writing to. | ||||
| @@ -57,7 +57,7 @@ public: | |||||
| const String& description); | const String& description); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~WildcardFileFilter(); | |||||
| ~WildcardFileFilter() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Returns true if the filename matches one of the patterns specified. */ | /** Returns true if the filename matches one of the patterns specified. */ | ||||
| @@ -56,7 +56,7 @@ public: | |||||
| const int64 maxInitialFileSizeBytes = 128 * 1024); | const int64 maxInitialFileSizeBytes = 128 * 1024); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~FileLogger(); | |||||
| ~FileLogger() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Returns the file that this logger is writing to. */ | /** Returns the file that this logger is writing to. */ | ||||
| @@ -171,7 +171,7 @@ uint32* BigInteger::getValues() const noexcept | |||||
| jassert (heapAllocation != nullptr || allocatedSize <= numPreallocatedInts); | jassert (heapAllocation != nullptr || allocatedSize <= numPreallocatedInts); | ||||
| return heapAllocation != nullptr ? heapAllocation | return heapAllocation != nullptr ? heapAllocation | ||||
| : (uint32*) preallocated; | |||||
| : const_cast<uint32*> (preallocated); | |||||
| } | } | ||||
| uint32* BigInteger::ensureSize (const size_t numVals) | uint32* BigInteger::ensureSize (const size_t numVals) | ||||
| @@ -44,7 +44,7 @@ inline void deleteAndZero (Type& pointer) { delete poi | |||||
| a specific number of bytes, | a specific number of bytes, | ||||
| */ | */ | ||||
| template <typename Type, typename IntegerType> | template <typename Type, typename IntegerType> | ||||
| 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<char*> (reinterpret_cast<const char*> (basePointer)) + bytes); } | |||||
| /** A handy function to round up a pointer to the nearest multiple of a given number of 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. */ | alignmentBytes must be a power of two. */ | ||||
| @@ -37,7 +37,7 @@ void MACAddress::findAllAddresses (Array<MACAddress>& result) | |||||
| if (sto.sa_family == AF_LINK) | if (sto.sa_family == AF_LINK) | ||||
| { | { | ||||
| auto sadd = (const sockaddr_dl*) cursor->ifa_addr; | |||||
| auto sadd = reinterpret_cast<const sockaddr_dl*> (cursor->ifa_addr); | |||||
| #ifndef IFT_ETHER | #ifndef IFT_ETHER | ||||
| enum { IFT_ETHER = 6 }; | enum { IFT_ETHER = 6 }; | ||||
| @@ -127,7 +127,7 @@ public: | |||||
| DelegateClass::setState (delegate, this); | DelegateClass::setState (delegate, this); | ||||
| } | } | ||||
| ~URLConnectionState() | |||||
| ~URLConnectionState() override | |||||
| { | { | ||||
| signalThreadShouldExit(); | signalThreadShouldExit(); | ||||
| @@ -1096,38 +1096,44 @@ private: | |||||
| { | { | ||||
| jassert (connection == nullptr); | 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)); | |||||
| } | |||||
| } | |||||
| } | } | ||||
| } | } | ||||
| @@ -92,7 +92,7 @@ String String::convertToPrecomposedUnicode() const | |||||
| bytesNeeded, &bytesRead, | bytesNeeded, &bytesRead, | ||||
| &outputBufferSize, tempOut) == noErr) | &outputBufferSize, tempOut) == noErr) | ||||
| { | { | ||||
| result = String (CharPointer_UTF16 ((CharPointer_UTF16::CharType*) tempOut.get())); | |||||
| result = String (CharPointer_UTF16 (reinterpret_cast<CharPointer_UTF16::CharType*> (tempOut.get()))); | |||||
| } | } | ||||
| DisposeUnicodeToTextInfo (&conversionInfo); | DisposeUnicodeToTextInfo (&conversionInfo); | ||||
| @@ -71,8 +71,8 @@ namespace | |||||
| { | { | ||||
| if (ifa->ifa_addr->sa_family == AF_INET) | 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<sockaddr_in*> (ifa->ifa_addr); | |||||
| auto broadcastAddressInfo = reinterpret_cast<sockaddr_in*> (ifa->ifa_dstaddr); | |||||
| if (interfaceAddressInfo->sin_addr.s_addr != INADDR_NONE) | if (interfaceAddressInfo->sin_addr.s_addr != INADDR_NONE) | ||||
| { | { | ||||
| @@ -83,8 +83,8 @@ namespace | |||||
| } | } | ||||
| else if (ifa->ifa_addr->sa_family == AF_INET6) | 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<sockaddr_in6*> (ifa->ifa_addr)); | |||||
| interfaceInfo.broadcastAddress = makeAddress (reinterpret_cast<sockaddr_in6*> (ifa->ifa_dstaddr)); | |||||
| return true; | return true; | ||||
| } | } | ||||
| } | } | ||||
| @@ -46,7 +46,7 @@ struct FallbackDownloadTask : public URL::DownloadTask, | |||||
| startThread(); | startThread(); | ||||
| } | } | ||||
| ~FallbackDownloadTask() | |||||
| ~FallbackDownloadTask() override | |||||
| { | { | ||||
| signalThreadShouldExit(); | signalThreadShouldExit(); | ||||
| stream->cancel(); | stream->cancel(); | ||||
| @@ -50,7 +50,7 @@ class JUCE_API WebInputStream : public InputStream | |||||
| */ | */ | ||||
| WebInputStream (const URL& url, const bool usePost); | WebInputStream (const URL& url, const bool usePost); | ||||
| ~WebInputStream(); | |||||
| ~WebInputStream() override; | |||||
| /** Add extra headers to http request | /** Add extra headers to http request | ||||
| @@ -61,7 +61,7 @@ public: | |||||
| This may also delete the source stream, if that option was chosen when the | This may also delete the source stream, if that option was chosen when the | ||||
| buffered stream was created. | buffered stream was created. | ||||
| */ | */ | ||||
| ~BufferedInputStream(); | |||||
| ~BufferedInputStream() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| @@ -43,7 +43,7 @@ public: | |||||
| FileInputSource (const File& file, bool useFileTimeInHashGeneration = false); | FileInputSource (const File& file, bool useFileTimeInHashGeneration = false); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~FileInputSource(); | |||||
| ~FileInputSource() override; | |||||
| InputStream* createInputStream() override; | InputStream* createInputStream() override; | ||||
| InputStream* createInputStreamFor (const String& relatedItemPath) override; | InputStream* createInputStreamFor (const String& relatedItemPath) override; | ||||
| @@ -63,7 +63,7 @@ public: | |||||
| bool keepInternalCopyOfData); | bool keepInternalCopyOfData); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~MemoryInputStream(); | |||||
| ~MemoryInputStream() override; | |||||
| /** Returns a pointer to the source data block from which this stream is reading. */ | /** Returns a pointer to the source data block from which this stream is reading. */ | ||||
| const void* getData() const noexcept { return data; } | const void* getData() const noexcept { return data; } | ||||
| @@ -66,7 +66,7 @@ public: | |||||
| /** Destructor. | /** Destructor. | ||||
| This will free any data that was written to it. | 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. | /** Returns a pointer to the data that has been written to the stream. | ||||
| @@ -62,7 +62,7 @@ public: | |||||
| This may also delete the source stream, if that option was chosen when the | This may also delete the source stream, if that option was chosen when the | ||||
| buffered stream was created. | buffered stream was created. | ||||
| */ | */ | ||||
| ~SubregionStream(); | |||||
| ~SubregionStream() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| @@ -45,7 +45,7 @@ public: | |||||
| URLInputSource (URL&& url); | URLInputSource (URL&& url); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~URLInputSource(); | |||||
| ~URLInputSource() override; | |||||
| InputStream* createInputStream() override; | InputStream* createInputStream() override; | ||||
| InputStream* createInputStreamFor (const String& relatedItemPath) override; | InputStream* createInputStreamFor (const String& relatedItemPath) override; | ||||
| @@ -2005,7 +2005,7 @@ String String::createStringFromData (const void* const unknownData, int size) | |||||
| StringCreationHelper builder ((size_t) numChars); | StringCreationHelper builder ((size_t) numChars); | ||||
| auto src = (const uint16*) (data + 2); | |||||
| auto src = reinterpret_cast<const uint16*> (data + 2); | |||||
| if (CharPointer_UTF16::isByteOrderMarkBigEndian (data)) | if (CharPointer_UTF16::isByteOrderMarkBigEndian (data)) | ||||
| { | { | ||||
| @@ -2075,19 +2075,19 @@ struct StringEncodingConverter | |||||
| template <> | template <> | ||||
| struct StringEncodingConverter<CharPointer_UTF8, CharPointer_UTF8> | struct StringEncodingConverter<CharPointer_UTF8, CharPointer_UTF8> | ||||
| { | { | ||||
| 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<CharPointer_UTF8::CharType*> (source.getCharPointer().getAddress())); } | |||||
| }; | }; | ||||
| template <> | template <> | ||||
| struct StringEncodingConverter<CharPointer_UTF16, CharPointer_UTF16> | struct StringEncodingConverter<CharPointer_UTF16, CharPointer_UTF16> | ||||
| { | { | ||||
| 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<CharPointer_UTF16::CharType*> (source.getCharPointer().getAddress())); } | |||||
| }; | }; | ||||
| template <> | template <> | ||||
| struct StringEncodingConverter<CharPointer_UTF32, CharPointer_UTF32> | struct StringEncodingConverter<CharPointer_UTF32, CharPointer_UTF32> | ||||
| { | { | ||||
| 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<CharPointer_UTF32::CharType*> (source.getCharPointer().getAddress())); } | |||||
| }; | }; | ||||
| CharPointer_UTF8 String::toUTF8() const { return StringEncodingConverter<CharPointerType, CharPointer_UTF8 >::convert (*this); } | CharPointer_UTF8 String::toUTF8() const { return StringEncodingConverter<CharPointerType, CharPointer_UTF8 >::convert (*this); } | ||||
| @@ -98,7 +98,7 @@ public: | |||||
| should always call stopThread() with a decent timeout before deleting, | should always call stopThread() with a decent timeout before deleting, | ||||
| to avoid the thread being forcibly killed (which is a Bad Thing). | to avoid the thread being forcibly killed (which is a Bad Thing). | ||||
| */ | */ | ||||
| ~TimeSliceThread(); | |||||
| ~TimeSliceThread() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Adds a client to the list. | /** Adds a client to the list. | ||||
| @@ -72,7 +72,7 @@ public: | |||||
| int windowBits = 0); | int windowBits = 0); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~GZIPCompressorOutputStream(); | |||||
| ~GZIPCompressorOutputStream() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Flushes and closes the stream. | /** Flushes and closes the stream. | ||||
| @@ -70,7 +70,7 @@ public: | |||||
| GZIPDecompressorInputStream (InputStream& sourceStream); | GZIPDecompressorInputStream (InputStream& sourceStream); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~GZIPDecompressorInputStream(); | |||||
| ~GZIPDecompressorInputStream() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| int64 getPosition() override; | int64 getPosition() override; | ||||
| @@ -154,7 +154,7 @@ struct ZipFile::ZipInputStream : public InputStream | |||||
| } | } | ||||
| } | } | ||||
| ~ZipInputStream() | |||||
| ~ZipInputStream() override | |||||
| { | { | ||||
| #if JUCE_DEBUG | #if JUCE_DEBUG | ||||
| if (inputStream != nullptr && inputStream == file.inputStream) | if (inputStream != nullptr && inputStream == file.inputStream) | ||||
| @@ -180,7 +180,7 @@ public: | |||||
| /** Destructor. | /** Destructor. | ||||
| When deleted, the file will first call saveIfNeeded() to flush any changes to disk. | 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. | /** Returns true if this file was created from a valid (or non-existent) file. | ||||
| @@ -180,7 +180,7 @@ public: | |||||
| { | { | ||||
| public: | public: | ||||
| ValueSource(); | ValueSource(); | ||||
| virtual ~ValueSource(); | |||||
| virtual ~ValueSource() override; | |||||
| /** Returns the current value of this object. */ | /** Returns the current value of this object. */ | ||||
| virtual var getValue() const = 0; | virtual var getValue() const = 0; | ||||
| @@ -815,7 +815,7 @@ struct ValueTreePropertyValueSource : public Value::ValueSource, | |||||
| tree.addListener (this); | tree.addListener (this); | ||||
| } | } | ||||
| ~ValueTreePropertyValueSource() | |||||
| ~ValueTreePropertyValueSource() override | |||||
| { | { | ||||
| tree.removeListener (this); | tree.removeListener (this); | ||||
| } | } | ||||
| @@ -55,7 +55,7 @@ public: | |||||
| ValueTreeSynchroniser (const ValueTree& tree); | ValueTreeSynchroniser (const ValueTree& tree); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| virtual ~ValueTreeSynchroniser(); | |||||
| ~ValueTreeSynchroniser() override; | |||||
| /** This callback happens when the ValueTree changes and the given state-change message | /** 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. | needs to be applied to any other trees that need to stay in sync with it. | ||||
| @@ -94,7 +94,7 @@ struct ChildProcessMaster::Connection : public InterprocessConnection, | |||||
| startThread (4); | startThread (4); | ||||
| } | } | ||||
| ~Connection() | |||||
| ~Connection() override | |||||
| { | { | ||||
| stopThread (10000); | stopThread (10000); | ||||
| } | } | ||||
| @@ -192,7 +192,7 @@ struct ChildProcessSlave::Connection : public InterprocessConnection, | |||||
| startThread (4); | startThread (4); | ||||
| } | } | ||||
| ~Connection() | |||||
| ~Connection() override | |||||
| { | { | ||||
| stopThread (10000); | stopThread (10000); | ||||
| } | } | ||||
| @@ -45,7 +45,7 @@ public: | |||||
| InterprocessConnectionServer(); | InterprocessConnectionServer(); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~InterprocessConnectionServer(); | |||||
| ~InterprocessConnectionServer() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Starts an internal thread which listens on the given port number. | /** Starts an internal thread which listens on the given port number. | ||||
| @@ -53,7 +53,7 @@ struct NetworkServiceDiscovery | |||||
| RelativeTime minTimeBetweenBroadcasts = RelativeTime::seconds (1.5)); | RelativeTime minTimeBetweenBroadcasts = RelativeTime::seconds (1.5)); | ||||
| /** Destructor */ | /** Destructor */ | ||||
| ~Advertiser(); | |||||
| ~Advertiser() override; | |||||
| private: | private: | ||||
| XmlElement message; | XmlElement message; | ||||
| @@ -101,7 +101,7 @@ struct NetworkServiceDiscovery | |||||
| AvailableServiceList (const String& serviceTypeUID, int broadcastPort); | AvailableServiceList (const String& serviceTypeUID, int broadcastPort); | ||||
| /** Destructor */ | /** Destructor */ | ||||
| ~AvailableServiceList(); | |||||
| ~AvailableServiceList() override; | |||||
| /** A lambda that can be set to recieve a callback when the list changes */ | /** A lambda that can be set to recieve a callback when the list changes */ | ||||
| std::function<void()> onChange; | std::function<void()> onChange; | ||||
| @@ -46,7 +46,7 @@ public: | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Creates an uninitialised message. */ | /** Creates an uninitialised message. */ | ||||
| Message() noexcept; | Message() noexcept; | ||||
| ~Message(); | |||||
| ~Message() override; | |||||
| using Ptr = ReferenceCountedObjectPtr<Message>; | using Ptr = ReferenceCountedObjectPtr<Message>; | ||||
| @@ -433,7 +433,7 @@ bool MessageManagerLock::attemptLock (Thread* threadToCheck, ThreadPoolJob* jobT | |||||
| return true; | return true; | ||||
| } | } | ||||
| MessageManagerLock::~MessageManagerLock() noexcept { mmLock.exit(); } | |||||
| MessageManagerLock::~MessageManagerLock() { mmLock.exit(); } | |||||
| void MessageManagerLock::exitSignalSent() | void MessageManagerLock::exitSignalSent() | ||||
| { | { | ||||
| @@ -452,7 +452,7 @@ public: | |||||
| Make sure this object is created and deleted by the same thread, | Make sure this object is created and deleted by the same thread, | ||||
| otherwise there are no guarantees what will happen! | otherwise there are no guarantees what will happen! | ||||
| */ | */ | ||||
| ~MessageManagerLock() noexcept; | |||||
| ~MessageManagerLock() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Returns true if the lock was successfully acquired. | /** Returns true if the lock was successfully acquired. | ||||
| @@ -454,7 +454,7 @@ void __attribute__ ((visibility("default"))) repostCurrentNSEvent() | |||||
| struct EventReposter : public CallbackMessage | struct EventReposter : public CallbackMessage | ||||
| { | { | ||||
| EventReposter() : e ([[NSApp currentEvent] retain]) {} | EventReposter() : e ([[NSApp currentEvent] retain]) {} | ||||
| ~EventReposter() { [e release]; } | |||||
| ~EventReposter() override { [e release]; } | |||||
| void messageCallback() override | void messageCallback() override | ||||
| { | { | ||||
| @@ -36,7 +36,7 @@ public: | |||||
| triggerAsyncUpdate(); | triggerAsyncUpdate(); | ||||
| } | } | ||||
| ~TimerThread() noexcept | |||||
| ~TimerThread() override | |||||
| { | { | ||||
| signalThreadShouldExit(); | signalThreadShouldExit(); | ||||
| callbackArrived.signal(); | callbackArrived.signal(); | ||||
| @@ -315,8 +315,7 @@ public: | |||||
| private: | private: | ||||
| //============================================================================== | //============================================================================== | ||||
| PixelARGB (const uint32 internalValue) noexcept | |||||
| : internal (internalValue) | |||||
| PixelARGB (uint32 internalValue) noexcept : internal (internalValue) | |||||
| { | { | ||||
| } | } | ||||
| @@ -378,9 +377,9 @@ public: | |||||
| forcedinline uint32 getNativeARGB() const noexcept | forcedinline uint32 getNativeARGB() const noexcept | ||||
| { | { | ||||
| #if JUCE_ANDROID | #if JUCE_ANDROID | ||||
| return (uint32) ((0xff << 24) | r | (g << 8) | (b << 16)); | |||||
| return (uint32) ((0xffu << 24) | r | ((uint32) g << 8) | ((uint32) b << 16)); | |||||
| #else | #else | ||||
| return (uint32) ((0xff << 24) | b | (g << 8) | (r << 16)); | |||||
| return (uint32) ((0xffu << 24) | b | ((uint32) g << 8) | ((uint32) r << 16)); | |||||
| #endif | #endif | ||||
| } | } | ||||
| @@ -389,7 +388,7 @@ public: | |||||
| forcedinline uint32 getInARGBMaskOrder() const noexcept | forcedinline uint32 getInARGBMaskOrder() const noexcept | ||||
| { | { | ||||
| #if JUCE_ANDROID | #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 | #else | ||||
| return getNativeARGB(); | return getNativeARGB(); | ||||
| #endif | #endif | ||||
| @@ -43,7 +43,7 @@ public: | |||||
| int totalWidth, | int totalWidth, | ||||
| int totalHeight); | int totalHeight); | ||||
| ~LowLevelGraphicsPostScriptRenderer(); | |||||
| ~LowLevelGraphicsPostScriptRenderer() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| bool isVectorDevice() const override; | bool isVectorDevice() const override; | ||||
| @@ -93,7 +93,7 @@ public: | |||||
| DropShadowEffect(); | DropShadowEffect(); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~DropShadowEffect(); | |||||
| ~DropShadowEffect() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Sets up parameters affecting the shadow's appearance. */ | /** Sets up parameters affecting the shadow's appearance. */ | ||||
| @@ -47,7 +47,7 @@ public: | |||||
| GlowEffect(); | GlowEffect(); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~GlowEffect(); | |||||
| ~GlowEffect() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Sets the glow's radius and colour. | /** Sets the glow's radius and colour. | ||||
| @@ -65,7 +65,7 @@ public: | |||||
| explicit CustomTypeface (InputStream& serialisedTypefaceStream); | explicit CustomTypeface (InputStream& serialisedTypefaceStream); | ||||
| /** Destructor. */ | /** Destructor. */ | ||||
| ~CustomTypeface(); | |||||
| ~CustomTypeface() override; | |||||
| //============================================================================== | //============================================================================== | ||||
| /** Resets this typeface, deleting all its glyphs and settings. */ | /** Resets this typeface, deleting all its glyphs and settings. */ | ||||
| @@ -528,7 +528,7 @@ class JUCE_API SoftwareImageType : public ImageType | |||||
| { | { | ||||
| public: | public: | ||||
| SoftwareImageType(); | SoftwareImageType(); | ||||
| ~SoftwareImageType(); | |||||
| ~SoftwareImageType() override; | |||||
| ImagePixelData::Ptr create (Image::PixelFormat, int width, int height, bool clearImage) const override; | ImagePixelData::Ptr create (Image::PixelFormat, int width, int height, bool clearImage) const override; | ||||
| int getTypeID() const override; | int getTypeID() const override; | ||||
| @@ -546,7 +546,7 @@ class JUCE_API NativeImageType : public ImageType | |||||
| { | { | ||||
| public: | public: | ||||
| NativeImageType(); | NativeImageType(); | ||||
| ~NativeImageType(); | |||||
| ~NativeImageType() override; | |||||
| ImagePixelData::Ptr create (Image::PixelFormat, int width, int height, bool clearImage) const override; | ImagePixelData::Ptr create (Image::PixelFormat, int width, int height, bool clearImage) const override; | ||||
| int getTypeID() const override; | int getTypeID() const override; | ||||