|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.text.JTextComponent
javax.swing.JTextArea
org.fife.ui.rtextarea.RTextArea
public class RTextArea
An extension of JTextArea
that adds the following features:
RTextArea
is set to a color,
its opaque property is set to true
for performance reasons. If
the background is set to an image, then the opaque property is set to
false
. This slows things down a little, but if it didn't happen
then we would see garbage on-screen when the user scrolled through a document
using the arrow keys (not the page-up/down keys though). You should never
have to set the opaque property yourself; it is always done for you.
Nested Class Summary | |
---|---|
protected class |
RTextArea.RTextAreaMutableCaretEvent
Modified from MutableCaretEvent in
JTextComponent so that mouse events get fired when the user
is selecting text with the mouse as well. |
Nested classes/interfaces inherited from class javax.swing.JTextArea |
---|
JTextArea.AccessibleJTextArea |
Nested classes/interfaces inherited from class javax.swing.text.JTextComponent |
---|
JTextComponent.AccessibleJTextComponent, JTextComponent.DropLocation, JTextComponent.KeyBinding |
Nested classes/interfaces inherited from class javax.swing.JComponent |
---|
JComponent.AccessibleJComponent |
Nested classes/interfaces inherited from class java.awt.Container |
---|
Container.AccessibleAWTContainer |
Nested classes/interfaces inherited from class java.awt.Component |
---|
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy |
Field Summary | |
---|---|
static String |
BACKGROUND_IMAGE_PROPERTY
|
static int |
COPY_ACTION
|
static String |
CURRENT_LINE_HIGHLIGHT_COLOR_PROPERTY
|
static String |
CURRENT_LINE_HIGHLIGHT_FADE_PROPERTY
|
static int |
CUT_ACTION
|
static int |
DELETE_ACTION
|
static String |
HIGHLIGHT_CURRENT_LINE_PROPERTY
|
static int |
INSERT_MODE
Constant representing insert mode. |
static String |
MARK_ALL_COLOR_PROPERTY
The property fired when the "mark all" color changes. |
static int |
OVERWRITE_MODE
Constant representing overwrite mode. |
static int |
PASTE_ACTION
|
static int |
REDO_ACTION
|
static String |
ROUNDED_SELECTION_PROPERTY
|
static int |
SELECT_ALL_ACTION
|
static int |
UNDO_ACTION
|
Fields inherited from class javax.swing.text.JTextComponent |
---|
DEFAULT_KEYMAP, FOCUS_ACCELERATOR_KEY |
Fields inherited from class javax.swing.JComponent |
---|
accessibleContext, 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 |
---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
Fields inherited from interface java.awt.print.Printable |
---|
NO_SUCH_PAGE, PAGE_EXISTS |
Fields inherited from interface java.awt.image.ImageObserver |
---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
Constructor Summary | |
---|---|
RTextArea()
Constructor. |
|
RTextArea(AbstractDocument doc)
Constructor. |
|
RTextArea(AbstractDocument doc,
String text,
int rows,
int cols)
Constructor. |
|
RTextArea(int textMode)
Creates a new RTextArea . |
|
RTextArea(int rows,
int cols)
Constructor. |
|
RTextArea(String text)
Constructor. |
|
RTextArea(String text,
int rows,
int cols)
Constructor. |
Method Summary | |
---|---|
protected void |
addCurrentLineHighlightListeners()
Adds listeners that listen for changes to the current line, so we can update our "current line highlight." |
Object |
addLineHighlight(int line,
Color color)
Adds a line highlight. |
void |
beginAtomicEdit()
Begins an "atomic edit." |
static void |
beginRecordingMacro()
Begins recording a macro. |
boolean |
canRedo()
Tells whether a redo is possible |
boolean |
canUndo()
Tells whether an undo is possible |
void |
clearMarkAllHighlights()
Clears any "mark all" highlights, if any. |
protected void |
configurePopupMenu(JPopupMenu popupMenu)
Configures the popup menu for this text area. |
void |
convertSpacesToTabs()
Converts all instances of a number of spaces equal to a tab size into a tab in this text area. |
void |
convertTabsToSpaces()
Converts all instances of a tab into a number of spaces equivalent to a tab in this text area. |
protected org.fife.ui.rtextarea.RTextAreaBase.RTAMouseListener |
createMouseListener()
Returns the caret event/mouse listener for RTextArea s. |
protected JPopupMenu |
createPopupMenu()
Creates the right-click popup menu. |
protected RTextAreaUI |
createRTextAreaUI()
Returns the a real UI to install on this text area. |
void |
discardAllEdits()
Removes all undoable edits from this document's undo manager. |
void |
endAtomicEdit()
Completes an "atomic" edit. |
static void |
endRecordingMacro()
Ends recording a macro. |
protected void |
fireCaretUpdate(CaretEvent e)
Notifies all listeners that a caret change has occurred. |
protected void |
forceCurrentLineHighlightRepaint()
Forces the current line highlight to be repainted. |
static RecordableTextAction |
getAction(int action)
Provides a way to gain access to the editor actions on the right-click popup menu. |
Color |
getBackground()
Returns the java.awt.Color used as the background color for
this text area. |
Image |
getBackgroundImage()
Returns the image currently used for the background. |
Object |
getBackgroundObject()
Returns the Object representing the background for all
documents in this tabbed pane; either a java.awt.Color or a
java.lang.Image containing the image used as the background
for this text area. |
int |
getCaretLineNumber()
Gets the line number that the caret is on. |
int |
getCaretOffsetFromLineStart()
Gets the position from the beginning of the current line that the caret is on. |
Color |
getCurrentLineHighlightColor()
Returns the color being used to highlight the current line. |
static Macro |
getCurrentMacro()
Returns the macro currently stored in this RTextArea . |
static Color |
getDefaultCaretColor()
Returns the default caret color. |
static Color |
getDefaultCurrentLineHighlightColor()
Returns the "default" color for highlighting the current line. |
static Font |
getDefaultFont()
Returns the default font for text areas. |
static Color |
getDefaultForeground()
Returns the default foreground color for text in this text area. |
static Color |
getDefaultMarginLineColor()
Returns the default color for the margin line. |
static int |
getDefaultMarginLinePosition()
Returns the default margin line position. |
static Color |
getDefaultMarkAllHighlightColor()
Returns the default color used for "mark all." |
static int |
getDefaultTabSize()
Returns the default tab size, in spaces. |
boolean |
getFadeCurrentLineHighlight()
Returns whether the current line highlight is faded. |
boolean |
getHighlightCurrentLine()
Returns whether or not the current line is highlighted. |
static IconGroup |
getIconGroup()
Returns the icon group being used for the actions of this text area. |
int |
getLineEndOffsetOfCurrentLine()
Returns the offset of the last character of the line that the caret is on. |
int |
getLineHeight()
Returns the height of a line of text in this text area. |
int |
getLineStartOffsetOfCurrentLine()
Returns the offset of the first character of the line that the caret is on. |
Color |
getMarginLineColor()
Returns the color used to paint the margin line. |
int |
getMarginLinePixelLocation()
Returns the margin line position (in pixels) from the left-hand side of the text area. |
int |
getMarginLinePosition()
Returns the margin line position (which is the number of 'm' widths in the current font the margin line is over). |
Color |
getMarkAllHighlightColor()
Returns the color used in "mark all." |
int |
getMaxAscent()
Returns the maximum ascent of all fonts used in this text area. |
JPopupMenu |
getPopupMenu()
Returns the popup menu for this component, lazily creating it if necessary. |
boolean |
getRoundedSelectionEdges()
Returns whether selection edges are rounded in this text area. |
boolean |
getTabsEmulated()
Returns whether or not tabs are emulated with spaces (i.e., "soft" tabs). |
int |
getTextMode()
Returns the text mode this editor pane is currently in. |
ToolTipSupplier |
getToolTipSupplier()
Returns the tool tip supplier. |
String |
getToolTipText(MouseEvent e)
Returns the tooltip to display for a mouse event at the given location. |
protected void |
handleReplaceSelection(String content)
Does the actual dirty-work of replacing the selected text in this text area (i.e., in its document). |
boolean |
isMarginLineEnabled()
Returns whether or not the margin line is being painted. |
static boolean |
isOSX()
Returns whether the OS we're running on is OS X. |
static boolean |
isRecordingMacro()
Returns whether or not a macro is being recorded. |
static void |
loadMacro(Macro macro)
Loads a macro to be used by all RTextArea s in the current
application. |
int |
markAll(String toMark,
boolean matchCase,
boolean wholeWord,
boolean regex)
Marks all instances of the specified text in this text area. |
protected void |
paintComponent(Graphics g)
Paints the text area. |
void |
paste()
|
void |
playbackLastMacro()
"Plays back" the last recorded macro in this text area. |
protected void |
possiblyUpdateCurrentLineHighlightLocation()
Updates the current line highlight location. |
int |
print(Graphics g,
PageFormat pageFormat,
int pageIndex)
Method called when it's time to print this badboy (the old-school, AWT way). |
protected void |
processComponentEvent(ComponentEvent e)
Overridden so we can tell when the text area is resized and update the current-line highlight, if necessary (i.e., if it is enabled and if lineWrap is enabled. |
void |
read(Reader in,
Object desc)
We override this method because the super version gives us an entirely new Document , thus requiring us to re-attach our Undo
manager. |
void |
redoLastAction()
Attempt to redo the last action. |
void |
removeAllLineHighlights()
Removes all line highlights. |
void |
removeLineHighlight(Object tag)
Removes a line highlight. |
void |
replaceRange(String str,
int start,
int end)
Replaces text from the indicated start to end position with the new text specified. |
void |
replaceSelection(String text)
This method overrides JTextComponent 's
replaceSelection , so that if textMode is
OVERWRITE_MODE , it actually overwrites. |
static void |
setActionProperties(int action,
String name,
char mnemonic,
KeyStroke accelerator)
Sets the properties of one of the actions this text area owns. |
static void |
setActionProperties(int action,
String name,
Integer mnemonic,
KeyStroke accelerator)
Sets the properties of one of the actions this text area owns. |
void |
setBackground(Color bg)
Sets the background color of this text editor. |
void |
setBackgroundImage(Image image)
Sets this image as the background image. |
void |
setBackgroundObject(Object newBackground)
Makes the background into this Object . |
void |
setCaret(Caret caret)
This method is overridden to make sure that instances of RTextArea only use ConfigurableCaret s. |
void |
setCaretStyle(int mode,
int style)
Sets the style of caret used when in insert or overwrite mode. |
void |
setCurrentLineHighlightColor(Color color)
Sets the color to use to highlight the current line. |
void |
setDocument(Document document)
Sets the document used by this text area. |
void |
setFadeCurrentLineHighlight(boolean fade)
Sets whether the current line highlight should have a "fade" effect. |
void |
setFont(Font font)
Sets the font for this text area. |
void |
setHighlightCurrentLine(boolean highlight)
Sets whether or not the current line is highlighted. |
static void |
setIconGroup(IconGroup group)
Sets the path in which to find images to associate with the editor's actions. |
void |
setLineWrap(boolean wrap)
Sets whether or not word wrap is enabled. |
void |
setMarginLineColor(Color color)
Sets the color used to paint the margin line. |
void |
setMarginLineEnabled(boolean enabled)
Enables or disables the margin line. |
void |
setMarginLinePosition(int size)
Sets the number of 'm' widths the margin line is over. |
void |
setMarkAllHighlightColor(Color color)
Sets the color used for "mark all." |
void |
setPopupMenu(JPopupMenu popupMenu)
Sets the popup menu used by this text area. |
void |
setRoundedSelectionEdges(boolean rounded)
Sets whether the edges of selections are rounded in this text area. |
protected void |
setRTextAreaUI(RTextAreaUI ui)
Sets the UI for this RTextArea . |
void |
setTabsEmulated(boolean areEmulated)
Changes whether or not tabs should be emulated with spaces (i.e., soft tabs). |
void |
setTabSize(int size)
Workaround, since in JDK1.4 it appears that setTabSize()
doesn't work for a JTextArea unless you use the constructor
specifying the number of rows and columns... |
void |
setTextMode(int mode)
Sets the text mode for this editor pane. |
void |
setToolTipSupplier(ToolTipSupplier supplier)
Sets the tool tip supplier. |
void |
setUI(TextUI ui)
Sets the UI used by this text area. |
void |
undoLastAction()
Attempt to undo an "action" done in this text area. |
protected void |
updateMarginLineX()
This is here so subclasses such as RSyntaxTextArea that
have multiple fonts can define exactly what it means, for example, for
the margin line to be "80 characters" over. |
int |
yForLineContaining(int offs)
Returns the y-coordinate of the line containing an offset. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final int INSERT_MODE
setCaretStyle(int, int)
,
Constant Field Valuespublic static final int OVERWRITE_MODE
setCaretStyle(int, int)
,
Constant Field Valuespublic static final String MARK_ALL_COLOR_PROPERTY
public static final int COPY_ACTION
public static final int CUT_ACTION
public static final int DELETE_ACTION
public static final int PASTE_ACTION
public static final int REDO_ACTION
public static final int SELECT_ALL_ACTION
public static final int UNDO_ACTION
public static final String BACKGROUND_IMAGE_PROPERTY
public static final String CURRENT_LINE_HIGHLIGHT_COLOR_PROPERTY
public static final String CURRENT_LINE_HIGHLIGHT_FADE_PROPERTY
public static final String HIGHLIGHT_CURRENT_LINE_PROPERTY
public static final String ROUNDED_SELECTION_PROPERTY
Constructor Detail |
---|
public RTextArea()
public RTextArea(AbstractDocument doc)
doc
- The document for the editor.public RTextArea(String text)
text
- The initial text to display.public RTextArea(int rows, int cols)
rows
- The number of rows to display.cols
- The number of columns to display.
IllegalArgumentException
- If either rows
or
cols
is negative.public RTextArea(String text, int rows, int cols)
text
- The initial text to display.rows
- The number of rows to display.cols
- The number of columns to display.
IllegalArgumentException
- If either rows
or
cols
is negative.public RTextArea(AbstractDocument doc, String text, int rows, int cols)
doc
- The document for the editor.text
- The initial text to display.rows
- The number of rows to display.cols
- The number of columns to display.
IllegalArgumentException
- If either rows
or
cols
is negative.public RTextArea(int textMode)
RTextArea
.
textMode
- Either INSERT_MODE
or
OVERWRITE_MODE
.Method Detail |
---|
public Object addLineHighlight(int line, Color color) throws BadLocationException
line
- The line to highlight. This is zero-based.color
- The color to highlight the line with.
BadLocationException
- If line
is an invalid line
number.removeLineHighlight(Object)
,
removeAllLineHighlights()
public void beginAtomicEdit()
Using this method should be done with great care. You should probably wrap the call to endAtomicEdit() in a finally block:
textArea.beginAtomicEdit(); try { // Do editing } finally { textArea.endAtomicEdit(); }
endAtomicEdit()
public static void beginRecordingMacro()
endMacroRecording
is
called. If this method is called but the text component is already
recording a macro, nothing happens (but the macro keeps recording).
isRecordingMacro()
,
endRecordingMacro()
public boolean canUndo()
canRedo()
,
undoLastAction()
public boolean canRedo()
canUndo()
,
redoLastAction()
public void clearMarkAllHighlights()
markAll(java.lang.String, boolean, boolean, boolean)
,
getMarkAllHighlightColor()
,
setMarkAllHighlightColor(java.awt.Color)
protected void configurePopupMenu(JPopupMenu popupMenu)
The default implementation does nothing.
popupMenu
- The popup menu. This will never be null
.createPopupMenu()
,
setPopupMenu(JPopupMenu)
protected org.fife.ui.rtextarea.RTextAreaBase.RTAMouseListener createMouseListener()
RTextArea
s.
protected JPopupMenu createPopupMenu()
setPopupMenu(JPopupMenu)
,
configurePopupMenu(JPopupMenu)
protected RTextAreaUI createRTextAreaUI()
public void discardAllEdits()
public void endAtomicEdit()
beginAtomicEdit()
public static void endRecordingMacro()
isRecordingMacro()
,
beginRecordingMacro()
protected void fireCaretUpdate(CaretEvent e)
fireCaretUpdate
in class JTextComponent
e
- The caret event.public static RecordableTextAction getAction(int action)
RTextArea
s, so that icons stay
synchronized and you don't have to worry about enabling/disabling them
yourself.
Keep in mind that these actions are shared across all instances of
RTextArea
, so a change to any action returned by this
method is global across all RTextArea
editors in your
application.
action
- The action to retrieve, such as CUT_ACTION
.
If the action name is invalid, null
is returned.
null
if an invalid action is
requested.public static Macro getCurrentMacro()
RTextArea
.
Since macros are shared, all RTextArea
s in the currently-
running application are using this macro.
null
if no macro has been
recorded/loaded.loadMacro(Macro)
public static final Color getDefaultMarkAllHighlightColor()
getMarkAllHighlightColor()
,
setMarkAllHighlightColor(Color)
public static IconGroup getIconGroup()
setIconGroup(IconGroup)
public Color getMarkAllHighlightColor()
setMarkAllHighlightColor(Color)
public int getMaxAscent()
RTextArea
, this is simply the
ascent of the current font.This value could be useful, for example, to implement a line-numbering scheme.
public JPopupMenu getPopupMenu()
createPopupMenu()
,
setPopupMenu(JPopupMenu)
public final int getTextMode()
INSERT_MODE
or OVERWRITE_MODE
.setTextMode(int)
public ToolTipSupplier getToolTipSupplier()
null
if one isn't
installed.setToolTipSupplier(ToolTipSupplier)
public String getToolTipText(MouseEvent e)
ToolTipSupplier
; if there is one installed, it is queried for
tool tip text before using the super class's implementation of this
method.
getToolTipText
in class JTextComponent
e
- The mouse event.
null
if none.getToolTipSupplier()
,
setToolTipSupplier(ToolTipSupplier)
protected void handleReplaceSelection(String content)
content
- The content to add.public static boolean isRecordingMacro()
beginRecordingMacro()
,
endRecordingMacro()
public static void loadMacro(Macro macro)
RTextArea
s in the current
application.
macro
- The macro to load.getCurrentMacro()
public int markAll(String toMark, boolean matchCase, boolean wholeWord, boolean regex)
toMark
- The text to mark.matchCase
- Whether the match should be case-sensitive.wholeWord
- Whether the matches should be surrounded by spaces
or tabs.regex
- Whether toMark
is a Java regular expression.
clearMarkAllHighlights()
,
getMarkAllHighlightColor()
,
setMarkAllHighlightColor(java.awt.Color)
public void paste()
paste
in class JTextComponent
public void playbackLastMacro()
public int print(Graphics g, PageFormat pageFormat, int pageIndex)
print
in interface Printable
g
- The context into which the page is drawn.pageFormat
- The size and orientation of the page being drawn.pageIndex
- The zero based index of the page to be drawn.public void read(Reader in, Object desc) throws IOException
Document
, thus requiring us to re-attach our Undo
manager. With this version we just replace the text.
read
in class JTextComponent
IOException
public void redoLastAction()
undoLastAction()
public void removeAllLineHighlights()
removeLineHighlight(Object)
public void removeLineHighlight(Object tag)
tag
- The tag of the line highlight to remove.removeAllLineHighlights()
,
addLineHighlight(int, Color)
public void replaceRange(String str, int start, int end)
This method is thread safe, although most Swing methods are not.
This method is overridden so that our Undo manager remembers it as a
single operation (it has trouble with this, especially for
RSyntaxTextArea
and the "auto-indent" feature).
replaceRange
in class JTextArea
str
- the text to use as the replacementstart
- the start position >= 0end
- the end position >= start
IllegalArgumentException
- if part of the range is an
invalid position in the modelJTextArea.insert(String, int)
,
replaceRange(String, int, int)
public void replaceSelection(String text)
JTextComponent
's
replaceSelection
, so that if textMode
is
OVERWRITE_MODE
, it actually overwrites.
replaceSelection
in class JTextComponent
text
- The content to replace the selection with.public static void setActionProperties(int action, String name, char mnemonic, KeyStroke accelerator)
action
- The action to modify; for example, CUT_ACTION
.name
- The new name for the action.mnemonic
- The new mnemonic for the action.accelerator
- The new accelerator key for the action.public static void setActionProperties(int action, String name, Integer mnemonic, KeyStroke accelerator)
action
- The action to modify; for example, CUT_ACTION
.name
- The new name for the action.mnemonic
- The new mnemonic for the action.accelerator
- The new accelerator key for the action.public void setCaret(Caret caret)
RTextArea
only use ConfigurableCaret
s.
To set the style of caret (vertical line, block, etc.) used for
insert or overwrite mode, use setCaretStyle(int, int)
.
setCaret
in class JTextComponent
caret
- The caret to use. If this is not an instance of
ConfigurableCaret
, an exception is thrown.
IllegalArgumentException
- If the specified caret is not an
ConfigurableCaret
.setCaretStyle(int, int)
public void setCaretStyle(int mode, int style)
mode
- Either INSERT_MODE
or OVERWRITE_MODE
.style
- The style for the caret (such as
ConfigurableCaret.VERTICAL_LINE_STYLE
).ConfigurableCaret
public void setDocument(Document document)
setDocument
in class JTextComponent
document
- The new document to use.
IllegalArgumentException
- If the document is not an instance of
AbstractDocument
.public static void setIconGroup(IconGroup group)
group
- The icon group to load.getIconGroup()
public void setMarkAllHighlightColor(Color color)
MARK_ALL_COLOR_PROPERTY
.
color
- The color to use for "mark all."getMarkAllHighlightColor()
public void setPopupMenu(JPopupMenu popupMenu)
popupMenu
- The popup menu. If this is null
, no
popup menu will be displayed.getPopupMenu()
public void setRoundedSelectionEdges(boolean rounded)
ROUNDED_SELECTION_PROPERTY
.
rounded
- Whether selection edges should be rounded.getRoundedSelectionEdges()
public void setTextMode(int mode)
mode
- Either INSERT_MODE
or OVERWRITE_MODE
.public void setToolTipSupplier(ToolTipSupplier supplier)
supplier
- The new tool tip supplier, or null
if
there is to be no supplier.getToolTipSupplier()
public final void setUI(TextUI ui)
RTextArea
is independent of the Java Look and Feel, and so
this method does not change the text area itself. Subclasses (such as
RSyntaxTextArea
can call setRTextAreaUI
if
they wish to install a new UI.
setUI
in class JTextComponent
ui
- This parameter is ignored.public void undoLastAction()
redoLastAction()
protected void addCurrentLineHighlightListeners()
public void convertSpacesToTabs()
convertTabsToSpaces()
,
getTabsEmulated()
,
setTabsEmulated(boolean)
public void convertTabsToSpaces()
convertSpacesToTabs()
,
getTabsEmulated()
,
setTabsEmulated(boolean)
protected void forceCurrentLineHighlightRepaint()
RSyntaxTextArea
.
public final Color getBackground()
java.awt.Color
used as the background color for
this text area. If a java.awt.Image
image is currently
being used instead, null
is returned.
getBackground
in class Component
null
if an image
is currently the background.public final Image getBackgroundImage()
java.awt.Color
and
not a java.awt.Image
, then null
is returned.
java.awt.Image
used for the background, or
null
if the background is not an image.setBackgroundImage(java.awt.Image)
public final Object getBackgroundObject()
Object
representing the background for all
documents in this tabbed pane; either a java.awt.Color
or a
java.lang.Image
containing the image used as the background
for this text area.
Object
used for the background.setBackgroundObject(Object newBackground)
public final int getCaretLineNumber()
public final int getCaretOffsetFromLineStart()
public Color getCurrentLineHighlightColor()
getHighlightCurrentLine()
,
setHighlightCurrentLine(boolean)
,
setCurrentLineHighlightColor(java.awt.Color)
public static final Color getDefaultCaretColor()
public static final Color getDefaultCurrentLineHighlightColor()
public static final Font getDefaultFont()
public static final Color getDefaultForeground()
public static final Color getDefaultMarginLineColor()
getMarginLineColor()
,
setMarginLineColor(Color)
public static final int getDefaultMarginLinePosition()
getMarginLinePosition()
,
setMarginLinePosition(int)
public static final int getDefaultTabSize()
public boolean getFadeCurrentLineHighlight()
setFadeCurrentLineHighlight(boolean)
public boolean getHighlightCurrentLine()
setHighlightCurrentLine(boolean)
,
getCurrentLineHighlightColor()
,
setCurrentLineHighlightColor(java.awt.Color)
public final int getLineEndOffsetOfCurrentLine()
public int getLineHeight()
public final int getLineStartOffsetOfCurrentLine()
public Color getMarginLineColor()
setMarginLineColor(Color)
public int getMarginLinePixelLocation()
getDefaultMarginLinePosition()
,
setMarginLinePosition(int)
public int getMarginLinePosition()
getDefaultMarginLinePosition()
,
setMarginLinePosition(int)
public boolean getRoundedSelectionEdges()
setRoundedSelectionEdges(boolean)
public boolean getTabsEmulated()
true
if tabs are emulated with spaces;
false
if they aren't.setTabsEmulated(boolean)
public boolean isMarginLineEnabled()
setMarginLineEnabled(boolean)
public static boolean isOSX()
protected void paintComponent(Graphics g)
paintComponent
in class JComponent
g
- The graphics context with which to paint.protected void possiblyUpdateCurrentLineHighlightLocation()
protected void processComponentEvent(ComponentEvent e)
processComponentEvent
in class Component
e
- The component event about to be sent to all registered
ComponentListener
s.public void setBackground(Color bg)
setBackgroundObject(bg)
.
NOTE: the opaque property is set to true
when the
background is set to a color (by this method). When an image is used
for the background, opaque is set to false. This is because
we perform better when setOpaque is true, but if we use an
image for the background when opaque is true, we get on-screen
garbage when the user scrolls via the arrow keys. Thus we
need setOpaque to be false in that case.You never have to change the opaque property yourself; it is always done for you.
setBackground
in class JComponent
bg
- The color to use as the background color.public void setBackgroundImage(Image image)
BACKGROUND_IMAGE_PROPERTY
.
NOTE: the opaque property is set to true
when the
background is set to a color. When an image is used for the
background (by this method), opaque is set to false. This is because
we perform better when setOpaque is true, but if we use an
image for the background when opaque is true, we get on-screen
garbage when the user scrolls via the arrow keys. Thus we
need setOpaque to be false in that case.
You never have to change the opaque property yourself; it is always done for you.
image
- The image to use as this text area's background.getBackgroundImage()
public void setBackgroundObject(Object newBackground)
Object
.
newBackground
- The java.awt.Color
or
java.awt.Image
object. If newBackground
is not either of these, the background is set to plain white.public void setCurrentLineHighlightColor(Color color)
CURRENT_LINE_HIGHLIGHT_COLOR_PROPERTY
.
color
- The color to use to highlight the current line.
NullPointerException
- if color
is null
.getHighlightCurrentLine()
,
setHighlightCurrentLine(boolean)
,
getCurrentLineHighlightColor()
public void setFadeCurrentLineHighlight(boolean fade)
CURRENT_LINE_HIGHLIGHT_FADE_PROPERTY
.
fade
- Whether the fade effect should be enabled.getFadeCurrentLineHighlight()
public void setFont(Font font)
setFont
in class JTextArea
font
- The font to use for this text component.public void setHighlightCurrentLine(boolean highlight)
HIGHLIGHT_CURRENT_LINE_PROPERTY
.
highlight
- Whether or not to highlight the current line.getHighlightCurrentLine()
,
getCurrentLineHighlightColor()
,
setCurrentLineHighlightColor(java.awt.Color)
public void setLineWrap(boolean wrap)
setLineWrap
in class JTextArea
wrap
- Whether or not word wrap should be enabled.public void setMarginLineColor(Color color)
color
- The new margin line color.getDefaultMarginLineColor()
,
getMarginLineColor()
public void setMarginLineEnabled(boolean enabled)
enabled
- Whether or not the margin line should be enabled.isMarginLineEnabled()
public void setMarginLinePosition(int size)
size
- The margin size.
#see #getDefaultMarginLinePositiongetMarginLinePosition()
protected void setRTextAreaUI(RTextAreaUI ui)
RTextArea
. Note that, for instances
of RTextArea
, setUI
only updates the popup
menu; this is because RTextArea
s' look and feels are
independent of the Java Look and Feel. This method is here so
subclasses can set a UI (subclass of RTextAreaUI
) if they
have to.
ui
- The new UI.JTextComponent.setUI(javax.swing.plaf.TextUI)
public void setTabsEmulated(boolean areEmulated)
convertTabsToSpaces()
and convertSpacesToTabs()
.
areEmulated
- Whether or not tabs should be emulated with spaces.convertSpacesToTabs()
,
convertTabsToSpaces()
,
getTabsEmulated()
public void setTabSize(int size)
setTabSize()
doesn't work for a JTextArea
unless you use the constructor
specifying the number of rows and columns...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 the tab size changes.
setTabSize
in class JTextArea
size
- Number of characters to expand to.protected void updateMarginLineX()
RSyntaxTextArea
that
have multiple fonts can define exactly what it means, for example, for
the margin line to be "80 characters" over.
public int yForLineContaining(int offs) throws BadLocationException
The default implementation is equivalent to:
int line = textArea.getLineOfOffset(offs); int startOffs = textArea.getLineStartOffset(line); return modelToView(startOffs).ySubclasses that can calculate this value more quickly than traditional
JTextComponent.modelToView(int)
calls should override this method to do so.
This method may be used when the entire bounding box isn't needed, to
speed up rendering.
offs
- The offset info the document.
-1
if
this text area doesn't yet have a positive size.
BadLocationException
- If offs
isn't a valid offset
into the document.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |