You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pivot.apache.org by no...@apache.org on 2011/08/12 16:47:57 UTC
svn commit: r1157139 - /pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/
Author: noelgrandin
Date: Fri Aug 12 14:47:56 2011
New Revision: 1157139
URL: http://svn.apache.org/viewvc?rev=1157139&view=rev
Log:
no need to store textPaneSkin field on every node
Modified:
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkin.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinBlockView.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinBulletedListView.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinDocumentView.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinElementView.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinListItemView.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinListView.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinNodeView.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinNumberedListView.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinParagraphView.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinSpanView.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinTextNodeView.java
pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinVerticalElementView.java
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkin.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkin.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkin.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkin.java Fri Aug 12 14:47:56 2011
@@ -1083,21 +1083,21 @@ public class TextPaneSkin extends Contai
if (node instanceof Document) {
nodeView = new TextPaneSkinDocumentView(this, (Document)node);
} else if (node instanceof Paragraph) {
- nodeView = new TextPaneSkinParagraphView(this, (Paragraph)node);
+ nodeView = new TextPaneSkinParagraphView((Paragraph)node);
} else if (node instanceof TextNode) {
- nodeView = new TextPaneSkinTextNodeView(this, (TextNode)node);
+ nodeView = new TextPaneSkinTextNodeView((TextNode)node);
} else if (node instanceof ImageNode) {
nodeView = new TextPaneSkinImageNodeView((ImageNode)node);
} else if (node instanceof ComponentNode) {
nodeView = new TextPaneSkinComponentNodeView((ComponentNode)node);
} else if (node instanceof TextSpan) {
- nodeView = new TextPaneSkinSpanView(this, (TextSpan)node);
+ nodeView = new TextPaneSkinSpanView((TextSpan)node);
} else if (node instanceof NumberedList) {
- nodeView = new TextPaneSkinNumberedListView(this, (NumberedList)node);
+ nodeView = new TextPaneSkinNumberedListView((NumberedList)node);
} else if (node instanceof BulletedList) {
- nodeView = new TextPaneSkinBulletedListView(this, (BulletedList)node);
+ nodeView = new TextPaneSkinBulletedListView((BulletedList)node);
} else if (node instanceof List.Item) {
- nodeView = new TextPaneSkinListItemView(this, (List.Item)node);
+ nodeView = new TextPaneSkinListItemView((List.Item)node);
} else {
throw new IllegalArgumentException("Unsupported node type: "
+ node.getClass().getName());
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinBlockView.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinBlockView.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinBlockView.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinBlockView.java Fri Aug 12 14:47:56 2011
@@ -23,8 +23,8 @@ import org.apache.pivot.wtk.text.BlockLi
abstract class TextPaneSkinBlockView extends TextPaneSkinElementView implements
BlockListener {
- public TextPaneSkinBlockView(TextPaneSkin textPaneSkin, Block block) {
- super(textPaneSkin, block);
+ public TextPaneSkinBlockView(Block block) {
+ super(block);
}
@Override
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinBulletedListView.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinBulletedListView.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinBulletedListView.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinBulletedListView.java Fri Aug 12 14:47:56 2011
@@ -21,8 +21,8 @@ import org.apache.pivot.wtk.text.Bullete
class TextPaneSkinBulletedListView extends TextPaneSkinListView implements BulletedListListener {
- public TextPaneSkinBulletedListView(TextPaneSkin textPaneSkin, BulletedList bulletedList) {
- super(textPaneSkin, bulletedList);
+ public TextPaneSkinBulletedListView(BulletedList bulletedList) {
+ super(bulletedList);
}
@Override
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinDocumentView.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinDocumentView.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinDocumentView.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinDocumentView.java Fri Aug 12 14:47:56 2011
@@ -23,8 +23,11 @@ import org.apache.pivot.wtk.text.Documen
*/
class TextPaneSkinDocumentView extends TextPaneSkinVerticalElementView {
+ protected final TextPaneSkin textPaneSkin;
+
public TextPaneSkinDocumentView(TextPaneSkin textPaneSkin, Document document) {
- super(textPaneSkin, document);
+ super(document);
+ this.textPaneSkin = textPaneSkin;
}
@Override
@@ -40,4 +43,8 @@ class TextPaneSkinDocumentView extends T
textPaneSkin.invalidateComponent();
}
+ @Override
+ public TextPaneSkin getTextPaneSkin() {
+ return textPaneSkin;
+ }
}
\ No newline at end of file
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinElementView.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinElementView.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinElementView.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinElementView.java Fri Aug 12 14:47:56 2011
@@ -38,13 +38,11 @@ import org.apache.pivot.wtk.text.Node;
abstract class TextPaneSkinElementView extends TextPaneSkinNodeView
implements Sequence<TextPaneSkinNodeView>, Iterable<TextPaneSkinNodeView>, ElementListener {
private ArrayList<TextPaneSkinNodeView> nodeViews = new ArrayList<TextPaneSkinNodeView>();
- protected final TextPaneSkin textPaneSkin;
private int skinX = 0;
private int skinY = 0;
- public TextPaneSkinElementView(TextPaneSkin textPaneSkin, Element element) {
+ public TextPaneSkinElementView(Element element) {
super(element);
- this.textPaneSkin = textPaneSkin;
}
@Override
@@ -56,7 +54,7 @@ abstract class TextPaneSkinElementView e
// Attach child node views
for (Node node : element) {
- add(textPaneSkin.createNodeView(node));
+ add(getTextPaneSkin().createNodeView(node));
}
}
@@ -182,7 +180,7 @@ abstract class TextPaneSkinElementView e
Color styledBackgroundColor = getStyledBackgroundColor();
if (styledBackgroundColor != null) {
// don't paint over the selection background
- Area selection = textPaneSkin.getSelection();
+ Area selection = getTextPaneSkin().getSelection();
if (selection != null) {
Area fillArea = new Area(new Rectangle(nodeViewBounds.x, nodeViewBounds.y, nodeViewBounds.width, nodeViewBounds.height));
selection = selection.createTransformedArea(AffineTransform.getTranslateInstance(-skinX, -skinY));
@@ -265,7 +263,7 @@ abstract class TextPaneSkinElementView e
@Override
public void fontChanged(Element element, Font previousFont) {
// because children may depend on parents for their style information, we need to invalidate the whole tree
- textPaneSkin.invalidateNodeViewTree();
+ getTextPaneSkin().invalidateNodeViewTree();
}
@Override
@@ -276,19 +274,19 @@ abstract class TextPaneSkinElementView e
@Override
public void foregroundColorChanged(Element element, Color previousForegroundColor) {
// because children may depend on parents for their style information, we need to invalidate the whole tree
- textPaneSkin.invalidateNodeViewTree();
+ getTextPaneSkin().invalidateNodeViewTree();
}
@Override
public void underlineChanged(Element element) {
// because children may depend on parents for their style information, we need to invalidate the whole tree
- textPaneSkin.invalidateNodeViewTree();
+ getTextPaneSkin().invalidateNodeViewTree();
}
@Override
public void strikethroughChanged(Element element) {
// because children may depend on parents for their style information, we need to invalidate the whole tree
- textPaneSkin.invalidateNodeViewTree();
+ getTextPaneSkin().invalidateNodeViewTree();
}
@Override
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinListItemView.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinListItemView.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinListItemView.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinListItemView.java Fri Aug 12 14:47:56 2011
@@ -26,8 +26,8 @@ class TextPaneSkinListItemView extends T
private TextNode indexTextNode;
private TextPaneSkinTextNodeView indexTextNodeView;
- public TextPaneSkinListItemView(TextPaneSkin textPaneSkin, org.apache.pivot.wtk.text.List.Item listItem) {
- super(textPaneSkin, listItem);
+ public TextPaneSkinListItemView(org.apache.pivot.wtk.text.List.Item listItem) {
+ super(listItem);
this.indexTextNode = new TextNode("");
}
@@ -37,7 +37,7 @@ class TextPaneSkinListItemView extends T
super.attach();
// add an extra TextNodeView to render the index text
- indexTextNodeView = new TextPaneSkinTextNodeView(textPaneSkin, indexTextNode);
+ indexTextNodeView = new TextPaneSkinTextNodeView(indexTextNode);
indexTextNodeView.setLocation(0, 0);
insert(indexTextNodeView, 0);
}
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinListView.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinListView.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinListView.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinListView.java Fri Aug 12 14:47:56 2011
@@ -22,8 +22,8 @@ class TextPaneSkinListView extends TextP
protected int maxIndexTextWidth;
- public TextPaneSkinListView(TextPaneSkin textPaneSkin, List list) {
- super(textPaneSkin, list);
+ public TextPaneSkinListView(List list) {
+ super(list);
}
public int getMaxIndexTextWidth() {
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinNodeView.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinNodeView.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinNodeView.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinNodeView.java Fri Aug 12 14:47:56 2011
@@ -58,6 +58,10 @@ abstract class TextPaneSkinNodeView impl
this.parent = parent;
}
+ protected TextPaneSkin getTextPaneSkin() {
+ return getParent().getTextPaneSkin();
+ }
+
protected void attach() {
node.getNodeListeners().add(this);
}
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinNumberedListView.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinNumberedListView.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinNumberedListView.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinNumberedListView.java Fri Aug 12 14:47:56 2011
@@ -68,8 +68,8 @@ class TextPaneSkinNumberedListView exten
return (char)('A' + n - 1) + "";
}
- public TextPaneSkinNumberedListView(TextPaneSkin textPaneSkin, NumberedList numberedList) {
- super(textPaneSkin, numberedList);
+ public TextPaneSkinNumberedListView(NumberedList numberedList) {
+ super(numberedList);
}
@Override
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinParagraphView.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinParagraphView.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinParagraphView.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinParagraphView.java Fri Aug 12 14:47:56 2011
@@ -53,8 +53,8 @@ class TextPaneSkinParagraphView extends
private ArrayList<Row> rows = null;
private Bounds terminatorBounds = new Bounds(0, 0, 0, 0);
- public TextPaneSkinParagraphView(TextPaneSkin textPaneSkin, Paragraph paragraph) {
- super(textPaneSkin, paragraph);
+ public TextPaneSkinParagraphView(Paragraph paragraph) {
+ super(paragraph);
}
@Override
@@ -127,7 +127,7 @@ class TextPaneSkinParagraphView extends
// Recalculate terminator bounds
FontRenderContext fontRenderContext = Platform.getFontRenderContext();
- LineMetrics lm = textPaneSkin.getFont().getLineMetrics("", 0, 0, fontRenderContext);
+ LineMetrics lm = getTextPaneSkin().getFont().getLineMetrics("", 0, 0, fontRenderContext);
int terminatorHeight = (int)Math.ceil(lm.getHeight());
int terminatorY;
@@ -212,7 +212,7 @@ class TextPaneSkinParagraphView extends
// Recalculate terminator bounds
FontRenderContext fontRenderContext = Platform.getFontRenderContext();
- LineMetrics lm = textPaneSkin.getFont().getLineMetrics("", 0, 0, fontRenderContext);
+ LineMetrics lm = getTextPaneSkin().getFont().getLineMetrics("", 0, 0, fontRenderContext);
int terminatorHeight = (int)Math.ceil(lm.getHeight());
int terminatorY;
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinSpanView.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinSpanView.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinSpanView.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinSpanView.java Fri Aug 12 14:47:56 2011
@@ -28,8 +28,8 @@ import org.apache.pivot.wtk.text.TextSpa
*/
class TextPaneSkinSpanView extends TextPaneSkinElementView {
- public TextPaneSkinSpanView(TextPaneSkin textPaneSkin, TextSpan span) {
- super(textPaneSkin, span);
+ public TextPaneSkinSpanView(TextSpan span) {
+ super(span);
}
@Override
@@ -136,7 +136,7 @@ class TextPaneSkinSpanView extends TextP
super.nodeInserted(element, index);
TextSpan span = (TextSpan)getNode();
- insert(textPaneSkin.createNodeView(span.get(index)), index);
+ insert(getTextPaneSkin().createNodeView(span.get(index)), index);
}
@Override
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinTextNodeView.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinTextNodeView.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinTextNodeView.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinTextNodeView.java Fri Aug 12 14:47:56 2011
@@ -42,20 +42,17 @@ import org.apache.pivot.wtk.text.TextNod
* Text node view.
*/
class TextPaneSkinTextNodeView extends TextPaneSkinNodeView implements TextNodeListener {
- private final TextPaneSkin textPaneSkin;
-
private int start;
private int length = 0;
private GlyphVector glyphVector = null;
private TextPaneSkinTextNodeView next = null;
- public TextPaneSkinTextNodeView(TextPaneSkin textPaneSkin, TextNode textNode) {
- this(textPaneSkin, textNode, 0);
+ public TextPaneSkinTextNodeView(TextNode textNode) {
+ this(textNode, 0);
}
- public TextPaneSkinTextNodeView(TextPaneSkin textPaneSkin, TextNode textNode, int start) {
+ public TextPaneSkinTextNodeView(TextNode textNode, int start) {
super(textNode);
- this.textPaneSkin = textPaneSkin;
this.start = start;
}
@@ -110,7 +107,7 @@ class TextPaneSkinTextNodeView extends T
}
int end;
- if (textPaneSkin.getWrapText()) {
+ if (getTextPaneSkin().getWrapText()) {
if (textNode.getCharacterCount() == 0) {
end = start;
} else {
@@ -136,7 +133,7 @@ class TextPaneSkinTextNodeView extends T
if (end < ci.getEndIndex()) {
length = end - start;
- next = new TextPaneSkinTextNodeView(textPaneSkin, textNode, end);
+ next = new TextPaneSkinTextNodeView(textNode, end);
next.setParent(getParent());
} else {
length = ci.getEndIndex() - start;
@@ -175,7 +172,7 @@ class TextPaneSkinTextNodeView extends T
}
int end;
- if (textPaneSkin.getWrapText()) {
+ if (getTextPaneSkin().getWrapText()) {
if (textNode.getCharacterCount() == 0) {
end = start;
} else {
@@ -219,7 +216,7 @@ class TextPaneSkinTextNodeView extends T
@Override
public void paint(Graphics2D graphics) {
if (glyphVector != null) {
- TextPane textPane = (TextPane)textPaneSkin.getComponent();
+ TextPane textPane = (TextPane)getTextPaneSkin().getComponent();
FontRenderContext fontRenderContext = Platform.getFontRenderContext();
LineMetrics lm = getEffectiveFont().getLineMetrics("", fontRenderContext);
@@ -282,14 +279,14 @@ class TextPaneSkinTextNodeView extends T
// Paint the selection
Color selectionColor;
if (textPane.isFocused()) {
- selectionColor = textPaneSkin.getSelectionColor();
+ selectionColor = getTextPaneSkin().getSelectionColor();
} else {
- selectionColor = textPaneSkin.getInactiveSelectionColor();
+ selectionColor = getTextPaneSkin().getInactiveSelectionColor();
}
Graphics2D selectedTextGraphics = (Graphics2D)graphics.create();
selectedTextGraphics.setColor(textPane.isFocused() &&
- textPane.isEditable() ? selectionColor : textPaneSkin.getInactiveSelectionColor());
+ textPane.isEditable() ? selectionColor : getTextPaneSkin().getInactiveSelectionColor());
selectedTextGraphics.clip(selection.getBounds());
selectedTextGraphics.drawGlyphVector(glyphVector, 0, ascent);
if (underline) {
@@ -373,7 +370,7 @@ class TextPaneSkinTextNodeView extends T
}
// if we find nothing, use the default font
if (element == null) {
- font = textPaneSkin.getFont();
+ font = getTextPaneSkin().getFont();
}
return font;
}
@@ -392,7 +389,7 @@ class TextPaneSkinTextNodeView extends T
}
// if we find nothing, use the default color
if (element == null) {
- foregroundColor = textPaneSkin.getColor();
+ foregroundColor = getTextPaneSkin().getColor();
}
return foregroundColor;
}
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinVerticalElementView.java
URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinVerticalElementView.java?rev=1157139&r1=1157138&r2=1157139&view=diff
==============================================================================
--- pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinVerticalElementView.java (original)
+++ pivot/trunk/wtk/src/org/apache/pivot/wtk/skin/TextPaneSkinVerticalElementView.java Fri Aug 12 14:47:56 2011
@@ -28,8 +28,8 @@ import org.apache.pivot.wtk.text.Node;
*/
abstract class TextPaneSkinVerticalElementView extends TextPaneSkinElementView {
- public TextPaneSkinVerticalElementView(TextPaneSkin textPaneSkin, Element element) {
- super(textPaneSkin, element);
+ public TextPaneSkinVerticalElementView(Element element) {
+ super(element);
}
@Override
@@ -207,7 +207,7 @@ abstract class TextPaneSkinVerticalEleme
public void nodeInserted(Element element, int index) {
super.nodeInserted(element, index);
- insert(textPaneSkin.createNodeView(element.get(index)), index);
+ insert(getTextPaneSkin().createNodeView(element.get(index)), index);
}
@Override