| java.lang.Object javax.swing.text.View javax.swing.text.PlainView bluej.editor.moe.BlueJSyntaxView
All known Subclasses: bluej.editor.moe.MoeSyntaxView,
BlueJSyntaxView | abstract public class BlueJSyntaxView extends PlainView (Code) | | A Swing view implementation that colorizes lines of a
SyntaxDocument using a TokenMarker.
This class should not be used directly; a SyntaxEditorKit
should be used instead.
author: Slava Pestov author: Bruce Quig author: Michael Kolling version: $Id: BlueJSyntaxView.java 5366 2007-11-01 05:27:26Z davmac $ |
Method Summary | |
protected void | drawLine(int lineIndex, Graphics g, int x, int y) Paints the specified line. | protected void | drawLineNumber(Graphics g, int lineNumber, int x, int y) | protected Color | getDefaultColor() | final protected boolean | hasTag(Element line, String tag) Check whether a given line is tagged with a given tag. | public Rectangle | lineToRect(Shape a, int line) | public Shape | modelToView(int pos, Shape a, Position.Bias b) Provides a mapping from the document model coordinate space
to the coordinate space of the view mapped to it. | public float | nextTabStop(float x, int tabOffset) Returns the next tab stop position after a given reference position.
This implementation does not support things like centering so it
ignores the tabOffset argument.
Parameters: x - the current position >= 0 Parameters: tabOffset - the position within the text streamthat the tab occurred at >= 0. | protected void | paintSyntaxLine(Segment line, int lineIndex, int x, int y, Graphics g, SyntaxDocument document, TokenMarker tokenMarker, Color def) paints a line with syntax highlighting,
redefined from DefaultSyntaxDocument. | abstract public void | paintTaggedLine(Segment line, int lineIndex, Graphics g, int x, int y, SyntaxDocument document, TokenMarker tokenMarker, Color def, Element lineElement) Draw a line for this view, including the tag mark. | public int | viewToModel(float fx, float fy, Shape a, Position.Bias[] bias) Provides a mapping from the view coordinate space to the logical
coordinate space of the model. |
BREAKPOINT_OFFSET | final protected static int BREAKPOINT_OFFSET(Code) | | |
TAG_WIDTH | final public static short TAG_WIDTH(Code) | | width of tag area for setting breakpoints
|
BlueJSyntaxView | public BlueJSyntaxView(Element elem)(Code) | | Creates a new BlueJSyntaxView.
Parameters: elem - The element |
drawLine | protected void drawLine(int lineIndex, Graphics g, int x, int y)(Code) | | Paints the specified line.
This method performs the following:
- Gets the token marker and color table from the current document,
typecast to a SyntaxDocument.
- Tokenizes the required line by calling the
markTokens() method of the token marker.
- Paints each token, obtaining the color by looking up the
the Token.id value in the color table.
If either the document doesn't implement
SyntaxDocument, or if the returned token marker is
null, the line will be painted with no colorization.
Currently, we assume that the whole document uses the same font.
To support font changes, some of the code from "initilise" needs
to be here to be done repeatedly for each line.
Parameters: lineIndex - The line number Parameters: g - The graphics context Parameters: x - The x co-ordinate where the line should be painted Parameters: y - The y co-ordinate where the line should be painted |
drawLineNumber | protected void drawLineNumber(Graphics g, int lineNumber, int x, int y)(Code) | | Draw the line number in front of the line
|
getDefaultColor | protected Color getDefaultColor()(Code) | | Return default foreground colour
|
hasTag | final protected boolean hasTag(Element line, String tag)(Code) | | Check whether a given line is tagged with a given tag.
Parameters: line - The line to check Parameters: tag - The name of the tag True, if the tag is set |
lineToRect | public Rectangle lineToRect(Shape a, int line)(Code) | | redefined from PlainView private method to allow for redefinition of
modelToView method
|
modelToView | public Shape modelToView(int pos, Shape a, Position.Bias b) throws BadLocationException(Code) | | Provides a mapping from the document model coordinate space
to the coordinate space of the view mapped to it. This is a
redefined method from PlainView that adds an offset for the
view to allow for a breakpoint area in the associated editor.
Parameters: pos - the position to convert >= 0 Parameters: a - the allocated region to render into the bounding box of the given position exception: BadLocationException - if the given position does notrepresent a valid location in the associated document See Also: View.modelToView |
nextTabStop | public float nextTabStop(float x, int tabOffset)(Code) | | Returns the next tab stop position after a given reference position.
This implementation does not support things like centering so it
ignores the tabOffset argument.
Parameters: x - the current position >= 0 Parameters: tabOffset - the position within the text streamthat the tab occurred at >= 0. the tab stop, measured in points >= 0 |
viewToModel | public int viewToModel(float fx, float fy, Shape a, Position.Bias[] bias)(Code) | | Provides a mapping from the view coordinate space to the logical
coordinate space of the model.
Parameters: fx - the X coordinate >= 0 Parameters: fy - the Y coordinate >= 0 Parameters: a - the allocated region to render into the location within the model that best represents thegiven point in the view >= 0 See Also: View.viewToModel |
Methods inherited from javax.swing.text.PlainView | public void changedUpdate(DocumentEvent changes, Shape a, ViewFactory f)(Code)(Java Doc) protected void damageLineRange(int line0, int line1, Shape a, Component host)(Code)(Java Doc) protected void drawLine(int lineIndex, Graphics g, int x, int y)(Code)(Java Doc) protected int drawSelectedText(Graphics g, int x, int y, int p0, int p1) throws BadLocationException(Code)(Java Doc) protected int drawUnselectedText(Graphics g, int x, int y, int p0, int p1) throws BadLocationException(Code)(Java Doc) final protected Segment getLineBuffer()(Code)(Java Doc) public float getPreferredSpan(int axis)(Code)(Java Doc) protected int getTabSize()(Code)(Java Doc) public void insertUpdate(DocumentEvent changes, Shape a, ViewFactory f)(Code)(Java Doc) protected Rectangle lineToRect(Shape a, int line)(Code)(Java Doc) public Shape modelToView(int pos, Shape a, Position.Bias b) throws BadLocationException(Code)(Java Doc) public float nextTabStop(float x, int tabOffset)(Code)(Java Doc) public void paint(Graphics g, Shape a)(Code)(Java Doc) public void removeUpdate(DocumentEvent changes, Shape a, ViewFactory f)(Code)(Java Doc) public void setSize(float width, float height)(Code)(Java Doc) protected void updateDamage(DocumentEvent changes, Shape a, ViewFactory f)(Code)(Java Doc) protected void updateMetrics()(Code)(Java Doc) public int viewToModel(float fx, float fy, Shape a, Position.Bias[] bias)(Code)(Java Doc)
|
Methods inherited from javax.swing.text.View | public void append(View v)(Code)(Java Doc) public View breakView(int axis, int offset, float pos, float len)(Code)(Java Doc) public void changedUpdate(DocumentEvent e, Shape a, ViewFactory f)(Code)(Java Doc) public View createFragment(int p0, int p1)(Code)(Java Doc) protected void forwardUpdate(DocumentEvent.ElementChange ec, DocumentEvent e, Shape a, ViewFactory f)(Code)(Java Doc) protected void forwardUpdateToView(View v, DocumentEvent e, Shape a, ViewFactory f)(Code)(Java Doc) public float getAlignment(int axis)(Code)(Java Doc) public AttributeSet getAttributes()(Code)(Java Doc) public int getBreakWeight(int axis, float pos, float len)(Code)(Java Doc) public Shape getChildAllocation(int index, Shape a)(Code)(Java Doc) public Container getContainer()(Code)(Java Doc) public Document getDocument()(Code)(Java Doc) public Element getElement()(Code)(Java Doc) public int getEndOffset()(Code)(Java Doc) public Graphics getGraphics()(Code)(Java Doc) public float getMaximumSpan(int axis)(Code)(Java Doc) public float getMinimumSpan(int axis)(Code)(Java Doc) public int getNextVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet) throws BadLocationException(Code)(Java Doc) public View getParent()(Code)(Java Doc) abstract public float getPreferredSpan(int axis)(Code)(Java Doc) public int getResizeWeight(int axis)(Code)(Java Doc) public int getStartOffset()(Code)(Java Doc) public String getToolTipText(float x, float y, Shape allocation)(Code)(Java Doc) public View getView(int n)(Code)(Java Doc) public int getViewCount()(Code)(Java Doc) public ViewFactory getViewFactory()(Code)(Java Doc) public int getViewIndex(int pos, Position.Bias b)(Code)(Java Doc) public int getViewIndex(float x, float y, Shape allocation)(Code)(Java Doc) public void insert(int offs, View v)(Code)(Java Doc) public void insertUpdate(DocumentEvent e, Shape a, ViewFactory f)(Code)(Java Doc) public boolean isVisible()(Code)(Java Doc) abstract public Shape modelToView(int pos, Shape a, Position.Bias b) throws BadLocationException(Code)(Java Doc) public Shape modelToView(int p0, Position.Bias b0, int p1, Position.Bias b1, Shape a) throws BadLocationException(Code)(Java Doc) public Shape modelToView(int pos, Shape a) throws BadLocationException(Code)(Java Doc) abstract public void paint(Graphics g, Shape allocation)(Code)(Java Doc) public void preferenceChanged(View child, boolean width, boolean height)(Code)(Java Doc) public void remove(int i)(Code)(Java Doc) public void removeAll()(Code)(Java Doc) public void removeUpdate(DocumentEvent e, Shape a, ViewFactory f)(Code)(Java Doc) public void replace(int offset, int length, View[] views)(Code)(Java Doc) public void setParent(View parent)(Code)(Java Doc) public void setSize(float width, float height)(Code)(Java Doc) protected boolean updateChildren(DocumentEvent.ElementChange ec, DocumentEvent e, ViewFactory f)(Code)(Java Doc) protected void updateLayout(DocumentEvent.ElementChange ec, DocumentEvent e, Shape a)(Code)(Java Doc) abstract public int viewToModel(float x, float y, Shape a, Position.Bias[] biasReturn)(Code)(Java Doc) public int viewToModel(float x, float y, Shape a)(Code)(Java Doc)
|
|
|