JUCE
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines
Public Types | Public Member Functions | Static Public Member Functions
ResizableBorderComponent::Zone Class Reference

Represents the different sections of a resizable border, which allow it to resized in different ways. More...

List of all members.

Public Types

enum  Zones {
  centre = 0, left = 1, top = 2, right = 4,
  bottom = 8
}
 Creates a Zone from a combination of the flags in. More...

Public Member Functions

 Zone (int zoneFlags=0) noexcept
 Zone (const Zone &other) noexcept
Zoneoperator= (const Zone &other) noexcept
bool operator== (const Zone &other) const noexcept
bool operator!= (const Zone &other) const noexcept
MouseCursor getMouseCursor () const noexcept
 Returns an appropriate mouse-cursor for this resize zone.
bool isDraggingWholeObject () const noexcept
 Returns true if dragging this zone will move the enire object without resizing it.
bool isDraggingLeftEdge () const noexcept
 Returns true if dragging this zone will move the object's left edge.
bool isDraggingRightEdge () const noexcept
 Returns true if dragging this zone will move the object's right edge.
bool isDraggingTopEdge () const noexcept
 Returns true if dragging this zone will move the object's top edge.
bool isDraggingBottomEdge () const noexcept
 Returns true if dragging this zone will move the object's bottom edge.
template<typename ValueType >
const Rectangle< ValueType > resizeRectangleBy (Rectangle< ValueType > original, const Point< ValueType > &distance) const noexcept
 Resizes this rectangle by the given amount, moving just the edges that this zone applies to.
int getZoneFlags () const noexcept
 Returns the raw flags for this zone.

Static Public Member Functions

static const Zone fromPositionOnBorder (const Rectangle< int > &totalSize, const BorderSize< int > &border, const Point< int > &position)
 Given a point within a rectangle with a resizable border, this returns the zone that the point lies within.

Detailed Description

Represents the different sections of a resizable border, which allow it to resized in different ways.


Member Enumeration Documentation

Creates a Zone from a combination of the flags in.

Enumerator:
centre 
left 
top 
right 
bottom 

Constructor & Destructor Documentation

ResizableBorderComponent::Zone::Zone ( int  zoneFlags = 0) [explicit]

Member Function Documentation

Zone& ResizableBorderComponent::Zone::operator= ( const Zone other)
bool ResizableBorderComponent::Zone::operator== ( const Zone other) const
bool ResizableBorderComponent::Zone::operator!= ( const Zone other) const
static const Zone ResizableBorderComponent::Zone::fromPositionOnBorder ( const Rectangle< int > &  totalSize,
const BorderSize< int > &  border,
const Point< int > &  position 
) [static]

Given a point within a rectangle with a resizable border, this returns the zone that the point lies within.

Returns an appropriate mouse-cursor for this resize zone.

Returns true if dragging this zone will move the enire object without resizing it.

Returns true if dragging this zone will move the object's left edge.

Returns true if dragging this zone will move the object's right edge.

Returns true if dragging this zone will move the object's top edge.

Returns true if dragging this zone will move the object's bottom edge.

template<typename ValueType >
const Rectangle<ValueType> ResizableBorderComponent::Zone::resizeRectangleBy ( Rectangle< ValueType >  original,
const Point< ValueType > &  distance 
) const

Resizes this rectangle by the given amount, moving just the edges that this zone applies to.

References jmax(), jmin(), and Rectangle< ValueType >::setLeft().

Returns the raw flags for this zone.


The documentation for this class was generated from the following file: