|
| | TooltipWindow (Component *parentComponent=nullptr, int millisecondsBeforeTipAppears=700) |
| | ~TooltipWindow () override |
| void | setMillisecondsBeforeTipAppears (int newTimeMs=700) noexcept |
| void | displayTip (Point< int > screenPosition, const String &text) |
| void | hideTip () |
| virtual String | getTipFor (Component &) |
| float | getDesktopScaleFactor () const override |
| | Component () noexcept |
| | ~Component () override |
| | Component (const String &componentName) noexcept |
| String | getName () const noexcept |
| virtual void | setName (const String &newName) |
| String | getComponentID () const noexcept |
| void | setComponentID (const String &newID) |
| virtual void | setVisible (bool shouldBeVisible) |
| bool | isVisible () const noexcept |
| virtual void | visibilityChanged () |
| bool | isShowing () const |
| virtual void | addToDesktop (int windowStyleFlags, void *nativeWindowToAttachTo=nullptr) |
| void | removeFromDesktop () |
| bool | isOnDesktop () const noexcept |
| ComponentPeer * | getPeer () const |
| virtual void | userTriedToCloseWindow () |
| virtual void | minimisationStateChanged (bool isNowMinimised) |
| void | toFront (bool shouldAlsoGainKeyboardFocus) |
| void | toBack () |
| void | toBehind (Component *other) |
| void | setAlwaysOnTop (bool shouldStayOnTop) |
| bool | isAlwaysOnTop () const noexcept |
| int | getX () const noexcept |
| int | getY () const noexcept |
| int | getWidth () const noexcept |
| int | getHeight () const noexcept |
| int | getRight () const noexcept |
| Point< int > | getPosition () const noexcept |
| int | getBottom () const noexcept |
| Rectangle< int > | getBounds () const noexcept |
| Rectangle< int > | getLocalBounds () const noexcept |
| Rectangle< int > | getBoundsInParent () const noexcept |
| int | getScreenX () const |
| int | getScreenY () const |
| Point< int > | getScreenPosition () const |
| Rectangle< int > | getScreenBounds () const |
| Point< int > | getLocalPoint (const Component *sourceComponent, Point< int > pointRelativeToSourceComponent) const |
| Point< float > | getLocalPoint (const Component *sourceComponent, Point< float > pointRelativeToSourceComponent) const |
| Rectangle< int > | getLocalArea (const Component *sourceComponent, Rectangle< int > areaRelativeToSourceComponent) const |
| Rectangle< float > | getLocalArea (const Component *sourceComponent, Rectangle< float > areaRelativeToSourceComponent) const |
| Point< int > | localPointToGlobal (Point< int > localPoint) const |
| Point< float > | localPointToGlobal (Point< float > localPoint) const |
| Rectangle< int > | localAreaToGlobal (Rectangle< int > localArea) const |
| Rectangle< float > | localAreaToGlobal (Rectangle< float > localArea) const |
| void | setTopLeftPosition (int x, int y) |
| void | setTopLeftPosition (Point< int > newTopLeftPosition) |
| void | setTopRightPosition (int x, int y) |
| void | setSize (int newWidth, int newHeight) |
| void | setBounds (int x, int y, int width, int height) |
| void | setBounds (Rectangle< int > newBounds) |
| void | setBoundsRelative (float proportionalX, float proportionalY, float proportionalWidth, float proportionalHeight) |
| void | setBoundsRelative (Rectangle< float > proportionalArea) |
| void | setBoundsInset (BorderSize< int > borders) |
| void | setBoundsToFit (Rectangle< int > targetArea, Justification justification, bool onlyReduceInSize) |
| void | setCentrePosition (int x, int y) |
| void | setCentrePosition (Point< int > newCentrePosition) |
| void | setCentreRelative (float x, float y) |
| void | centreWithSize (int width, int height) |
| void | setTransform (const AffineTransform &transform) |
| AffineTransform | getTransform () const |
| bool | isTransformed () const noexcept |
| int | proportionOfWidth (float proportion) const noexcept |
| int | proportionOfHeight (float proportion) const noexcept |
| int | getParentWidth () const noexcept |
| int | getParentHeight () const noexcept |
| Rectangle< int > | getParentMonitorArea () const |
| int | getNumChildComponents () const noexcept |
| Component * | getChildComponent (int index) const noexcept |
| int | getIndexOfChildComponent (const Component *child) const noexcept |
| const Array< Component * > & | getChildren () const noexcept |
| Component * | findChildWithID (StringRef componentID) const noexcept |
| void | addChildComponent (Component *child, int zOrder=-1) |
| void | addChildComponent (Component &child, int zOrder=-1) |
| void | addAndMakeVisible (Component *child, int zOrder=-1) |
| void | addAndMakeVisible (Component &child, int zOrder=-1) |
| void | addChildAndSetID (Component *child, const String &componentID) |
| void | removeChildComponent (Component *childToRemove) |
| Component * | removeChildComponent (int childIndexToRemove) |
| void | removeAllChildren () |
| void | deleteAllChildren () |
| Component * | getParentComponent () const noexcept |
| template<class TargetClass> |
| TargetClass * | findParentComponentOfClass () const |
| Component * | getTopLevelComponent () const noexcept |
| bool | isParentOf (const Component *possibleChild) const noexcept |
| virtual void | parentHierarchyChanged () |
| virtual void | childrenChanged () |
| virtual bool | hitTest (int x, int y) |
| void | setInterceptsMouseClicks (bool allowClicksOnThisComponent, bool allowClicksOnChildComponents) noexcept |
| void | getInterceptsMouseClicks (bool &allowsClicksOnThisComponent, bool &allowsClicksOnChildComponents) const noexcept |
| bool | contains (Point< int > localPoint) |
| bool | contains (Point< float > localPoint) |
| bool | reallyContains (Point< int > localPoint, bool returnTrueIfWithinAChild) |
| bool | reallyContains (Point< float > localPoint, bool returnTrueIfWithinAChild) |
| Component * | getComponentAt (int x, int y) |
| Component * | getComponentAt (Point< int > position) |
| Component * | getComponentAt (Point< float > position) |
| void | repaint () |
| void | repaint (int x, int y, int width, int height) |
| void | repaint (Rectangle< int > area) |
| void | setBufferedToImage (bool shouldBeBuffered) |
| Image | createComponentSnapshot (Rectangle< int > areaToGrab, bool clipImageToComponentBounds=true, float scaleFactor=1.0f) |
| void | paintEntireComponent (Graphics &context, bool ignoreAlphaLevel) |
| void | setPaintingIsUnclipped (bool shouldPaintWithoutClipping) noexcept |
| bool | isPaintingUnclipped () const noexcept |
| void | setComponentEffect (ImageEffectFilter *newEffect) |
| ImageEffectFilter * | getComponentEffect () const noexcept |
| LookAndFeel & | getLookAndFeel () const noexcept |
| void | setLookAndFeel (LookAndFeel *newLookAndFeel) |
| virtual void | lookAndFeelChanged () |
| void | sendLookAndFeelChange () |
| void | setOpaque (bool shouldBeOpaque) |
| bool | isOpaque () const noexcept |
| void | setBroughtToFrontOnMouseClick (bool shouldBeBroughtToFront) noexcept |
| bool | isBroughtToFrontOnMouseClick () const noexcept |
| void | setExplicitFocusOrder (int newFocusOrderIndex) |
| int | getExplicitFocusOrder () const |
| void | setFocusContainerType (FocusContainerType containerType) noexcept |
| bool | isFocusContainer () const noexcept |
| bool | isKeyboardFocusContainer () const noexcept |
| Component * | findFocusContainer () const |
| Component * | findKeyboardFocusContainer () const |
| void | setWantsKeyboardFocus (bool wantsFocus) noexcept |
| bool | getWantsKeyboardFocus () const noexcept |
| void | setMouseClickGrabsKeyboardFocus (bool shouldGrabFocus) |
| bool | getMouseClickGrabsKeyboardFocus () const noexcept |
| void | grabKeyboardFocus () |
| void | giveAwayKeyboardFocus () |
| bool | hasKeyboardFocus (bool trueIfChildIsFocused) const |
| void | moveKeyboardFocusToSibling (bool moveToNext) |
| virtual std::unique_ptr< ComponentTraverser > | createFocusTraverser () |
| virtual std::unique_ptr< ComponentTraverser > | createKeyboardFocusTraverser () |
| void | setHasFocusOutline (bool hasFocusOutline) noexcept |
| bool | hasFocusOutline () const noexcept |
| bool | isEnabled () const noexcept |
| void | setEnabled (bool shouldBeEnabled) |
| virtual void | enablementChanged () |
| float | getAlpha () const noexcept |
| void | setAlpha (float newAlpha) |
| virtual void | alphaChanged () |
| void | setMouseCursor (const MouseCursor &cursorType) |
| virtual MouseCursor | getMouseCursor () |
| void | updateMouseCursor () const |
| virtual void | paintOverChildren (Graphics &g) |
| void | mouseMove (const MouseEvent &event) override |
| void | mouseExit (const MouseEvent &event) override |
| void | mouseDrag (const MouseEvent &event) override |
| void | mouseUp (const MouseEvent &event) override |
| void | mouseDoubleClick (const MouseEvent &event) override |
| void | mouseMagnify (const MouseEvent &event, float scaleFactor) override |
| void | setRepaintsOnMouseActivity (bool shouldRepaint) noexcept |
| void | addMouseListener (MouseListener *newListener, bool wantsEventsForAllNestedChildComponents) |
| void | removeMouseListener (MouseListener *listenerToRemove) |
| void | addKeyListener (KeyListener *newListener) |
| void | removeKeyListener (KeyListener *listenerToRemove) |
| virtual bool | keyPressed (const KeyPress &key) |
| virtual bool | keyStateChanged (bool isKeyDown) |
| virtual void | modifierKeysChanged (const ModifierKeys &modifiers) |
| virtual void | focusGained (FocusChangeType cause) |
| virtual void | focusLost (FocusChangeType cause) |
| virtual void | focusOfChildComponentChanged (FocusChangeType cause) |
| bool | isMouseOver (bool includeChildren=false) const |
| bool | isMouseButtonDown (bool includeChildren=false) const |
| bool | isMouseOverOrDragging (bool includeChildren=false) const |
| Point< int > | getMouseXYRelative () const |
| virtual void | resized () |
| virtual void | moved () |
| virtual void | childBoundsChanged (Component *child) |
| virtual void | parentSizeChanged () |
| virtual void | broughtToFront () |
| void | addComponentListener (ComponentListener *newListener) |
| void | removeComponentListener (ComponentListener *listenerToRemove) |
| void | postCommandMessage (int commandId) |
| virtual void | handleCommandMessage (int commandId) |
| void | enterModalState (bool takeKeyboardFocus=true, ModalComponentManager::Callback *callback=nullptr, bool deleteWhenDismissed=false) |
| void | exitModalState (int returnValue) |
| bool | isCurrentlyModal (bool onlyConsiderForemostModalComponent=true) const noexcept |
| bool | isCurrentlyBlockedByAnotherModalComponent () const |
| virtual bool | canModalEventBeSentToComponent (const Component *targetComponent) |
| virtual void | inputAttemptWhenModal () |
| NamedValueSet & | getProperties () noexcept |
| const NamedValueSet & | getProperties () const noexcept |
| Colour | findColour (int colourID, bool inheritFromParent=false) const |
| void | setColour (int colourID, Colour newColour) |
| void | removeColour (int colourID) |
| bool | isColourSpecified (int colourID) const |
| void | copyAllExplicitColoursTo (Component &target) const |
| virtual void | colourChanged () |
| void * | getWindowHandle () const |
| Positioner * | getPositioner () const noexcept |
| void | setPositioner (Positioner *newPositioner) |
| void | setCachedComponentImage (CachedComponentImage *newCachedImage) |
| CachedComponentImage * | getCachedComponentImage () const noexcept |
| void | setViewportIgnoreDragFlag (bool ignoreDrag) noexcept |
| bool | getViewportIgnoreDragFlag () const noexcept |
| String | getTitle () const noexcept |
| void | setTitle (const String &newTitle) |
| String | getDescription () const noexcept |
| void | setDescription (const String &newDescription) |
| String | getHelpText () const noexcept |
| void | setHelpText (const String &newHelpText) |
| void | setAccessible (bool shouldBeAccessible) |
| bool | isAccessible () const noexcept |
| AccessibilityHandler * | getAccessibilityHandler () |
| void | invalidateAccessibilityHandler () |
| void | setFocusContainer (bool shouldBeFocusContainer) noexcept |
| void | contains (int, int)=delete |
| virtual | ~MouseListener ()=default |
A window that displays a pop-up tooltip when the mouse hovers over another component.
To enable tooltips in your app, just create a single instance of a TooltipWindow object. Note that if you instantiate more than one instance of this class with the same parentComponent (even if both TooltipWindow's parentComponent is nil), you'll end up with multiple tooltips being shown! To avoid this use a SharedResourcePointer to instantiate the TooltipWindow only once.
For audio plug-ins (which should not be opening native windows) it is better to add a TooltipWindow as a member variable to the editor and ensure that the editor is the parentComponent of your TooltipWindow. This will ensure that your TooltipWindow is scaled according to your editor and the DAWs scaling setting.
The TooltipWindow object will then stay invisible, waiting until the mouse hovers for the specified length of time - it will then see if it's currently over a component which implements the TooltipClient interface, and if so, it will make itself visible to show the tooltip in the appropriate place.
- See also
- TooltipClient, SettableTooltipClient, SharedResourcePointer
@tags{GUI}