/* * Created on Jan 21, 2006 * */ package net.atlanticbb.tantlinger.ui.text; import java.awt.Container; import java.awt.Graphics; import java.awt.Shape; import javax.swing.event.DocumentEvent; import javax.swing.text.AttributeSet; import javax.swing.text.BadLocationException; import javax.swing.text.Document; import javax.swing.text.Element; import javax.swing.text.View; import javax.swing.text.ViewFactory; import javax.swing.text.Position.Bias; /** * This class is essentially a wrapper for another view. The paint method * is left abstract so that custom drawing can be done. * * This is useful for extending the functionallity of non-public Swing views * such as javax.swing.text.html.TableView * * @author Bob Tantlinger */ public abstract class DelegateView extends View { protected View delegate; public DelegateView(View delegate) { super(delegate.getElement()); this.delegate = delegate; } /* (non-Javadoc) * @see javax.swing.text.View#append(javax.swing.text.View) */ public void append(View v) { delegate.append(v); } /* (non-Javadoc) * @see javax.swing.text.View#breakView(int, int, float, float) */ public View breakView(int axis, int offset, float pos, float len) { return delegate.breakView(axis, offset, pos, len); } /* (non-Javadoc) * @see javax.swing.text.View#changedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory) */ public void changedUpdate(DocumentEvent e, Shape a, ViewFactory f) { delegate.changedUpdate(e, a, f); } /* (non-Javadoc) * @see javax.swing.text.View#createFragment(int, int) */ public View createFragment(int p0, int p1) { return delegate.createFragment(p0, p1); } /* (non-Javadoc) * @see java.lang.Object#equals(java.lang.Object) */ public boolean equals(Object obj) { return delegate.equals(obj); } /* (non-Javadoc) * @see javax.swing.text.View#getAlignment(int) */ public float getAlignment(int axis) { return delegate.getAlignment(axis); } /* (non-Javadoc) * @see javax.swing.text.View#getAttributes() */ public AttributeSet getAttributes() { return delegate.getAttributes(); } /* (non-Javadoc) * @see javax.swing.text.View#getBreakWeight(int, float, float) */ public int getBreakWeight(int axis, float pos, float len) { return delegate.getBreakWeight(axis, pos, len); } /* (non-Javadoc) * @see javax.swing.text.View#getChildAllocation(int, java.awt.Shape) */ public Shape getChildAllocation(int index, Shape a) { return delegate.getChildAllocation(index, a); } /* (non-Javadoc) * @see javax.swing.text.View#getContainer() */ public Container getContainer() { return delegate.getContainer(); } /* (non-Javadoc) * @see javax.swing.text.View#getDocument() */ public Document getDocument() { return delegate.getDocument(); } /* (non-Javadoc) * @see javax.swing.text.View#getElement() */ public Element getElement() { return delegate.getElement(); } /* (non-Javadoc) * @see javax.swing.text.View#getEndOffset() */ public int getEndOffset() { return delegate.getEndOffset(); } /* (non-Javadoc) * @see javax.swing.text.View#getGraphics() */ public Graphics getGraphics() { return delegate.getGraphics(); } /* (non-Javadoc) * @see javax.swing.text.View#getMaximumSpan(int) */ public float getMaximumSpan(int axis) { return delegate.getMaximumSpan(axis); } /* (non-Javadoc) * @see javax.swing.text.View#getMinimumSpan(int) */ public float getMinimumSpan(int axis) { return delegate.getMinimumSpan(axis); } /* (non-Javadoc) * @see javax.swing.text.View#getNextVisualPositionFrom(int, javax.swing.text.Position.Bias, java.awt.Shape, int, javax.swing.text.Position.Bias[]) */ public int getNextVisualPositionFrom(int pos, Bias b, Shape a, int direction, Bias[] biasRet) throws BadLocationException { return delegate.getNextVisualPositionFrom(pos, b, a, direction, biasRet); } /* (non-Javadoc) * @see javax.swing.text.View#getParent() */ public View getParent() { return delegate.getParent(); } /* (non-Javadoc) * @see javax.swing.text.View#getPreferredSpan(int) */ public float getPreferredSpan(int axis) { return delegate.getPreferredSpan(axis); } /* (non-Javadoc) * @see javax.swing.text.View#getResizeWeight(int) */ public int getResizeWeight(int axis) { return delegate.getResizeWeight(axis); } /* (non-Javadoc) * @see javax.swing.text.View#getStartOffset() */ public int getStartOffset() { return delegate.getStartOffset(); } /* (non-Javadoc) * @see javax.swing.text.View#getToolTipText(float, float, java.awt.Shape) */ public String getToolTipText(float x, float y, Shape allocation) { return delegate.getToolTipText(x, y, allocation); } /* (non-Javadoc) * @see javax.swing.text.View#getView(int) */ public View getView(int n) { return delegate.getView(n); } /* (non-Javadoc) * @see javax.swing.text.View#getViewCount() */ public int getViewCount() { return delegate.getViewCount(); } /* (non-Javadoc) * @see javax.swing.text.View#getViewFactory() */ public ViewFactory getViewFactory() { return delegate.getViewFactory(); } /* (non-Javadoc) * @see javax.swing.text.View#getViewIndex(float, float, java.awt.Shape) */ public int getViewIndex(float x, float y, Shape allocation) { return delegate.getViewIndex(x, y, allocation); } /* (non-Javadoc) * @see javax.swing.text.View#getViewIndex(int, javax.swing.text.Position.Bias) */ public int getViewIndex(int pos, Bias b) { return delegate.getViewIndex(pos, b); } /* (non-Javadoc) * @see java.lang.Object#hashCode() */ public int hashCode() { return delegate.hashCode(); } /* (non-Javadoc) * @see javax.swing.text.View#insert(int, javax.swing.text.View) */ public void insert(int offs, View v) { delegate.insert(offs, v); } /* (non-Javadoc) * @see javax.swing.text.View#insertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory) */ public void insertUpdate(DocumentEvent e, Shape a, ViewFactory f) { delegate.insertUpdate(e, a, f); } /* (non-Javadoc) * @see javax.swing.text.View#isVisible() */ public boolean isVisible() { return delegate.isVisible(); } /* (non-Javadoc) * @see javax.swing.text.View#modelToView(int, javax.swing.text.Position.Bias, int, javax.swing.text.Position.Bias, java.awt.Shape) */ public Shape modelToView(int p0, Bias b0, int p1, Bias b1, Shape a) throws BadLocationException { return delegate.modelToView(p0, b0, p1, b1, a); } /* (non-Javadoc) * @see javax.swing.text.View#modelToView(int, java.awt.Shape, javax.swing.text.Position.Bias) */ public Shape modelToView(int pos, Shape a, Bias b) throws BadLocationException { return delegate.modelToView(pos, a, b); } /* (non-Javadoc) * @see javax.swing.text.View#modelToView(int, java.awt.Shape) */ public Shape modelToView(int pos, Shape a) throws BadLocationException { return delegate.modelToView(pos, a); } /* (non-Javadoc) * @see javax.swing.text.View#preferenceChanged(javax.swing.text.View, boolean, boolean) */ public void preferenceChanged(View child, boolean width, boolean height) { delegate.preferenceChanged(child, width, height); } /* (non-Javadoc) * @see javax.swing.text.View#remove(int) */ public void remove(int i) { delegate.remove(i); } /* (non-Javadoc) * @see javax.swing.text.View#removeAll() */ public void removeAll() { delegate.removeAll(); } /* (non-Javadoc) * @see javax.swing.text.View#removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory) */ public void removeUpdate(DocumentEvent e, Shape a, ViewFactory f) { delegate.removeUpdate(e, a, f); } /* (non-Javadoc) * @see javax.swing.text.View#replace(int, int, javax.swing.text.View[]) */ public void replace(int offset, int length, View[] views) { delegate.replace(offset, length, views); } /* (non-Javadoc) * @see javax.swing.text.View#setParent(javax.swing.text.View) */ public void setParent(View parent) { delegate.setParent(parent); } /* (non-Javadoc) * @see javax.swing.text.View#setSize(float, float) */ public void setSize(float width, float height) { delegate.setSize(width, height); } /* (non-Javadoc) * @see java.lang.Object#toString() */ public String toString() { return delegate.toString(); } /* (non-Javadoc) * @see javax.swing.text.View#viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[]) */ public int viewToModel(float x, float y, Shape a, Bias[] biasReturn) { return delegate.viewToModel(x, y, a, biasReturn); } /* (non-Javadoc) * @see javax.swing.text.View#viewToModel(float, float, java.awt.Shape) */ public int viewToModel(float x, float y, Shape a) { return delegate.viewToModel(x, y, a); } }