Package docking.widgets
Class ScrollableTextArea
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JScrollPane
-
- docking.widgets.ScrollableTextArea
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
,javax.swing.ScrollPaneConstants
public class ScrollableTextArea extends javax.swing.JScrollPane
A JScrollPane wrapper for a text area that can be told to scroll to bottom- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JScrollPane
javax.swing.JScrollPane.AccessibleJScrollPane, javax.swing.JScrollPane.ScrollBar
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
-
Fields inherited from class javax.swing.JScrollPane
columnHeader, horizontalScrollBar, horizontalScrollBarPolicy, lowerLeft, lowerRight, rowHeader, upperLeft, upperRight, verticalScrollBar, verticalScrollBarPolicy, viewport
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
Fields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from interface javax.swing.ScrollPaneConstants
COLUMN_HEADER, HORIZONTAL_SCROLLBAR, HORIZONTAL_SCROLLBAR_ALWAYS, HORIZONTAL_SCROLLBAR_AS_NEEDED, HORIZONTAL_SCROLLBAR_NEVER, HORIZONTAL_SCROLLBAR_POLICY, LOWER_LEADING_CORNER, LOWER_LEFT_CORNER, LOWER_RIGHT_CORNER, LOWER_TRAILING_CORNER, ROW_HEADER, UPPER_LEADING_CORNER, UPPER_LEFT_CORNER, UPPER_RIGHT_CORNER, UPPER_TRAILING_CORNER, VERTICAL_SCROLLBAR, VERTICAL_SCROLLBAR_ALWAYS, VERTICAL_SCROLLBAR_AS_NEEDED, VERTICAL_SCROLLBAR_NEVER, VERTICAL_SCROLLBAR_POLICY, VIEWPORT
-
-
Constructor Summary
Constructors Constructor Description ScrollableTextArea()
Constructs a scrollable JTextArea, where a default model is set, the initial string is null, and rows/columns are set to 0.ScrollableTextArea(int rows, int columns)
Constructs a new empty TextArea with the specified number of rows and columns.ScrollableTextArea(java.lang.String text)
Constructs a scrollable JextArea with the specified text displayed.ScrollableTextArea(java.lang.String text, int rows, int columns)
Constructs a scrollable JTextArea with the specified text and number of rows and columns.ScrollableTextArea(javax.swing.text.Document doc)
Constructs a scrollable JTextArea with the given document model, and defaults for all of the other arguments (null, 0, 0).ScrollableTextArea(javax.swing.text.Document doc, java.lang.String text, int rows, int columns)
Constructs a scrollable JTextArea with the specified number of rows and columns, and the given model.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
append(java.lang.String text)
Appends the text to the text area maintained in this scrollpaneint
getLineCount()
Returns the number of lines current set in the text areajava.awt.Dimension
getPreferredSize()
int
getTabSize()
Returns the tabsize set in the text areajava.lang.String
getText()
Returns the text contained within the text areaint
getTextAreaHeight()
Returns the total area height of the text area (row height * line count)int
getTextVisibleHeight()
Returns the visible height of the text areavoid
insert(java.lang.String text, int position)
Inserts the string at the specified positionvoid
replaceRange(java.lang.String text, int start, int end)
replaces the range of text specifiedvoid
scrollToBottom()
forces the scroll pane to scroll to bottom of text areavoid
scrollToTop()
Scroll the pane to the top of the text area.void
setCaretPosition(int position)
void
setEditable(boolean editable)
Sets the ability to edit the text area contentvoid
setTabSize(int tabSize)
Sets the number of characters to expand tabs to.void
setText(java.lang.String text)
set the text in the text area-
Methods inherited from class javax.swing.JScrollPane
createHorizontalScrollBar, createVerticalScrollBar, createViewport, getAccessibleContext, getColumnHeader, getCorner, getHorizontalScrollBar, getHorizontalScrollBarPolicy, getRowHeader, getUI, getUIClassID, getVerticalScrollBar, getVerticalScrollBarPolicy, getViewport, getViewportBorder, getViewportBorderBounds, isValidateRoot, isWheelScrollingEnabled, paramString, setColumnHeader, setColumnHeaderView, setComponentOrientation, setCorner, setHorizontalScrollBar, setHorizontalScrollBarPolicy, setLayout, setRowHeader, setRowHeaderView, setUI, setVerticalScrollBar, setVerticalScrollBarPolicy, setViewport, setViewportBorder, setViewportView, setWheelScrollingEnabled, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Constructor Detail
-
ScrollableTextArea
public ScrollableTextArea()
Constructs a scrollable JTextArea, where a default model is set, the initial string is null, and rows/columns are set to 0.
-
ScrollableTextArea
public ScrollableTextArea(java.lang.String text)
Constructs a scrollable JextArea with the specified text displayed. A default model is created and rows/columns are set to 0.- Parameters:
text
- the initial text.
-
ScrollableTextArea
public ScrollableTextArea(int rows, int columns)
Constructs a new empty TextArea with the specified number of rows and columns. A default model is created, and the initial string is null.- Parameters:
rows
- the number of visible rows.columns
- the number of visible columns.
-
ScrollableTextArea
public ScrollableTextArea(java.lang.String text, int rows, int columns)
Constructs a scrollable JTextArea with the specified text and number of rows and columns. A default model is created.- Parameters:
text
- initial text.rows
- the number of visible rows.columns
- the number of visible columns.
-
ScrollableTextArea
public ScrollableTextArea(javax.swing.text.Document doc)
Constructs a scrollable JTextArea with the given document model, and defaults for all of the other arguments (null, 0, 0).- Parameters:
doc
- - the model to use
-
ScrollableTextArea
public ScrollableTextArea(javax.swing.text.Document doc, java.lang.String text, int rows, int columns)
Constructs a scrollable JTextArea with the specified number of rows and columns, and the given model. All of the constructors feed through this constructor.- Parameters:
doc
- - the model to usetext
- initial text.rows
- the number of visible rows.columns
- the number of visible columns.
-
-
Method Detail
-
append
public void append(java.lang.String text)
Appends the text to the text area maintained in this scrollpane- Parameters:
text
- the text to append.
-
getLineCount
public int getLineCount()
Returns the number of lines current set in the text area
-
getTabSize
public int getTabSize()
Returns the tabsize set in the text area
-
getTextAreaHeight
public int getTextAreaHeight()
Returns the total area height of the text area (row height * line count)
-
getTextVisibleHeight
public int getTextVisibleHeight()
Returns the visible height of the text area
-
insert
public void insert(java.lang.String text, int position)
Inserts the string at the specified position- Parameters:
text
- the text to insert.position
- the character postition at which to insert the text.
-
replaceRange
public void replaceRange(java.lang.String text, int start, int end)
replaces the range of text specified- Parameters:
text
- the new text that will replace the old text.start
- the starting character postition of the text to replace.end
- the ending character position of the text to replace.
-
setCaretPosition
public void setCaretPosition(int position)
-
getPreferredSize
public java.awt.Dimension getPreferredSize()
- Overrides:
getPreferredSize
in classjavax.swing.JComponent
-
scrollToBottom
public void scrollToBottom()
forces the scroll pane to scroll to bottom of text area
-
scrollToTop
public void scrollToTop()
Scroll the pane to the top of the text area.
-
setTabSize
public void setTabSize(int tabSize)
Sets the number of characters to expand tabs to. This will be multiplied by the maximum advance for variable width fonts. A PropertyChange event ("tabSize") is fired when tab size changes.- Parameters:
tabSize
- the new tab size.
-
setText
public void setText(java.lang.String text)
set the text in the text area- Parameters:
text
- the text to set.
-
getText
public java.lang.String getText()
Returns the text contained within the text area
-
setEditable
public void setEditable(boolean editable)
Sets the ability to edit the text area content- Parameters:
editable
- true to edit, false to not allow edit.
-
-