diff --git a/extras/Projucer/Source/Application/Windows/jucer_EditorColourSchemeWindowComponent.h b/extras/Projucer/Source/Application/Windows/jucer_EditorColourSchemeWindowComponent.h index 60884d2422..7df9cf8602 100644 --- a/extras/Projucer/Source/Application/Windows/jucer_EditorColourSchemeWindowComponent.h +++ b/extras/Projucer/Source/Application/Windows/jucer_EditorColourSchemeWindowComponent.h @@ -35,9 +35,9 @@ public: EditorColourSchemeWindowComponent() { if (getAppSettings().monospacedFontNames.size() == 0) - content = new AppearanceEditor::FontScanPanel(); + content.reset (new AppearanceEditor::FontScanPanel()); else - content = new AppearanceEditor::EditorPanel(); + content.reset (new AppearanceEditor::EditorPanel()); changeContent (content.get()); } @@ -54,10 +54,11 @@ public: void changeContent (Component* newContent) { - content = newContent; - addAndMakeVisible (content); + content.reset (newContent); + addAndMakeVisible (newContent); content->setBounds (getLocalBounds().reduced (10)); } + private: ScopedPointer content; diff --git a/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp b/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp index 7d120d09f9..679d560f3d 100644 --- a/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp +++ b/extras/Projucer/Source/Application/jucer_AutoUpdater.cpp @@ -184,7 +184,9 @@ public: { StringPairArray responseHeaders; - in = url.createInputStream (false, nullptr, nullptr, headers, 10000, &responseHeaders, &statusCode, 0); + in.reset (url.createInputStream (false, nullptr, nullptr, headers, + 10000, &responseHeaders, &statusCode, 0)); + if (in == nullptr || statusCode != 302) break; @@ -355,11 +357,11 @@ public: void buttonClicked (Button* clickedButton) override { - if (DialogWindow* parentDialog = findParentComponentOfClass()) + if (auto* parentDialog = findParentComponentOfClass()) { - if (clickedButton == overwriteButton) parentDialog->exitModalState (1); - else if (clickedButton == okButton) parentDialog->exitModalState (2); - else if (clickedButton == cancelButton) parentDialog->exitModalState (-1); + if (clickedButton == overwriteButton.get()) parentDialog->exitModalState (1); + else if (clickedButton == okButton.get()) parentDialog->exitModalState (2); + else if (clickedButton == cancelButton.get()) parentDialog->exitModalState (-1); } else jassertfalse; diff --git a/extras/Projucer/Source/Application/jucer_CommandLine.cpp b/extras/Projucer/Source/Application/jucer_CommandLine.cpp index f77596521d..71ba6acf2d 100644 --- a/extras/Projucer/Source/Application/jucer_CommandLine.cpp +++ b/extras/Projucer/Source/Application/jucer_CommandLine.cpp @@ -127,12 +127,12 @@ namespace { hideDockIcon(); - File projectFile = getFileCheckingForExistence (fileToLoad); + auto projectFile = getFileCheckingForExistence (fileToLoad); if (! projectFile.hasFileExtension (Project::projectFileExtension)) throw CommandLineError (projectFile.getFullPathName() + " isn't a valid jucer project file!"); - project = new Project (projectFile); + project.reset (new Project (projectFile)); if (! project->loadFrom (projectFile, true)) { @@ -145,8 +145,8 @@ namespace { if (project != nullptr) { - Result error (justSaveResources ? project->saveResourcesOnly (project->getFile()) - : project->saveProject (project->getFile(), true)); + auto error = justSaveResources ? project->saveResourcesOnly (project->getFile()) + : project->saveProject (project->getFile(), true); project.reset(); diff --git a/extras/Projucer/Source/CodeEditor/jucer_ItemPreviewComponent.h b/extras/Projucer/Source/CodeEditor/jucer_ItemPreviewComponent.h index 9816794b49..d08202a845 100644 --- a/extras/Projucer/Source/CodeEditor/jucer_ItemPreviewComponent.h +++ b/extras/Projucer/Source/CodeEditor/jucer_ItemPreviewComponent.h @@ -87,21 +87,21 @@ private: if (input != nullptr) { - const int64 totalSize = input->getTotalLength(); - + auto totalSize = input->getTotalLength(); String formatName; - if (ImageFileFormat* format = ImageFileFormat::findImageFormatForStream (*input)) + + if (auto* format = ImageFileFormat::findImageFormatForStream (*input)) formatName = " " + format->getFormatName(); input.reset(); - Image image (ImageCache::getFromFile (file)); + auto image = ImageCache::getFromFile (file); if (image.isValid()) { - DrawableImage* d = new DrawableImage(); + auto* d = new DrawableImage(); d->setImage (image); - drawable = d; + drawable.reset (d); facts.add (String (image.getWidth()) + " x " + String (image.getHeight()) + formatName); } @@ -116,7 +116,7 @@ private: ScopedPointer svg (XmlDocument::parse (file)); if (svg != nullptr) - drawable = Drawable::createFromSVG (*svg); + drawable.reset (Drawable::createFromSVG (*svg)); } facts.removeEmptyStrings (true); diff --git a/extras/Projucer/Source/CodeEditor/jucer_SourceCodeEditor.cpp b/extras/Projucer/Source/CodeEditor/jucer_SourceCodeEditor.cpp index 1ec95f4435..d2febfcf04 100644 --- a/extras/Projucer/Source/CodeEditor/jucer_SourceCodeEditor.cpp +++ b/extras/Projucer/Source/CodeEditor/jucer_SourceCodeEditor.cpp @@ -38,7 +38,7 @@ CodeDocument& SourceCodeDocument::getCodeDocument() { if (codeDoc == nullptr) { - codeDoc = new CodeDocument(); + codeDoc.reset (new CodeDocument()); reloadInternal(); codeDoc->clearUndoHistory(); } @@ -48,7 +48,7 @@ CodeDocument& SourceCodeDocument::getCodeDocument() Component* SourceCodeDocument::createEditor() { - SourceCodeEditor* e = new SourceCodeEditor (this, getCodeDocument()); + auto* e = new SourceCodeEditor (this, getCodeDocument()); applyLastState (*(e->editor)); return e; } @@ -105,7 +105,7 @@ bool SourceCodeDocument::saveAs() void SourceCodeDocument::updateLastState (CodeEditorComponent& editor) { - lastState = new CodeEditorComponent::State (editor); + lastState.reset (new CodeEditorComponent::State (editor)); } void SourceCodeDocument::applyLastState (CodeEditorComponent& editor) const @@ -169,7 +169,8 @@ void SourceCodeEditor::setEditor (GenericCodeEditorComponent* newEditor) if (editor != nullptr) editor->getDocument().removeListener (this); - addAndMakeVisible (editor = newEditor); + editor.reset (newEditor); + addAndMakeVisible (newEditor); editor->setFont (AppearanceSettings::getDefaultCodeFont()); editor->setTabSize (4, true); @@ -458,10 +459,9 @@ void GenericCodeEditorComponent::showFindPanel() { if (findPanel == nullptr) { - findPanel = new FindPanel(); + findPanel.reset (new FindPanel()); findPanel->setCommandManager (&ProjucerApplication::getCommandManager()); - - addAndMakeVisible (findPanel); + addAndMakeVisible (findPanel.get()); resized(); } diff --git a/extras/Projucer/Source/ComponentEditor/Documents/jucer_ButtonDocument.cpp b/extras/Projucer/Source/ComponentEditor/Documents/jucer_ButtonDocument.cpp index 95327547c4..f804572e46 100644 --- a/extras/Projucer/Source/ComponentEditor/Documents/jucer_ButtonDocument.cpp +++ b/extras/Projucer/Source/ComponentEditor/Documents/jucer_ButtonDocument.cpp @@ -54,7 +54,7 @@ ButtonDocument::ButtonDocument (SourceCodeDocument* c) for (int i = 7; --i >= 0;) { - paintRoutines[i] = new PaintRoutine(); + paintRoutines[i].reset (new PaintRoutine()); paintRoutines[i]->setDocument (this); paintRoutines[i]->setBackgroundColour (Colours::transparentBlack); } diff --git a/extras/Projucer/Source/ComponentEditor/Documents/jucer_ComponentDocument.cpp b/extras/Projucer/Source/ComponentEditor/Documents/jucer_ComponentDocument.cpp index 75416d597f..6c2000bedf 100644 --- a/extras/Projucer/Source/ComponentEditor/Documents/jucer_ComponentDocument.cpp +++ b/extras/Projucer/Source/ComponentEditor/Documents/jucer_ComponentDocument.cpp @@ -32,10 +32,10 @@ ComponentDocument::ComponentDocument (SourceCodeDocument* c) : JucerDocument (c) { - components = new ComponentLayout(); + components.reset (new ComponentLayout()); components->setDocument (this); - backgroundGraphics = new PaintRoutine(); + backgroundGraphics.reset (new PaintRoutine()); backgroundGraphics->setDocument (this); } diff --git a/extras/Projucer/Source/Licenses/jucer_LicenseController.h b/extras/Projucer/Source/Licenses/jucer_LicenseController.h index 17c522b617..b01d9468a3 100644 --- a/extras/Projucer/Source/Licenses/jucer_LicenseController.h +++ b/extras/Projucer/Source/Licenses/jucer_LicenseController.h @@ -105,7 +105,7 @@ private: struct ModalCompletionCallback; friend struct ModalCompletionCallback; - friend class ScopedPointer; + friend struct ContainerDeletePolicy; friend struct LicenseThread; //============================================================================== diff --git a/modules/juce_core/memory/juce_OptionalScopedPointer.h b/modules/juce_core/memory/juce_OptionalScopedPointer.h index 11f69bc3af..ed4007056c 100644 --- a/modules/juce_core/memory/juce_OptionalScopedPointer.h +++ b/modules/juce_core/memory/juce_OptionalScopedPointer.h @@ -80,7 +80,7 @@ public: if (object != objectToTransferFrom.object) { reset(); - object = objectToTransferFrom.object; + object.reset (objectToTransferFrom.object.release()); } shouldDelete = objectToTransferFrom.shouldDelete; @@ -101,7 +101,7 @@ public: inline operator ObjectType*() const noexcept { return object.get(); } /** Returns the object that this pointer is managing. */ - inline ObjectType* get() const noexcept { return object; } + inline ObjectType* get() const noexcept { return object.get(); } /** Returns the object that this pointer is managing. */ inline ObjectType& operator*() const noexcept { return *object; } @@ -136,7 +136,7 @@ public: */ void set (ObjectType* newObject, bool takeOwnership) { - if (object != newObject) + if (object.get() != newObject) { reset(); object = newObject; diff --git a/modules/juce_graphics/native/juce_RenderingHelpers.h b/modules/juce_graphics/native/juce_RenderingHelpers.h index 2421346745..18ede62528 100644 --- a/modules/juce_graphics/native/juce_RenderingHelpers.h +++ b/modules/juce_graphics/native/juce_RenderingHelpers.h @@ -2594,7 +2594,9 @@ public: auto t = transform.getTransformWith (AffineTransform::scale (fontHeight * font.getHorizontalScale(), fontHeight) .followedBy (trans)); - if (ScopedPointer et = font.getTypeface()->getEdgeTableForGlyph (glyphNumber, t, fontHeight)) + ScopedPointer et (font.getTypeface()->getEdgeTableForGlyph (glyphNumber, t, fontHeight)); + + if (et != nullptr) fillShape (new EdgeTableRegionType (*et), false); } } diff --git a/modules/juce_gui_basics/keyboard/juce_TextEditorKeyMapper.h b/modules/juce_gui_basics/keyboard/juce_TextEditorKeyMapper.h index 05594ac45d..30c5a9b1a1 100644 --- a/modules/juce_gui_basics/keyboard/juce_TextEditorKeyMapper.h +++ b/modules/juce_gui_basics/keyboard/juce_TextEditorKeyMapper.h @@ -41,7 +41,7 @@ struct TextEditorKeyMapper */ static bool invokeKeyFunction (CallbackClass& target, const KeyPress& key) { - const ModifierKeys& mods = key.getModifiers(); + auto mods = key.getModifiers(); const bool isShiftDown = mods.isShiftDown(); const bool ctrlOrAltDown = mods.isCtrlDown() || mods.isAltDown(); diff --git a/modules/juce_gui_basics/widgets/juce_Slider.cpp b/modules/juce_gui_basics/widgets/juce_Slider.cpp index 0c20e34426..b4e27300e8 100644 --- a/modules/juce_gui_basics/widgets/juce_Slider.cpp +++ b/modules/juce_gui_basics/widgets/juce_Slider.cpp @@ -1318,7 +1318,7 @@ public: JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (PopupDisplayComponent) }; - std::unique_ptr popupDisplay; + ScopedPointer popupDisplay; Component* parentForPopupDisplay = nullptr; //============================================================================== diff --git a/modules/juce_gui_extra/misc/juce_LiveConstantEditor.h b/modules/juce_gui_extra/misc/juce_LiveConstantEditor.h index 3571e11d7c..dacd885b28 100644 --- a/modules/juce_gui_extra/misc/juce_LiveConstantEditor.h +++ b/modules/juce_gui_extra/misc/juce_LiveConstantEditor.h @@ -161,7 +161,8 @@ namespace LiveConstantEditor template LivePropertyEditor (ValueType& v, CodeDocument& d) : LivePropertyEditorBase (v, d) { - addAndMakeVisible (customComp = CustomEditor::create (*this)); + customComp.reset (CustomEditor::create (*this)); + addAndMakeVisible (customComp.get()); } };