public void changedUpdate(DocumentEvent changes, Shape a, ViewFactory f) { super.changedUpdate(changes, a, f); int pos = changes.getOffset(); if (pos <= getStartOffset() && (pos + changes.getLength()) >= getEndOffset()) { setPropertiesFromAttributes(); } }
/** * Sets the size of the view. This should cause layout of the view along the given axis, if it has * any layout duties. * * @param width the width >= 0 * @param height the height >= 0 */ public void setSize(float width, float height) { updateMetrics(); if ((int) width != getWidth()) { // invalidate the view itself since the childrens // desired widths will be based upon this views width. preferenceChanged(null, true, true); widthChanging = true; } super.setSize(width, height); widthChanging = false; }
/** * Establishes the parent view for this view. This is guaranteed to be called before any other * methods if the parent view is functioning properly. * * <p>This is implemented to forward to the superclass as well as call the {@link * #setPropertiesFromAttributes()} method to set the paragraph properties from the css attributes. * The call is made at this time to ensure the ability to resolve upward through the parents view * attributes. * * @param parent the new parent, or null if the view is being removed from a parent it was * previously added to */ public void setParent(View parent) { super.setParent(parent); if (parent != null) { setPropertiesFromAttributes(); } }
/** * Renders using the given rendering surface and area on that surface. This is implemented to * delegate to the css box painter to paint the border and background prior to the interior. * * @param g the rendering surface to use * @param allocation the allocated region to render into * @see View#paint */ public void paint(Graphics g, Shape allocation) { Rectangle a = (Rectangle) allocation; painter.paint(g, a.x, a.y, a.width, a.height, this); super.paint(g, a); }