upgrade to JUCE 5.4.3. Remove (probably) unused JUCE modules. Remove VST2 target (it's been end-of-life'd by Steinberg and by JUCE)
This commit is contained in:
		@ -48,7 +48,7 @@ void ComponentDragger::dragComponent (Component* const componentToDrag, const Mo
 | 
			
		||||
 | 
			
		||||
    if (componentToDrag != nullptr)
 | 
			
		||||
    {
 | 
			
		||||
        Rectangle<int> bounds (componentToDrag->getBounds());
 | 
			
		||||
        auto bounds = componentToDrag->getBounds();
 | 
			
		||||
 | 
			
		||||
        // If the component is a window, multiple mouse events can get queued while it's in the same position,
 | 
			
		||||
        // so their coordinates become wrong after the first one moves the window, so in that case, we'll use
 | 
			
		||||
 | 
			
		||||
@ -62,7 +62,7 @@ public:
 | 
			
		||||
        setAlwaysOnTop (true);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    ~DragImageComponent()
 | 
			
		||||
    ~DragImageComponent() override
 | 
			
		||||
    {
 | 
			
		||||
        owner.dragImageComponents.remove (owner.dragImageComponents.indexOf (this), false);
 | 
			
		||||
 | 
			
		||||
@ -249,10 +249,16 @@ private:
 | 
			
		||||
 | 
			
		||||
        for (auto i = desktop.getNumComponents(); --i >= 0;)
 | 
			
		||||
        {
 | 
			
		||||
            auto* c = desktop.getComponent(i);
 | 
			
		||||
            auto* desktopComponent = desktop.getComponent (i);
 | 
			
		||||
            auto dPoint = desktopComponent->getLocalPoint (nullptr, screenPos);
 | 
			
		||||
 | 
			
		||||
            if (auto* hit = c->getComponentAt (c->getLocalPoint (nullptr, screenPos)))
 | 
			
		||||
                return hit;
 | 
			
		||||
            if (auto* c = desktopComponent->getComponentAt (dPoint))
 | 
			
		||||
            {
 | 
			
		||||
                auto cPoint = c->getLocalPoint (desktopComponent, dPoint);
 | 
			
		||||
 | 
			
		||||
                if (c->hitTest (cPoint.getX(), cPoint.getY()))
 | 
			
		||||
                    return c;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return nullptr;
 | 
			
		||||
 | 
			
		||||
@ -153,42 +153,46 @@ public:
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    //==============================================================================
 | 
			
		||||
    /** This performs a synchronous drag-and-drop of a set of files to some external
 | 
			
		||||
    /** This performs an asynchronous drag-and-drop of a set of files to some external
 | 
			
		||||
        application.
 | 
			
		||||
 | 
			
		||||
        You can call this function in response to a mouseDrag callback, and it will
 | 
			
		||||
        block, running its own internal message loop and tracking the mouse, while it
 | 
			
		||||
        uses a native operating system drag-and-drop operation to move or copy some
 | 
			
		||||
        use a native operating system drag-and-drop operation to move or copy some
 | 
			
		||||
        files to another application.
 | 
			
		||||
 | 
			
		||||
        @param files            a list of filenames to drag
 | 
			
		||||
        @param canMoveFiles     if true, the app that receives the files is allowed to move the files to a new location
 | 
			
		||||
                                (if this is appropriate). If false, the receiver is expected to make a copy of them.
 | 
			
		||||
        @param sourceComponent  Normally, JUCE will assume that the component under the mouse is the source component
 | 
			
		||||
        @param sourceComponent  normally, JUCE will assume that the component under the mouse is the source component
 | 
			
		||||
                                of the drag, but you can use this parameter to override this.
 | 
			
		||||
        @returns                true if the files were successfully dropped somewhere, or false if it
 | 
			
		||||
                                was interrupted
 | 
			
		||||
        @param callback         an optional completion callback that will be called when the operation has ended.
 | 
			
		||||
 | 
			
		||||
        @returns                true if the drag operation was successfully started, or false if it failed for some reason
 | 
			
		||||
 | 
			
		||||
        @see performExternalDragDropOfText
 | 
			
		||||
    */
 | 
			
		||||
    static bool performExternalDragDropOfFiles (const StringArray& files, bool canMoveFiles,
 | 
			
		||||
                                                Component* sourceComponent = nullptr);
 | 
			
		||||
                                                Component* sourceComponent = nullptr,
 | 
			
		||||
                                                std::function<void()> callback = nullptr);
 | 
			
		||||
 | 
			
		||||
    /** This performs a synchronous drag-and-drop of a block of text to some external
 | 
			
		||||
    /** This performs an asynchronous drag-and-drop of a block of text to some external
 | 
			
		||||
        application.
 | 
			
		||||
 | 
			
		||||
        You can call this function in response to a mouseDrag callback, and it will
 | 
			
		||||
        block, running its own internal message loop and tracking the mouse, while it
 | 
			
		||||
        uses a native operating system drag-and-drop operation to move or copy some
 | 
			
		||||
        use a native operating system drag-and-drop operation to move or copy some
 | 
			
		||||
        text to another application.
 | 
			
		||||
 | 
			
		||||
        @param text             the text to copy
 | 
			
		||||
        @param sourceComponent  Normally, JUCE will assume that the component under the mouse is the source component
 | 
			
		||||
                                of the drag, but you can use this parameter to override this.
 | 
			
		||||
        @returns                true if the text was successfully dropped somewhere, or false if it
 | 
			
		||||
                                was interrupted
 | 
			
		||||
        @param callback         an optional completion callback that will be called when the operation has ended.
 | 
			
		||||
 | 
			
		||||
        @returns                true if the drag operation was successfully started, or false if it failed for some reason
 | 
			
		||||
 | 
			
		||||
        @see performExternalDragDropOfFiles
 | 
			
		||||
    */
 | 
			
		||||
    static bool performExternalDragDropOfText (const String& text, Component* sourceComponent = nullptr);
 | 
			
		||||
    static bool performExternalDragDropOfText (const String& text, Component* sourceComponent = nullptr,
 | 
			
		||||
                                               std::function<void()> callback = nullptr);
 | 
			
		||||
 | 
			
		||||
protected:
 | 
			
		||||
    /** Override this if you want to be able to perform an external drag of a set of files
 | 
			
		||||
@ -230,8 +234,6 @@ protected:
 | 
			
		||||
private:
 | 
			
		||||
    //==============================================================================
 | 
			
		||||
    class DragImageComponent;
 | 
			
		||||
    friend class DragImageComponent;
 | 
			
		||||
    friend struct ContainerDeletePolicy<DragImageComponent>;
 | 
			
		||||
    OwnedArray<DragImageComponent> dragImageComponents;
 | 
			
		||||
 | 
			
		||||
    const MouseInputSource* getMouseInputSourceForDrag (Component* sourceComponent, const MouseInputSource* inputSourceCausingDrag);
 | 
			
		||||
 | 
			
		||||
@ -47,12 +47,10 @@ class JUCE_API  DragAndDropTarget
 | 
			
		||||
{
 | 
			
		||||
public:
 | 
			
		||||
    /** Destructor. */
 | 
			
		||||
    virtual ~DragAndDropTarget()  {}
 | 
			
		||||
    virtual ~DragAndDropTarget() = default;
 | 
			
		||||
 | 
			
		||||
    //==============================================================================
 | 
			
		||||
    /** Contains details about the source of a drag-and-drop operation.
 | 
			
		||||
        The contents of this
 | 
			
		||||
    */
 | 
			
		||||
    /** Contains details about the source of a drag-and-drop operation. */
 | 
			
		||||
    class JUCE_API  SourceDetails
 | 
			
		||||
    {
 | 
			
		||||
    public:
 | 
			
		||||
 | 
			
		||||
@ -38,7 +38,7 @@ class JUCE_API  FileDragAndDropTarget
 | 
			
		||||
{
 | 
			
		||||
public:
 | 
			
		||||
    /** Destructor. */
 | 
			
		||||
    virtual ~FileDragAndDropTarget()  {}
 | 
			
		||||
    virtual ~FileDragAndDropTarget() = default;
 | 
			
		||||
 | 
			
		||||
    /** Callback to check whether this target is interested in the set of files being offered.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -43,7 +43,7 @@ class LassoSource
 | 
			
		||||
{
 | 
			
		||||
public:
 | 
			
		||||
    /** Destructor. */
 | 
			
		||||
    virtual ~LassoSource() {}
 | 
			
		||||
    virtual ~LassoSource() = default;
 | 
			
		||||
 | 
			
		||||
    /** Returns the set of items that lie within a given lassoable region.
 | 
			
		||||
 | 
			
		||||
@ -103,7 +103,7 @@ class LassoComponent  : public Component
 | 
			
		||||
public:
 | 
			
		||||
    //==============================================================================
 | 
			
		||||
    /** Creates a Lasso component. */
 | 
			
		||||
    LassoComponent() {}
 | 
			
		||||
    LassoComponent() = default;
 | 
			
		||||
 | 
			
		||||
    //==============================================================================
 | 
			
		||||
    /** Call this in your mouseDown event, to initialise a drag.
 | 
			
		||||
 | 
			
		||||
@ -171,11 +171,10 @@ private:
 | 
			
		||||
    SharedCursorHandle* cursorHandle = nullptr;
 | 
			
		||||
 | 
			
		||||
    friend class MouseInputSourceInternal;
 | 
			
		||||
    void showInWindow (ComponentPeer* window) const;
 | 
			
		||||
    void showInAllWindows() const;
 | 
			
		||||
    void showInWindow (ComponentPeer*) const;
 | 
			
		||||
    void* getHandle() const noexcept;
 | 
			
		||||
 | 
			
		||||
    static void* createStandardMouseCursor (MouseCursor::StandardCursorType type);
 | 
			
		||||
    static void* createStandardMouseCursor (MouseCursor::StandardCursorType);
 | 
			
		||||
    static void deleteMouseCursor (void* cursorHandle, bool isStandard);
 | 
			
		||||
 | 
			
		||||
    JUCE_LEAK_DETECTOR (MouseCursor)
 | 
			
		||||
 | 
			
		||||
@ -47,12 +47,12 @@ MouseEvent::MouseEvent (MouseInputSource inputSource,
 | 
			
		||||
      pressure (force),
 | 
			
		||||
      orientation (o), rotation (r),
 | 
			
		||||
      tiltX (tX), tiltY (tY),
 | 
			
		||||
      mouseDownPosition (downPos),
 | 
			
		||||
      eventComponent (eventComp),
 | 
			
		||||
      originalComponent (originator),
 | 
			
		||||
      eventTime (time),
 | 
			
		||||
      mouseDownTime (downTime),
 | 
			
		||||
      source (inputSource),
 | 
			
		||||
      mouseDownPos (downPos),
 | 
			
		||||
      numberOfClicks ((uint8) numClicks),
 | 
			
		||||
      wasMovedSinceMouseDown ((uint8) (mouseWasDragged ? 1 : 0))
 | 
			
		||||
{
 | 
			
		||||
@ -70,21 +70,21 @@ MouseEvent MouseEvent::getEventRelativeTo (Component* const otherComponent) cons
 | 
			
		||||
    return MouseEvent (source, otherComponent->getLocalPoint (eventComponent, position),
 | 
			
		||||
                       mods, pressure, orientation, rotation, tiltX, tiltY,
 | 
			
		||||
                       otherComponent, originalComponent, eventTime,
 | 
			
		||||
                       otherComponent->getLocalPoint (eventComponent, mouseDownPos),
 | 
			
		||||
                       otherComponent->getLocalPoint (eventComponent, mouseDownPosition),
 | 
			
		||||
                       mouseDownTime, numberOfClicks, wasMovedSinceMouseDown != 0);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
MouseEvent MouseEvent::withNewPosition (Point<float> newPosition) const noexcept
 | 
			
		||||
{
 | 
			
		||||
    return MouseEvent (source, newPosition, mods, pressure, orientation, rotation, tiltX, tiltY,
 | 
			
		||||
                       eventComponent, originalComponent, eventTime, mouseDownPos, mouseDownTime,
 | 
			
		||||
                       eventComponent, originalComponent, eventTime, mouseDownPosition, mouseDownTime,
 | 
			
		||||
                       numberOfClicks, wasMovedSinceMouseDown != 0);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
MouseEvent MouseEvent::withNewPosition (Point<int> newPosition) const noexcept
 | 
			
		||||
{
 | 
			
		||||
    return MouseEvent (source, newPosition.toFloat(), mods, pressure, orientation, rotation,
 | 
			
		||||
                       tiltX, tiltY, eventComponent,  originalComponent, eventTime, mouseDownPos,
 | 
			
		||||
                       tiltX, tiltY, eventComponent,  originalComponent, eventTime, mouseDownPosition,
 | 
			
		||||
                       mouseDownTime, numberOfClicks, wasMovedSinceMouseDown != 0);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -111,14 +111,14 @@ int MouseEvent::getLengthOfMousePress() const noexcept
 | 
			
		||||
Point<int> MouseEvent::getPosition() const noexcept             { return Point<int> (x, y); }
 | 
			
		||||
Point<int> MouseEvent::getScreenPosition() const                { return eventComponent->localPointToGlobal (getPosition()); }
 | 
			
		||||
 | 
			
		||||
Point<int> MouseEvent::getMouseDownPosition() const noexcept    { return mouseDownPos.roundToInt(); }
 | 
			
		||||
Point<int> MouseEvent::getMouseDownScreenPosition() const       { return eventComponent->localPointToGlobal (mouseDownPos).roundToInt(); }
 | 
			
		||||
Point<int> MouseEvent::getMouseDownPosition() const noexcept    { return mouseDownPosition.roundToInt(); }
 | 
			
		||||
Point<int> MouseEvent::getMouseDownScreenPosition() const       { return eventComponent->localPointToGlobal (mouseDownPosition).roundToInt(); }
 | 
			
		||||
 | 
			
		||||
Point<int> MouseEvent::getOffsetFromDragStart() const noexcept  { return (position - mouseDownPos).roundToInt(); }
 | 
			
		||||
int MouseEvent::getDistanceFromDragStart() const noexcept       { return roundToInt (mouseDownPos.getDistanceFrom (position)); }
 | 
			
		||||
Point<int> MouseEvent::getOffsetFromDragStart() const noexcept  { return (position - mouseDownPosition).roundToInt(); }
 | 
			
		||||
int MouseEvent::getDistanceFromDragStart() const noexcept       { return roundToInt (mouseDownPosition.getDistanceFrom (position)); }
 | 
			
		||||
 | 
			
		||||
int MouseEvent::getMouseDownX() const noexcept                  { return roundToInt (mouseDownPos.x); }
 | 
			
		||||
int MouseEvent::getMouseDownY() const noexcept                  { return roundToInt (mouseDownPos.y); }
 | 
			
		||||
int MouseEvent::getMouseDownX() const noexcept                  { return roundToInt (mouseDownPosition.x); }
 | 
			
		||||
int MouseEvent::getMouseDownY() const noexcept                  { return roundToInt (mouseDownPosition.y); }
 | 
			
		||||
 | 
			
		||||
int MouseEvent::getDistanceFromDragStartX() const noexcept      { return getOffsetFromDragStart().x; }
 | 
			
		||||
int MouseEvent::getDistanceFromDragStartY() const noexcept      { return getOffsetFromDragStart().y; }
 | 
			
		||||
 | 
			
		||||
@ -149,6 +149,12 @@ public:
 | 
			
		||||
    */
 | 
			
		||||
    const float tiltY;
 | 
			
		||||
 | 
			
		||||
    /** The coordinates of the last place that a mouse button was pressed.
 | 
			
		||||
        The coordinates are relative to the component specified in MouseEvent::component.
 | 
			
		||||
        @see getDistanceFromDragStart, getDistanceFromDragStartX, mouseWasDraggedSinceMouseDown
 | 
			
		||||
    */
 | 
			
		||||
    const Point<float> mouseDownPosition;
 | 
			
		||||
 | 
			
		||||
    /** The component that this event applies to.
 | 
			
		||||
 | 
			
		||||
        This is usually the component that the mouse was over at the time, but for mouse-drag
 | 
			
		||||
@ -197,7 +203,8 @@ public:
 | 
			
		||||
 | 
			
		||||
    /** Returns the coordinates of the last place that a mouse was pressed.
 | 
			
		||||
        The coordinates are relative to the component specified in MouseEvent::component.
 | 
			
		||||
        @see getDistanceFromDragStart, getDistanceFromDragStartX, mouseWasDraggedSinceMouseDown
 | 
			
		||||
        For a floating point version of this value, see mouseDownPosition.
 | 
			
		||||
        @see mouseDownPosition, getDistanceFromDragStart, getDistanceFromDragStartX, mouseWasDraggedSinceMouseDown
 | 
			
		||||
    */
 | 
			
		||||
    Point<int> getMouseDownPosition() const noexcept;
 | 
			
		||||
 | 
			
		||||
@ -367,7 +374,6 @@ public:
 | 
			
		||||
 | 
			
		||||
private:
 | 
			
		||||
    //==============================================================================
 | 
			
		||||
    const Point<float> mouseDownPos;
 | 
			
		||||
    const uint8 numberOfClicks, wasMovedSinceMouseDown;
 | 
			
		||||
 | 
			
		||||
    MouseEvent& operator= (const MouseEvent&);
 | 
			
		||||
 | 
			
		||||
@ -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.
 | 
			
		||||
@ -71,7 +71,7 @@ public:
 | 
			
		||||
    class Listener
 | 
			
		||||
    {
 | 
			
		||||
    public:
 | 
			
		||||
        virtual ~Listener() {}
 | 
			
		||||
        virtual ~Listener() = default;
 | 
			
		||||
 | 
			
		||||
        /** Called when the mouse is moved or clicked for the first time
 | 
			
		||||
            after a period of inactivity. */
 | 
			
		||||
 | 
			
		||||
@ -149,7 +149,7 @@ public:
 | 
			
		||||
        comp.internalMouseDrag (MouseInputSource (this), screenPosToLocalPos (comp, screenPos), time, pressure, orientation, rotation, tiltX, tiltY);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void sendMouseUp (Component& comp, Point<float> screenPos, Time time, const ModifierKeys oldMods)
 | 
			
		||||
    void sendMouseUp (Component& comp, Point<float> screenPos, Time time, ModifierKeys oldMods)
 | 
			
		||||
    {
 | 
			
		||||
        JUCE_MOUSE_EVENT_DBG ("up")
 | 
			
		||||
            comp.internalMouseUp (MouseInputSource (this), screenPosToLocalPos (comp, screenPos), time, oldMods, pressure, orientation, rotation, tiltX, tiltY);
 | 
			
		||||
@ -161,7 +161,7 @@ public:
 | 
			
		||||
        comp.internalMouseWheel (MouseInputSource (this), screenPosToLocalPos (comp, screenPos), time, wheel);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void sendMagnifyGesture (Component& comp, Point<float> screenPos, Time time, const float amount)
 | 
			
		||||
    void sendMagnifyGesture (Component& comp, Point<float> screenPos, Time time, float amount)
 | 
			
		||||
    {
 | 
			
		||||
        JUCE_MOUSE_EVENT_DBG ("magnify")
 | 
			
		||||
        comp.internalMagnifyGesture (MouseInputSource (this), screenPosToLocalPos (comp, screenPos), time, amount);
 | 
			
		||||
@ -169,7 +169,7 @@ public:
 | 
			
		||||
 | 
			
		||||
    //==============================================================================
 | 
			
		||||
    // (returns true if the button change caused a modal event loop)
 | 
			
		||||
    bool setButtons (Point<float> screenPos, Time time, const ModifierKeys newButtonState)
 | 
			
		||||
    bool setButtons (Point<float> screenPos, Time time, ModifierKeys newButtonState)
 | 
			
		||||
    {
 | 
			
		||||
        if (buttonState == newButtonState)
 | 
			
		||||
            return false;
 | 
			
		||||
@ -220,7 +220,7 @@ public:
 | 
			
		||||
        return lastCounter != mouseEventCounter;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void setComponentUnderMouse (Component* const newComponent, Point<float> screenPos, Time time)
 | 
			
		||||
    void setComponentUnderMouse (Component* newComponent, Point<float> screenPos, Time time)
 | 
			
		||||
    {
 | 
			
		||||
        auto* current = getComponentUnderMouse();
 | 
			
		||||
 | 
			
		||||
@ -234,16 +234,17 @@ public:
 | 
			
		||||
                WeakReference<Component> safeOldComp (current);
 | 
			
		||||
                setButtons (screenPos, time, ModifierKeys());
 | 
			
		||||
 | 
			
		||||
                if (safeOldComp != nullptr)
 | 
			
		||||
                if (auto oldComp = safeOldComp.get())
 | 
			
		||||
                {
 | 
			
		||||
                    componentUnderMouse = safeNewComp;
 | 
			
		||||
                    sendMouseExit (*safeOldComp, screenPos, time);
 | 
			
		||||
                    sendMouseExit (*oldComp, screenPos, time);
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                buttonState = originalButtonState;
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            current = componentUnderMouse = safeNewComp;
 | 
			
		||||
            componentUnderMouse = safeNewComp.get();
 | 
			
		||||
            current = safeNewComp.get();
 | 
			
		||||
 | 
			
		||||
            if (current != nullptr)
 | 
			
		||||
                sendMouseEnter (*current, screenPos, time);
 | 
			
		||||
@ -263,7 +264,7 @@ public:
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void setScreenPos (Point<float> newScreenPos, Time time, const bool forceUpdate)
 | 
			
		||||
    void setScreenPos (Point<float> newScreenPos, Time time, bool forceUpdate)
 | 
			
		||||
    {
 | 
			
		||||
        if (! isDragging())
 | 
			
		||||
            setComponentUnderMouse (findComponentAt (newScreenPos), newScreenPos, time);
 | 
			
		||||
@ -368,7 +369,7 @@ public:
 | 
			
		||||
        else
 | 
			
		||||
            screenPos = peer.localToGlobal (positionWithinPeer);
 | 
			
		||||
 | 
			
		||||
        if (Component* target = lastNonInertialWheelTarget)
 | 
			
		||||
        if (auto target = lastNonInertialWheelTarget.get())
 | 
			
		||||
            sendMouseWheel (*target, screenPos, time, wheel);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@ -737,7 +738,7 @@ struct MouseInputSource::SourceList  : public Timer
 | 
			
		||||
        return nullptr;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    void beginDragAutoRepeat (const int interval)
 | 
			
		||||
    void beginDragAutoRepeat (int interval)
 | 
			
		||||
    {
 | 
			
		||||
        if (interval > 0)
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
@ -40,7 +40,7 @@ class JUCE_API  MouseListener
 | 
			
		||||
{
 | 
			
		||||
public:
 | 
			
		||||
    /** Destructor. */
 | 
			
		||||
    virtual ~MouseListener()  {}
 | 
			
		||||
    virtual ~MouseListener() = default;
 | 
			
		||||
 | 
			
		||||
    /** Called when the mouse moves inside a component.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -47,15 +47,13 @@ class SelectedItemSet   : public ChangeBroadcaster
 | 
			
		||||
{
 | 
			
		||||
public:
 | 
			
		||||
    //==============================================================================
 | 
			
		||||
    typedef SelectableItemType ItemType;
 | 
			
		||||
    typedef Array<SelectableItemType> ItemArray;
 | 
			
		||||
    typedef typename TypeHelpers::ParameterType<SelectableItemType>::type ParameterType;
 | 
			
		||||
    using ItemType = SelectableItemType;
 | 
			
		||||
    using ItemArray = Array<SelectableItemType>;
 | 
			
		||||
    using ParameterType = typename TypeHelpers::ParameterType<SelectableItemType>::type;
 | 
			
		||||
 | 
			
		||||
    //==============================================================================
 | 
			
		||||
    /** Creates an empty set. */
 | 
			
		||||
    SelectedItemSet()
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
    SelectedItemSet() = default;
 | 
			
		||||
 | 
			
		||||
    /** Creates a set based on an array of items. */
 | 
			
		||||
    explicit SelectedItemSet (const ItemArray& items)
 | 
			
		||||
@ -65,7 +63,7 @@ public:
 | 
			
		||||
 | 
			
		||||
    /** Creates a copy of another set. */
 | 
			
		||||
    SelectedItemSet (const SelectedItemSet& other)
 | 
			
		||||
        : selectedItems (other.selectedItems)
 | 
			
		||||
        : ChangeBroadcaster(), selectedItems (other.selectedItems)
 | 
			
		||||
    {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -39,7 +39,7 @@ class JUCE_API  TextDragAndDropTarget
 | 
			
		||||
{
 | 
			
		||||
public:
 | 
			
		||||
    /** Destructor. */
 | 
			
		||||
    virtual ~TextDragAndDropTarget()  {}
 | 
			
		||||
    virtual ~TextDragAndDropTarget() = default;
 | 
			
		||||
 | 
			
		||||
    /** Callback to check whether this target is interested in the set of text being offered.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -43,7 +43,7 @@ class JUCE_API  TooltipClient
 | 
			
		||||
{
 | 
			
		||||
public:
 | 
			
		||||
    /** Destructor. */
 | 
			
		||||
    virtual ~TooltipClient()  {}
 | 
			
		||||
    virtual ~TooltipClient() = default;
 | 
			
		||||
 | 
			
		||||
    /** Returns the string that this object wants to show as its tooltip. */
 | 
			
		||||
    virtual String getTooltip() = 0;
 | 
			
		||||
@ -70,7 +70,7 @@ class JUCE_API  SettableTooltipClient   : public TooltipClient
 | 
			
		||||
public:
 | 
			
		||||
    //==============================================================================
 | 
			
		||||
    /** Destructor. */
 | 
			
		||||
    ~SettableTooltipClient() {}
 | 
			
		||||
    ~SettableTooltipClient() override = default;
 | 
			
		||||
 | 
			
		||||
    //==============================================================================
 | 
			
		||||
    /** Assigns a new tooltip to this object. */
 | 
			
		||||
@ -80,7 +80,7 @@ public:
 | 
			
		||||
    String getTooltip() override                                    { return tooltipString; }
 | 
			
		||||
 | 
			
		||||
protected:
 | 
			
		||||
    SettableTooltipClient() {}
 | 
			
		||||
    SettableTooltipClient() = default;
 | 
			
		||||
 | 
			
		||||
private:
 | 
			
		||||
    String tooltipString;
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user