Go to the documentation of this file.
25 #ifndef JUCE_RESIZABLEBORDERCOMPONENT_H_INCLUDED
26 #define JUCE_RESIZABLEBORDERCOMPONENT_H_INCLUDED
119 static
Zone fromPositionOnBorder (const
Rectangle<
int>& totalSize,
121 Point<
int> position);
127 bool isDraggingWholeObject() const
noexcept {
return zone == centre; }
140 template <
typename ValueType>
144 if (isDraggingWholeObject())
145 return original + distance;
147 if (isDraggingLeftEdge()) original.setLeft (
jmin (original.getRight(), original.getX() + distance.x));
148 if (isDraggingRightEdge()) original.setWidth (
jmax (ValueType(), original.getWidth() + distance.x));
149 if (isDraggingTopEdge()) original.setTop (
jmin (original.getBottom(), original.getY() + distance.y));
150 if (isDraggingBottomEdge()) original.setHeight (
jmax (ValueType(), original.getHeight() + distance.y));
180 bool hitTest (
int x,
int y)
override;
195 #endif // JUCE_RESIZABLEBORDERCOMPONENT_H_INCLUDED
bool isDraggingRightEdge() const noexcept
Definition: juce_ResizableBorderComponent.h:131
Zone getCurrentZone() const noexcept
Definition: juce_ResizableBorderComponent.h:164
virtual void mouseDown(const MouseEvent &event) override
Definition: juce_Component.cpp:2251
Definition: juce_ResizableBorderComponent.h:45
Rectangle< ValueType > resizeRectangleBy(Rectangle< ValueType > original, const Point< ValueType > &distance) const noexcept
Definition: juce_ResizableBorderComponent.h:141
#define JUCE_API
Definition: juce_StandardHeader.h:139
Definition: juce_Rectangle.h:36
bool isDraggingTopEdge() const noexcept
Definition: juce_ResizableBorderComponent.h:133
virtual bool hitTest(int x, int y)
Definition: juce_Component.cpp:1365
Definition: juce_GraphicsContext.h:42
bool isDraggingLeftEdge() const noexcept
Definition: juce_ResizableBorderComponent.h:129
#define noexcept
Definition: juce_CompilerSupport.h:141
Type jmin(const Type a, const Type b)
Definition: juce_MathsFunctions.h:112
Type jmax(const Type a, const Type b)
Definition: juce_MathsFunctions.h:100
virtual void mouseMove(const MouseEvent &event) override
Definition: juce_Component.cpp:2254
bool isDraggingBottomEdge() const noexcept
Definition: juce_ResizableBorderComponent.h:135
virtual void mouseUp(const MouseEvent &event) override
Definition: juce_Component.cpp:2252
Definition: juce_ComponentBoundsConstrainer.h:41
Definition: juce_Component.h:33
Definition: juce_MouseCursor.h:36
virtual void mouseDrag(const MouseEvent &event) override
Definition: juce_Component.cpp:2253
Definition: juce_Point.h:39
Zones
Definition: juce_ResizableBorderComponent.h:95
virtual void mouseEnter(const MouseEvent &event) override
Definition: juce_Component.cpp:2249
Definition: juce_ResizableBorderComponent.h:91
virtual void paint(Graphics &g)
Definition: juce_Component.cpp:1929
Definition: juce_MouseEvent.h:36
int getZoneFlags() const noexcept
Definition: juce_ResizableBorderComponent.h:156