Loading...
Searching...
No Matches
TextInputTarget Class Referenceabstract

An abstract base class which can be implemented by components that function as text editors. More...

#include <juce_TextInputTarget.h>

Inheritance diagram for TextInputTarget:

Public Types

enum  VirtualKeyboardType {
  textKeyboard = 0 , numericKeyboard , decimalKeyboard , urlKeyboard ,
  emailAddressKeyboard , phoneNumberKeyboard , passwordKeyboard
}
 A set of possible on-screen keyboard types, for use in the getKeyboardType() method. More...
 

Public Member Functions

 TextInputTarget ()=default
 
virtual ~TextInputTarget ()=default
 Destructor.
 
virtual bool isTextInputActive () const =0
 Returns true if this input target is currently accepting input.
 
virtual Range< int > getHighlightedRegion () const =0
 Returns the extents of the selected text region, or an empty range if nothing is selected,.
 
virtual void setHighlightedRegion (const Range< int > &newRange)=0
 Sets the currently-selected text region.
 
virtual void setTemporaryUnderlining (const Array< Range< int > > &underlinedRegions)=0
 Sets a number of temporarily underlined sections.
 
virtual String getTextInRange (const Range< int > &range) const =0
 Returns a specified sub-section of the text.
 
virtual void insertTextAtCaret (const String &textToInsert)=0
 Inserts some text, overwriting the selected text region, if there is one.
 
virtual int getCaretPosition () const =0
 Returns the current index of the caret.
 
Rectangle< int > getCaretRectangle () const
 Returns the position of the caret, relative to the component's origin.
 
virtual Rectangle< int > getCaretRectangleForCharIndex (int characterIndex) const =0
 Returns the bounding box of the character at the given index.
 
virtual int getTotalNumChars () const =0
 Returns the total number of codepoints in the string.
 
virtual int getCharIndexForPoint (Point< int > point) const =0
 Returns the index closest to the given point.
 
virtual RectangleList< int > getTextBounds (Range< int > textRange) const =0
 Returns the bounding box for a range of text in the editor.
 
virtual VirtualKeyboardType getKeyboardType ()
 Returns the target's preference for the type of keyboard that would be most appropriate.
 

Detailed Description

An abstract base class which can be implemented by components that function as text editors.

This class allows different types of text editor component to provide a uniform interface, which can be used by things like OS-specific input methods, on-screen keyboards, etc.

Member Enumeration Documentation

◆ VirtualKeyboardType

A set of possible on-screen keyboard types, for use in the getKeyboardType() method.

Enumerator
textKeyboard 
numericKeyboard 
decimalKeyboard 
urlKeyboard 
emailAddressKeyboard 
phoneNumberKeyboard 
passwordKeyboard 

Constructor & Destructor Documentation

◆ TextInputTarget()

TextInputTarget::TextInputTarget ( )
default

◆ ~TextInputTarget()

virtual TextInputTarget::~TextInputTarget ( )
virtualdefault

Destructor.

Member Function Documentation

◆ isTextInputActive()

virtual bool TextInputTarget::isTextInputActive ( ) const
pure virtual

Returns true if this input target is currently accepting input.

For example, a text editor might return false if it's in read-only mode.

Implemented in CodeEditorComponent, and TextEditor.

◆ getHighlightedRegion()

virtual Range< int > TextInputTarget::getHighlightedRegion ( ) const
pure virtual

Returns the extents of the selected text region, or an empty range if nothing is selected,.

Implemented in CodeEditorComponent, and TextEditor.

◆ setHighlightedRegion()

virtual void TextInputTarget::setHighlightedRegion ( const Range< int > & newRange)
pure virtual

Sets the currently-selected text region.

Implemented in CodeEditorComponent, and TextEditor.

◆ setTemporaryUnderlining()

virtual void TextInputTarget::setTemporaryUnderlining ( const Array< Range< int > > & underlinedRegions)
pure virtual

Sets a number of temporarily underlined sections.

This is needed by MS Windows input method UI.

Implemented in CodeEditorComponent, and TextEditor.

◆ getTextInRange()

virtual String TextInputTarget::getTextInRange ( const Range< int > & range) const
pure virtual

Returns a specified sub-section of the text.

Implemented in CodeEditorComponent, and TextEditor.

◆ insertTextAtCaret()

virtual void TextInputTarget::insertTextAtCaret ( const String & textToInsert)
pure virtual

Inserts some text, overwriting the selected text region, if there is one.

Implemented in CodeEditorComponent, and TextEditor.

◆ getCaretPosition()

virtual int TextInputTarget::getCaretPosition ( ) const
pure virtual

Returns the current index of the caret.

Implemented in CodeEditorComponent, and TextEditor.

◆ getCaretRectangle()

Rectangle< int > TextInputTarget::getCaretRectangle ( ) const

Returns the position of the caret, relative to the component's origin.

◆ getCaretRectangleForCharIndex()

virtual Rectangle< int > TextInputTarget::getCaretRectangleForCharIndex ( int characterIndex) const
pure virtual

Returns the bounding box of the character at the given index.

Implemented in CodeEditorComponent, and TextEditor.

◆ getTotalNumChars()

virtual int TextInputTarget::getTotalNumChars ( ) const
pure virtual

Returns the total number of codepoints in the string.

Implemented in CodeEditorComponent, and TextEditor.

◆ getCharIndexForPoint()

virtual int TextInputTarget::getCharIndexForPoint ( Point< int > point) const
pure virtual

Returns the index closest to the given point.

This is the location where the cursor might be placed after clicking at the given point in a text field.

Implemented in CodeEditorComponent, and TextEditor.

◆ getTextBounds()

virtual RectangleList< int > TextInputTarget::getTextBounds ( Range< int > textRange) const
pure virtual

Returns the bounding box for a range of text in the editor.

As the range may span multiple lines, this method returns a RectangleList.

The bounds are relative to the component's top-left and may extend beyond the bounds of the component if the text is long and word wrapping is disabled.

Implemented in CodeEditorComponent, and TextEditor.

◆ getKeyboardType()

virtual VirtualKeyboardType TextInputTarget::getKeyboardType ( )
virtual

Returns the target's preference for the type of keyboard that would be most appropriate.

This may be ignored, depending on the capabilities of the OS.

Reimplemented in TextEditor.


The documentation for this class was generated from the following file:
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram