85 virtual void setName (
const String& newName);
96 void setComponentID (
const String& newID);
112 virtual void setVisible (
bool shouldBeVisible);
127 virtual void visibilityChanged();
134 bool isShowing()
const;
160 virtual void addToDesktop (
int windowStyleFlags,
161 void* nativeWindowToAttachTo =
nullptr);
170 void removeFromDesktop();
196 virtual
void userTriedToCloseWindow();
202 virtual
void minimisationStateChanged (
bool isNowMinimised);
211 virtual
float getDesktopScaleFactor()
const;
225 void toFront (
bool shouldAlsoGainKeyboardFocus);
244 void setAlwaysOnTop (
bool shouldStayOnTop);
325 int getScreenX()
const;
330 int getScreenY()
const;
349 Point<
int> pointRelativeToSourceComponent)
const;
358 Point<
float> pointRelativeToSourceComponent)
const;
428 void setTopLeftPosition (
int x,
int y);
443 void setTopLeftPosition (
Point<
int> newTopLeftPosition);
456 void setTopRightPosition (
int x,
int y);
466 void setSize (
int newWidth,
int newHeight);
498 void setBounds (
Rectangle<
int> newBounds);
509 void setBoundsRelative (
float proportionalX,
float proportionalY,
510 float proportionalWidth,
float proportionalHeight);
521 void setBoundsRelative (
Rectangle<
float> proportionalArea);
530 void setBoundsInset (
BorderSize<
int> borders);
546 void setBoundsToFit (
Rectangle<
int> targetArea,
548 bool onlyReduceInSize);
557 void setCentrePosition (
int x,
int y);
566 void setCentrePosition (
Point<
int> newCentrePosition);
573 void setCentreRelative (
float x,
float y);
708 void addChildComponent (
Component* child,
int zOrder = -1);
726 void addChildComponent (
Component& child,
int zOrder = -1);
738 void addAndMakeVisible (
Component* child,
int zOrder = -1);
750 void addAndMakeVisible (
Component& child,
int zOrder = -1);
768 void removeChildComponent (
Component* childToRemove);
781 Component* removeChildComponent (
int childIndexToRemove);
786 void removeAllChildren();
797 void deleteAllChildren();
812 template <
class TargetClass>
816 if (
auto* target =
dynamic_cast<TargetClass*
> (
p))
848 virtual
void parentHierarchyChanged();
854 virtual
void childrenChanged();
893 virtual
bool hitTest (
int x,
int y);
912 void setInterceptsMouseClicks (
bool allowClicksOnThisComponent,
913 bool allowClicksOnChildComponents)
noexcept;
922 void getInterceptsMouseClicks (
bool& allowsClicksOnThisComponent,
937 bool contains (
Point<
int> localPoint);
950 bool contains (
Point<
float> localPoint);
960 bool reallyContains (
Point<
int> localPoint,
bool returnTrueIfWithinAChild);
970 bool reallyContains (
Point<
float> localPoint,
bool returnTrueIfWithinAChild);
1069 void setBufferedToImage (
bool shouldBeBuffered);
1087 bool clipImageToComponentBounds =
true,
1088 float scaleFactor = 1.0
f);
1107 void paintEntireComponent (
Graphics& context,
bool ignoreAlphaLevel);
1121 void setPaintingIsUnclipped (
bool shouldPaintWithoutClipping)
noexcept;
1173 void setLookAndFeel (
LookAndFeel* newLookAndFeel);
1185 virtual
void lookAndFeelChanged();
1194 void sendLookAndFeelChange();
1211 void setOpaque (
bool shouldBeOpaque);
1233 void setBroughtToFrontOnMouseClick (
bool shouldBeBroughtToFront)
noexcept;
1253 void setExplicitFocusOrder (
int newFocusOrderIndex);
1262 int getExplicitFocusOrder()
const;
1307 keyboardFocusContainer
1317 void setFocusContainerType (FocusContainerType containerType)
noexcept;
1354 void setWantsKeyboardFocus (
bool wantsFocus)
noexcept;
1371 void setMouseClickGrabsKeyboardFocus (
bool shouldGrabFocus);
1404 void grabKeyboardFocus();
1413 void giveAwayKeyboardFocus();
1425 bool hasKeyboardFocus (
bool trueIfChildIsFocused)
const;
1439 void moveKeyboardFocusToSibling (
bool moveToNext);
1519 void setEnabled (
bool shouldBeEnabled);
1531 virtual
void enablementChanged();
1546 void setAlpha (
float newAlpha);
1552 virtual
void alphaChanged();
1584 void updateMouseCursor()
const;
1620 virtual
void paintOverChildren (
Graphics&
g);
1769 static
void JUCE_CALLTYPE beginDragAutoRepeat (
int millisecondsBetweenCallbacks);
1782 void setRepaintsOnMouseActivity (
bool shouldRepaint)
noexcept;
1802 bool wantsEventsForAllNestedChildComponents);
1825 void removeKeyListener (
KeyListener* listenerToRemove);
1867 virtual
bool keyStateChanged (
bool isKeyDown);
1899 virtual void focusGained (FocusChangeType cause);
1904 virtual void focusLost (FocusChangeType cause);
1917 virtual void focusOfChildComponentChanged (FocusChangeType cause);
1939 bool isMouseOver (
bool includeChildren =
false)
const;
1949 bool isMouseButtonDown (
bool includeChildren =
false)
const;
1955 bool isMouseOverOrDragging (
bool includeChildren =
false)
const;
1988 virtual
void resized();
2005 virtual
void moved();
2014 virtual
void childBoundsChanged (
Component* child);
2023 virtual
void parentSizeChanged();
2032 virtual
void broughtToFront();
2062 void postCommandMessage (
int commandId);
2071 virtual
void handleCommandMessage (
int commandId);
2074 #if JUCE_MODAL_LOOPS_PERMITTED
2124 void enterModalState (
bool takeKeyboardFocus =
true,
2126 bool deleteWhenDismissed =
false);
2135 void exitModalState (
int returnValue);
2147 bool isCurrentlyModal (
bool onlyConsiderForemostModalComponent =
true)
const noexcept;
2175 bool isCurrentlyBlockedByAnotherModalComponent()
const;
2188 virtual
bool canModalEventBeSentToComponent (
const Component* targetComponent);
2201 virtual
void inputAttemptWhenModal();
2231 Colour findColour (
int colourID,
bool inheritFromParent =
false)
const;
2243 void setColour (
int colourID,
Colour newColour);
2248 void removeColour (
int colourID);
2253 bool isColourSpecified (
int colourID)
const;
2258 void copyAllExplicitColoursTo (
Component& target)
const;
2263 virtual void colourChanged();
2270 void* getWindowHandle()
const;
2285 template <
class ComponentType>
2316 bool operator== (ComponentType* component)
const noexcept {
return weakRef == component; }
2317 bool operator!= (ComponentType* component)
const noexcept {
return weakRef != component; }
2428 void setTitle (
const String& newTitle);
2444 void setDescription (
const String& newDescription);
2460 void setHelpText (
const String& newHelpText);
2471 void setAccessible (
bool shouldBeAccessible);
2492 void invalidateAccessibilityHandler();
2496 [[deprecated (
"Use the setFocusContainerType that takes a more descriptive enum.")]]
2503 [[deprecated (
"Use the contains that takes a Point<int>.")]]
2582 bool isInsidePaintCall : 1;
#define noexcept
Definition DistrhoDefines.h:72
#define override
Definition DistrhoDefines.h:73
Definition juce_AccessibilityHandler.h:41
Definition juce_Array.h:56
Definition juce_BorderSize.h:42
Definition juce_CachedComponentImage.h:42
Definition juce_Colour.h:38
bool shouldBailOut() const noexcept
Definition juce_Component.cpp:3252
const WeakReference< Component > safePointer
Definition juce_Component.h:2340
BailOutChecker(Component *component)
Definition juce_Component.cpp:3246
Definition juce_Component.cpp:45
Definition juce_Component.h:2355
Component & component
Definition juce_Component.h:2372
virtual ~Positioner()=default
virtual void applyNewBounds(const Rectangle< int > &newBounds)=0
Positioner(Component &component) noexcept
Definition juce_Component.cpp:2266
Component & getComponent() const noexcept
Definition juce_Component.h:2363
WeakReference< Component > weakRef
Definition juce_Component.h:2320
SafePointer(const SafePointer &other) noexcept
Definition juce_Component.h:2296
ComponentType * operator->() const noexcept
Definition juce_Component.h:2311
SafePointer(ComponentType *component)
Definition juce_Component.h:2293
void deleteAndZero()
Definition juce_Component.h:2314
ComponentType * getComponent() const noexcept
Definition juce_Component.h:2305
Definition juce_Component.h:36
ImageEffectFilter * effect
Definition juce_Component.h:2542
virtual ComponentPeer * createNewPeer(int styleFlags, void *nativeWindowToAttachTo)
Definition juce_linux_Windowing.cpp:574
void internalChildrenChanged()
Definition juce_Component.cpp:1694
void internalChildKeyboardFocusChange(FocusChangeType, const WeakReference< Component > &)
Definition juce_Component.cpp:2823
bool hasFocusOutline() const noexcept
Definition juce_Component.h:1493
std::unique_ptr< AffineTransform > affineTransform
Definition juce_Component.h:2538
void internalMouseEnter(MouseInputSource, Point< float >, Time)
Definition juce_Component.cpp:2404
void sendVisibilityChangeMessage()
Definition juce_Component.cpp:625
String componentTitle
Definition juce_Component.h:2534
WeakReference< LookAndFeel > lookAndFeel
Definition juce_Component.h:2540
virtual std::unique_ptr< AccessibilityHandler > createAccessibilityHandler()
Definition juce_Component.cpp:3287
void contains(int, int)=delete
void internalMagnifyGesture(MouseInputSource, Point< float >, Time, float)
Definition juce_Component.cpp:2698
void internalKeyboardFocusLoss(FocusChangeType)
Definition juce_Component.cpp:2808
NamedValueSet properties
Definition juce_Component.h:2549
ComponentFlags flags
Definition juce_Component.h:2589
String getTitle() const noexcept
Definition juce_Component.h:2418
void grabKeyboardFocusInternal(FocusChangeType, bool canTryParent)
Definition juce_Component.cpp:2965
bool isVisible() const noexcept
Definition juce_Component.h:122
Component * getParentComponent() const noexcept
Definition juce_Component.h:804
uint32 componentFlags
Definition juce_Component.h:2588
void takeKeyboardFocus(FocusChangeType)
Definition juce_Component.cpp:2932
String componentDescription
Definition juce_Component.h:2534
std::unique_ptr< MouseListenerList > mouseListeners
Definition juce_Component.h:2546
MouseCursor cursor
Definition juce_Component.h:2541
Component * parentComponent
Definition juce_Component.h:2535
int getBottom() const noexcept
Definition juce_Component.h:295
void setPositioner(Positioner *newPositioner)
Definition juce_Component.cpp:2275
void setFocusContainerType(FocusContainerType containerType) noexcept
Definition juce_Component.cpp:2862
Point< int > getPosition() const noexcept
Definition juce_Component.h:286
int getHeight() const noexcept
Definition juce_Component.h:274
void paintComponentAndChildren(Graphics &)
Definition juce_Component.cpp:2006
ListenerList< ComponentListener > componentListeners
Definition juce_Component.h:2548
void sendFakeMouseMove() const
Definition juce_Component.cpp:2734
int getX() const noexcept
Definition juce_Component.h:259
void internalMouseUp(MouseInputSource, const PointerState &, Time, const ModifierKeys oldModifiers)
Definition juce_Component.cpp:2555
std::unique_ptr< AccessibilityHandler > accessibilityHandler
Definition juce_Component.h:2554
const NamedValueSet & getProperties() const noexcept
Definition juce_Component.h:2215
void giveAwayKeyboardFocusInternal(bool sendFocusLossEvent)
Definition juce_Component.cpp:3010
FocusChangeType
Definition juce_Component.h:1890
@ focusChangedByTabKey
Definition juce_Component.h:1892
@ focusChangedDirectly
Definition juce_Component.h:1893
@ focusChangedByMouseClick
Definition juce_Component.h:1891
Positioner * getPositioner() const noexcept
Definition juce_Component.cpp:2270
uint8 componentTransparency
Definition juce_Component.h:2592
String componentName
Definition juce_Component.h:2534
static Component * currentlyFocusedComponent
Definition juce_Component.h:2531
String getHelpText() const noexcept
Definition juce_Component.h:2450
Rectangle< int > getBounds() const noexcept
Definition juce_Component.h:304
void sendMovedResizedMessagesIfPending()
Definition juce_Component.cpp:1202
Component() noexcept
Definition juce_Component.cpp:517
FocusContainerType
Definition juce_Component.h:1277
@ none
Definition juce_Component.h:1283
@ keyboardFocusContainer
Definition juce_Component.h:1307
std::unique_ptr< Positioner > positioner
Definition juce_Component.h:2537
WeakReference< Component >::Master masterReference
Definition juce_Component.h:2552
NamedValueSet & getProperties() noexcept
Definition juce_Component.h:2209
void internalHierarchyChanged()
Definition juce_Component.cpp:1711
void internalMouseWheel(MouseInputSource, Point< float >, Time, const MouseWheelDetails &)
Definition juce_Component.cpp:2662
std::unique_ptr< Array< KeyListener * > > keyListeners
Definition juce_Component.h:2547
void reorderChildInternal(int sourceIndex, int destIndex)
Definition juce_Component.cpp:939
int getY() const noexcept
Definition juce_Component.h:268
void removeChildComponent(Component *childToRemove)
Definition juce_Component.cpp:1569
String getDescription() const noexcept
Definition juce_Component.h:2434
std::unique_ptr< CachedComponentImage > cachedImage
Definition juce_Component.h:2543
void setFocusContainer(bool shouldBeFocusContainer) noexcept
Definition juce_Component.h:2497
void internalMouseDrag(MouseInputSource, const PointerState &, Time)
Definition juce_Component.cpp:2601
String componentID
Definition juce_Component.h:2534
TargetClass * findParentComponentOfClass() const
Definition juce_Component.h:813
void setHasFocusOutline(bool hasFocusOutline) noexcept
Definition juce_Component.h:1487
Array< Component * > childComponentList
Definition juce_Component.h:2539
ImageEffectFilter * getComponentEffect() const noexcept
Definition juce_Component.h:1147
void internalMouseExit(MouseInputSource, Point< float >, Time)
Definition juce_Component.cpp:2440
void internalMouseDown(MouseInputSource, const PointerState &, Time)
Definition juce_Component.cpp:2477
static std::unique_ptr< AccessibilityHandler > createIgnoredAccessibilityHandler(Component &)
Definition juce_Component.cpp:3292
int getWidth() const noexcept
Definition juce_Component.h:271
void internalKeyboardFocusGain(FocusChangeType, const WeakReference< Component > &)
Definition juce_Component.cpp:2790
void internalMouseMove(MouseInputSource, Point< float >, Time)
Definition juce_Component.cpp:2628
CachedComponentImage * getCachedComponentImage() const noexcept
Definition juce_Component.h:2400
bool getViewportIgnoreDragFlag() const noexcept
Definition juce_Component.h:2411
void internalRepaintUnchecked(Rectangle< int >, bool)
Definition juce_Component.cpp:1946
void setViewportIgnoreDragFlag(bool ignoreDrag) noexcept
Definition juce_Component.h:2406
void internalModalInputAttempt()
Definition juce_Component.cpp:2354
friend class MouseInputSourceInternal
Definition juce_Component.h:2528
String componentHelpText
Definition juce_Component.h:2534
String getComponentID() const noexcept
Definition juce_Component.h:90
void sendMovedResizedMessages(bool wasMoved, bool wasResized)
Definition juce_Component.cpp:1216
void internalBroughtToFront()
Definition juce_Component.cpp:2755
void sendEnablementChangeMessage()
Definition juce_Component.cpp:3137
const Array< Component * > & getChildren() const noexcept
Definition juce_Component.h:685
friend class ComponentPeer
Definition juce_Component.h:2527
void internalRepaint(Rectangle< int >)
Definition juce_Component.cpp:1938
void internalModifierKeysChanged()
Definition juce_Component.cpp:3239
void repaintParent()
Definition juce_Component.cpp:1932
Rectangle< int > boundsRelativeToParent
Definition juce_Component.h:2536
int getRight() const noexcept
Definition juce_Component.h:283
void paintWithinParentContext(Graphics &)
Definition juce_Component.cpp:1996
void setCachedComponentImage(CachedComponentImage *newCachedImage)
Definition juce_Component.cpp:910
String getName() const noexcept
Definition juce_Component.h:76
Definition juce_ComponentListener.h:43
Definition juce_ComponentPeer.h:44
Definition juce_ComponentTraverser.h:42
Definition juce_GraphicsContext.h:45
Definition juce_ImageEffectFilter.h:43
Definition juce_Image.h:58
Definition juce_Justification.h:41
Definition juce_KeyListener.h:41
Definition juce_KeyPress.h:40
Definition juce_ListenerList.h:70
Definition juce_LookAndFeel.h:108
Definition juce_ModalComponentManager.h:56
Definition juce_ModifierKeys.h:41
Definition juce_MouseCursor.h:39
Definition juce_MouseEvent.h:39
Definition juce_MouseListener.h:39
Definition juce_NamedValueSet.h:35
Definition juce_Point.h:42
Definition juce_PointerState.h:32
Definition juce_Rectangle.h:67
Definition juce_String.h:53
Definition juce_StringRef.h:62
Definition juce_Time.h:37
Definition juce_WeakReference.h:150
Definition juce_WeakReference.h:78
int y
Definition inflate.c:1588
int g
Definition inflate.c:1573
unsigned x[BMAX+1]
Definition inflate.c:1586
unsigned f
Definition inflate.c:1572
static int int height
Definition pugl.h:1594
static int width
Definition pugl.h:1593
#define JUCE_API
Definition juce_StandardHeader.h:152
Definition carla_juce.cpp:31
unsigned int uint32
Definition juce_MathsFunctions.h:45
unsigned char uint8
Definition juce_MathsFunctions.h:37
Definition juce_Uuid.h:141
#define true
Definition ordinals.h:82
Definition juce_Component.h:2557
bool isResizeCallbackPending
Definition juce_Component.h:2577
bool dontClipGraphicsFlag
Definition juce_Component.h:2574
bool isFocusContainerFlag
Definition juce_Component.h:2564
bool allowChildMouseClicksFlag
Definition juce_Component.h:2562
bool cachedMouseInsideComponent
Definition juce_Component.h:2580
bool visibleFlag
Definition juce_Component.h:2559
bool viewportIgnoreDragFlag
Definition juce_Component.h:2578
bool bringToFrontOnClickFlag
Definition juce_Component.h:2571
bool wantsKeyboardFocusFlag
Definition juce_Component.h:2563
bool isMoveCallbackPending
Definition juce_Component.h:2576
bool alwaysOnTopFlag
Definition juce_Component.h:2569
bool hasFocusOutlineFlag
Definition juce_Component.h:2568
bool isDisabledFlag
Definition juce_Component.h:2573
bool hasHeavyweightPeerFlag
Definition juce_Component.h:2558
bool bufferToImageFlag
Definition juce_Component.h:2570
bool opaqueFlag
Definition juce_Component.h:2560
bool accessibilityIgnoredFlag
Definition juce_Component.h:2579
bool childKeyboardFocusedFlag
Definition juce_Component.h:2566
bool ignoresMouseClicksFlag
Definition juce_Component.h:2561
bool dontFocusOnMouseClickFlag
Definition juce_Component.h:2567
bool repaintOnMouseActivityFlag
Definition juce_Component.h:2572
bool isKeyboardFocusContainerFlag
Definition juce_Component.h:2565
bool mouseDownWasBlocked
Definition juce_Component.h:2575
Definition juce_Component.cpp:296
Definition juce_MouseEvent.h:392
RECT const char void(* callback)(const char *droppath))) SWELL_API_DEFINE(BOOL
Definition swell-functions.h:1004
uch * p
Definition crypt.c:594
ZCONST char * key
Definition crypt.c:587
#define const
Definition zconf.h:137