79 bool shouldWordWrap =
true);
105 void setTabKeyUsedAsCharacter (
bool shouldTabKeyBeUsed);
118 void setEscapeAndReturnKeysConsumed (
bool shouldBeConsumed)
noexcept;
130 void setReadOnly (
bool shouldBeReadOnly);
140 void setCaretVisible (
bool shouldBeVisible);
156 void setScrollbarsShown (
bool shouldBeEnabled);
172 void setPasswordCharacter (
juce_wchar passwordCharacter);
187 void setPopupMenuEnabled (
bool menuEnabled);
242 void setFont (
const Font& newFont);
251 void applyFontToAllText (
const Font& newFont,
bool changeCurrentFont =
true);
264 void applyColourToAllText (
const Colour& newColour,
bool changeCurrentTextColour =
true);
286 void setSelectAllWhenFocused (
bool shouldSelectAll);
306 void setScrollBarThickness (
int newThicknessPixels);
336 void addListener (Listener* newListener);
341 void removeListener (Listener* listenerToRemove);
381 bool sendTextChangeMessage =
true);
463 String getHighlightedText()
const;
468 int getTextIndexAt (
int x,
int y)
const;
475 int getTotalNumChars()
const;
482 int getTextWidth()
const;
489 int getTextHeight()
const;
494 void setIndents (
int newLeftIndent,
int newTopIndent);
521 void setScrollToShowCursor (
bool shouldScrollToShowCaret);
547 void moveCaretToEnd();
548 bool moveCaretLeft (
bool moveInWholeWordSteps,
bool selecting);
549 bool moveCaretRight (
bool moveInWholeWordSteps,
bool selecting);
550 bool moveCaretUp (
bool selecting);
551 bool moveCaretDown (
bool selecting);
552 bool pageUp (
bool selecting);
553 bool pageDown (
bool selecting);
556 bool moveCaretToTop (
bool selecting);
557 bool moveCaretToStartOfLine (
bool selecting);
558 bool moveCaretToEnd (
bool selecting);
559 bool moveCaretToEndOfLine (
bool selecting);
560 bool deleteBackwards (
bool moveInWholeWordSteps);
561 bool deleteForwards (
bool moveInWholeWordSteps);
562 bool copyToClipboard();
563 bool cutToClipboard();
564 bool pasteFromClipboard();
590 virtual void addPopupMenuItems (
PopupMenu& menuToAddTo,
604 virtual void performPopupMenuAction (
int menuItemID);
665 void setInputRestrictions (
int maxTextLength,
679 void setClicksOutsideDismissVirtualKeyboard (
bool);
741 void scrollToMakeSureCursorIsVisible();
747 void newTransaction();
750 virtual void returnPressed();
753 virtual void escapePressed();
759 struct TextHolderComponent;
760 struct TextEditorViewport;
763 class EditorAccessibilityHandler;
789 std::unique_ptr<CaretComponent>
caret;
819 void moveCaretTo (
int newPosition,
bool isSelecting);
823 void splitSection (
int sectionIndex,
int charToSplitAt);
#define copy(x)
Definition ADnoteParameters.cpp:1011
Type jmax(const Type a, const Type b)
Definition MathsFunctions.h:48
#define noexcept
Definition DistrhoDefines.h:72
CAdPlugDatabase::CRecord::RecordType type
Definition adplugdb.cpp:93
Definition juce_Array.h:56
Definition juce_BorderSize.h:42
Definition juce_CaretComponent.h:36
Definition juce_Colour.h:38
FocusChangeType
Definition juce_Component.h:1890
String componentName
Definition juce_Component.h:2534
Component() noexcept
Definition juce_Component.cpp:517
Definition juce_Font.h:42
Definition juce_GraphicsContext.h:45
Definition juce_Justification.h:41
@ topLeft
Definition juce_Justification.h:163
Definition juce_KeyPress.h:40
Definition juce_ListenerList.h:70
Definition juce_MouseEvent.h:39
Definition juce_OptionalScopedPointer.h:38
Definition juce_OwnedArray.h:51
Definition juce_Point.h:42
Definition juce_Range.h:40
Definition juce_Rectangle.h:67
Definition juce_RectangleList.h:43
Definition juce_String.h:53
Definition juce_TextEditor.h:611
virtual String filterNewText(TextEditor &, const String &newInput)=0
virtual ~InputFilter()=default
LengthAndCharacterRestriction(int maxNumChars, const String &allowedCharacters)
Definition juce_TextEditor.cpp:1178
int maxLength
Definition juce_TextEditor.h:641
String filterNewText(TextEditor &, const String &) override
Definition juce_TextEditor.cpp:1183
String allowedCharacters
Definition juce_TextEditor.h:640
Definition juce_TextEditor.h:315
virtual void textEditorTextChanged(TextEditor &)
Definition juce_TextEditor.h:321
virtual ~Listener()=default
virtual void textEditorFocusLost(TextEditor &)
Definition juce_TextEditor.h:330
virtual void textEditorReturnKeyPressed(TextEditor &)
Definition juce_TextEditor.h:324
virtual void textEditorEscapeKeyPressed(TextEditor &)
Definition juce_TextEditor.h:327
void paint(Graphics &) override
Definition juce_TextEditor.cpp:1775
bool isWhitespaceUnderlined() const noexcept
Definition juce_TextEditor.h:276
int findWordBreakBefore(int position) const
Definition juce_TextEditor.cpp:2645
void scrollEditorToPositionCaret(int desiredCaretX, int desiredCaretY)
Definition juce_TextEditor.cpp:1419
int getMaximumTextHeight() const
Definition juce_TextEditor.cpp:1509
bool getClicksOutsideDismissVirtualKeyboard() const
Definition juce_TextEditor.h:684
int getMaximumTextWidth() const
Definition juce_TextEditor.cpp:1504
void handleCommandMessage(int) override
Definition juce_TextEditor.cpp:2267
DragType dragType
Definition juce_TextEditor.h:812
void clearInternal(UndoManager *)
Definition juce_TextEditor.cpp:2324
void repaintText(Range< int >)
Definition juce_TextEditor.cpp:1347
bool isTextInputActive() const override
Definition juce_TextEditor.cpp:1047
bool selectAllTextWhenFocused
Definition juce_TextEditor.h:776
Range< int > selection
Definition juce_TextEditor.h:790
void setMultiLine(bool shouldBeMultiLine, bool shouldWordWrap=true)
Definition juce_TextEditor.cpp:993
ColourIds
Definition juce_TextEditor.h:208
@ backgroundColourId
Definition juce_TextEditor.h:209
@ highlightColourId
Definition juce_TextEditor.h:217
@ textColourId
Definition juce_TextEditor.h:212
@ outlineColourId
Definition juce_TextEditor.h:223
@ highlightedTextColourId
Definition juce_TextEditor.h:221
@ focusedOutlineColourId
Definition juce_TextEditor.h:226
@ shadowColourId
Definition juce_TextEditor.h:229
void setCaretPosition(int newIndex)
Definition juce_TextEditor.cpp:1409
InputFilter * getInputFilter() const noexcept
Definition juce_TextEditor.h:654
int getCaretPosition() const
Definition juce_TextEditor.cpp:1404
bool isEmpty() const
Definition juce_TextEditor.cpp:2573
bool keyStateChanged(bool) override
Definition juce_TextEditor.cpp:2199
bool isTabKeyUsedAsCharacter() const
Definition juce_TextEditor.h:110
int leftIndent
Definition juce_TextEditor.h:791
Array< Range< int > > underlinedSections
Definition juce_TextEditor.h:815
bool isPopupMenuEnabled() const noexcept
Definition juce_TextEditor.h:192
Colour colourForTextWhenEmpty
Definition juce_TextEditor.h:798
bool tabKeyUsed
Definition juce_TextEditor.h:780
OptionalScopedPointer< InputFilter > inputFilter
Definition juce_TextEditor.h:800
float lineSpacing
Definition juce_TextEditor.h:803
UndoManager * getUndoManager() noexcept
Definition juce_TextEditor.cpp:2319
int findWordBreakAfter(int position) const
Definition juce_TextEditor.cpp:2625
void setWhitespaceUnderlined(bool shouldUnderlineWhitespace) noexcept
Definition juce_TextEditor.h:270
bool underlineWhitespace
Definition juce_TextEditor.h:784
void moveCaret(int newCaretPos)
Definition juce_TextEditor.cpp:1382
void reinsert(int insertIndex, const OwnedArray< UniformTextSection > &)
Definition juce_TextEditor.cpp:2385
bool getReturnKeyStartsNewLine() const
Definition juce_TextEditor.h:97
void mouseWheelMove(const MouseEvent &, const MouseWheelDetails &) override
Definition juce_TextEditor.cpp:1978
Rectangle< int > getCaretRectangle() override
Definition juce_TextEditor.cpp:1453
std::unique_ptr< AccessibilityHandler > createAccessibilityHandler() override
Definition juce_TextEditor.cpp:2791
bool clicksOutsideDismissVirtualKeyboard
Definition juce_TextEditor.h:786
String textToShowWhenEmpty
Definition juce_TextEditor.h:797
bool undoOrRedo(bool shouldUndo)
Definition juce_TextEditor.cpp:969
Justification getJustificationType() const noexcept
Definition juce_TextEditor.h:527
void insertTextAtCaret(const String &textToInsert) override
Definition juce_TextEditor.cpp:1649
bool returnKeyStartsNewLine
Definition juce_TextEditor.h:774
void mouseDown(const MouseEvent &) override
Definition juce_TextEditor.cpp:1841
std::unique_ptr< CaretComponent > caret
Definition juce_TextEditor.h:789
void setSelection(Range< int >) noexcept
Definition juce_TextEditor.cpp:1313
std::unique_ptr< Viewport > viewport
Definition juce_TextEditor.h:765
bool isReadOnly() const noexcept
Definition juce_TextEditor.cpp:1042
void setTemporaryUnderlining(const Array< Range< int > > &) override
Definition juce_TextEditor.cpp:2312
bool wasFocused
Definition juce_TextEditor.h:778
const Font & getFont() const noexcept
Definition juce_TextEditor.h:257
std::function< void()> onFocusLost
Definition juce_TextEditor.h:354
std::function< void()> onEscapeKey
Definition juce_TextEditor.h:351
bool keepCaretOnScreen
Definition juce_TextEditor.h:779
void drawContent(Graphics &)
Definition juce_TextEditor.cpp:1709
void insert(const String &, int insertIndex, const Font &, Colour, UndoManager *, int newCaretPos)
Definition juce_TextEditor.cpp:2329
void remove(Range< int >, UndoManager *, int caretPositionToMoveTo)
Definition juce_TextEditor.cpp:2424
void focusGained(FocusChangeType) override
Definition juce_TextEditor.cpp:2219
Point< int > getTextOffset() const noexcept
Definition juce_TextEditor.cpp:1467
bool wordWrap
Definition juce_TextEditor.h:773
void clear()
Definition juce_TextEditor.cpp:1227
bool isPopupMenuCurrentlyActive() const noexcept
Definition juce_TextEditor.h:195
void updateCaretPosition()
Definition juce_TextEditor.cpp:1164
void setLineSpacing(float newLineSpacing) noexcept
Definition juce_TextEditor.h:533
void recreateCaret()
Definition juce_TextEditor.cpp:1147
DragType
Definition juce_TextEditor.h:806
@ draggingSelectionStart
Definition juce_TextEditor.h:808
@ draggingSelectionEnd
Definition juce_TextEditor.h:809
@ notDragging
Definition juce_TextEditor.h:807
void enablementChanged() override
Definition juce_TextEditor.cpp:1132
std::function< void()> onReturnKey
Definition juce_TextEditor.h:348
void checkFocus()
Definition juce_TextEditor.cpp:1341
int getLeftIndent() const noexcept
Definition juce_TextEditor.h:504
bool caretVisible
Definition juce_TextEditor.h:771
float getLineSpacing() const noexcept
Definition juce_TextEditor.h:536
int totalNumChars
Definition juce_TextEditor.h:794
void setText(const String &newText, bool sendTextChangeMessage=true)
Definition juce_TextEditor.cpp:1234
VirtualKeyboardType keyboardType
Definition juce_TextEditor.h:802
void paintOverChildren(Graphics &) override
Definition juce_TextEditor.cpp:1780
bool mouseDownInEditor
Definition juce_TextEditor.h:785
void textWasChangedByValue()
Definition juce_TextEditor.cpp:1289
void mouseDrag(const MouseEvent &) override
Definition juce_TextEditor.cpp:1884
int caretPosition
Definition juce_TextEditor.h:795
juce_wchar passwordCharacter
Definition juce_TextEditor.h:799
void moveCaretTo(int newPosition, bool isSelecting)
Definition juce_TextEditor.cpp:1597
void coalesceSimilarSections()
Definition juce_TextEditor.cpp:2680
bool popupMenuEnabled
Definition juce_TextEditor.h:775
String getTextInRange(const Range< int > &textRange) const override
Definition juce_TextEditor.cpp:2527
int indexAtPosition(float x, float y) const
Definition juce_TextEditor.cpp:2601
int getTopIndent() const noexcept
Definition juce_TextEditor.h:499
void lookAndFeelChanged() override
Definition juce_TextEditor.cpp:1120
void checkLayout()
Definition juce_TextEditor.cpp:1514
unsigned int lastTransactionTime
Definition juce_TextEditor.h:792
Range< int > getHighlightedRegion() const override
Definition juce_TextEditor.h:460
void resized() override
Definition juce_TextEditor.cpp:2254
bool consumeEscAndReturnKeys
Definition juce_TextEditor.h:783
void mouseDoubleClick(const MouseEvent &) override
Definition juce_TextEditor.cpp:1909
bool menuActive
Definition juce_TextEditor.h:781
bool areScrollbarsShown() const noexcept
Definition juce_TextEditor.h:161
void setInputFilter(InputFilter *newFilter, bool takeOwnership)
Definition juce_TextEditor.cpp:1196
juce_wchar getPasswordCharacter() const noexcept
Definition juce_TextEditor.h:177
void focusLost(FocusChangeType) override
Definition juce_TextEditor.cpp:2238
void scrollByLines(int deltaLines)
Definition juce_TextEditor.cpp:2059
BorderSize< int > borderSize
Definition juce_TextEditor.h:767
void getCharPosition(int index, Point< float > &, float &lineHeight) const
Definition juce_TextEditor.cpp:2578
bool multiline
Definition juce_TextEditor.h:772
Value & getTextValue()
Definition juce_TextEditor.cpp:1283
bool valueTextNeedsUpdating
Definition juce_TextEditor.h:782
bool isCaretVisible() const noexcept
Definition juce_TextEditor.h:145
String getTextToShowWhenEmpty() const noexcept
Definition juce_TextEditor.h:300
void setHighlightedRegion(const Range< int > &newSelection) override
Definition juce_TextEditor.cpp:1670
std::function< void()> onTextChange
Definition juce_TextEditor.h:345
TextHolderComponent * textHolder
Definition juce_TextEditor.h:766
ListenerList< Listener > listeners
Definition juce_TextEditor.h:814
bool readOnly
Definition juce_TextEditor.h:770
TextEditor(const String &componentName=String(), juce_wchar passwordCharacter=0)
Definition juce_TextEditor.cpp:933
void cut()
Definition juce_TextEditor.cpp:1699
bool keyPressed(const KeyPress &) override
Definition juce_TextEditor.cpp:2154
void setKeyboardType(VirtualKeyboardType type) noexcept
Definition juce_TextEditor.h:671
void setReturnKeyStartsNewLine(bool shouldStartNewLine)
Definition juce_TextEditor.cpp:1052
void mouseUp(const MouseEvent &) override
Definition juce_TextEditor.cpp:1894
int topIndent
Definition juce_TextEditor.h:791
bool isMultiLine() const
Definition juce_TextEditor.cpp:1010
bool moveCaretWithTransaction(int newPos, bool selecting)
Definition juce_TextEditor.cpp:1988
VirtualKeyboardType getKeyboardType() override
Definition juce_TextEditor.h:736
OwnedArray< UniformTextSection > sections
Definition juce_TextEditor.h:796
UndoManager undoManager
Definition juce_TextEditor.h:788
bool scrollbarVisible
Definition juce_TextEditor.h:777
String getText() const
Definition juce_TextEditor.cpp:2516
void parentHierarchyChanged() override
Definition juce_TextEditor.cpp:1127
Rectangle< float > getCaretRectangleFloat() const
Definition juce_TextEditor.cpp:1458
void updateValueFromText()
Definition juce_TextEditor.cpp:1274
void splitSection(int sectionIndex, int charToSplitAt)
Definition juce_TextEditor.cpp:2672
void paste()
Definition juce_TextEditor.cpp:1688
Font currentFont
Definition juce_TextEditor.h:793
Justification justification
Definition juce_TextEditor.h:768
Value textValue
Definition juce_TextEditor.h:801
int getWordWrapWidth() const
Definition juce_TextEditor.cpp:1498
void timerCallbackInt()
Definition juce_TextEditor.cpp:1331
VirtualKeyboardType
Definition juce_TextInputTarget.h:81
@ textKeyboard
Definition juce_TextInputTarget.h:82
TextInputTarget()=default
Definition juce_UndoManager.h:52
Definition juce_Value.h:51
int y
Definition inflate.c:1588
static ZCONST unsigned border[]
Definition inflate.c:749
unsigned x[BMAX+1]
Definition inflate.c:1586
static int int height
Definition pugl.h:1594
static int width
Definition pugl.h:1593
#define JUCE_API
Definition juce_StandardHeader.h:152
#define JUCE_PUBLIC_IN_DLL_BUILD(declaration)
Definition juce_StandardHeader.h:158
Definition carla_juce.cpp:31
@ textChanged
Definition juce_AccessibilityEvent.h:71
wchar_t juce_wchar
Definition juce_CharacterFunctions.h:42
Definition juce_MouseEvent.h:392
Definition juce_TextEditor.h:691
virtual ~LookAndFeelMethods()=default
virtual CaretComponent * createCaretComponent(Component *keyFocusOwner)=0
virtual void fillTextEditorBackground(Graphics &, int width, int height, TextEditor &)=0
virtual void drawTextEditorOutline(Graphics &, int width, int height, TextEditor &)=0
Definition juce_TextEditor.cpp:834
const char * text
Definition swell-functions.h:167
#define void
Definition unzip.h:396
#define const
Definition zconf.h:137