📄 abstractrenderer.java
字号:
* @param notify notify listeners?
*
* @deprecated This method should no longer be used (as of version 1.0.6).
* It is sufficient to rely on {@link #setSeriesFillPaint(int, Paint,
* boolean)} and {@link #setBaseFillPaint(Paint, boolean)}.
*/
public void setFillPaint(Paint paint, boolean notify) {
this.fillPaint = paint;
if (notify) {
fireChangeEvent();
}
}
/**
* Returns the base fill paint.
*
* @return The paint (never <code>null</code>).
*
* @see #setBaseFillPaint(Paint)
*/
public Paint getBaseFillPaint() {
return this.baseFillPaint;
}
/**
* Sets the base fill paint and sends a {@link RendererChangeEvent} to
* all registered listeners.
*
* @param paint the paint (<code>null</code> not permitted).
*
* @see #getBaseFillPaint()
*/
public void setBaseFillPaint(Paint paint) {
// defer argument checking...
setBaseFillPaint(paint, true);
}
/**
* Sets the base fill paint and, if requested, sends a
* {@link RendererChangeEvent} to all registered listeners.
*
* @param paint the paint (<code>null</code> not permitted).
* @param notify notify listeners?
*
* @see #getBaseFillPaint()
*/
public void setBaseFillPaint(Paint paint, boolean notify) {
if (paint == null) {
throw new IllegalArgumentException("Null 'paint' argument.");
}
this.baseFillPaint = paint;
if (notify) {
fireChangeEvent();
}
}
/**
* Returns the flag that controls whether or not the series fill paint list
* is automatically populated when {@link #lookupSeriesFillPaint(int)} is
* called.
*
* @return A boolean.
*
* @since 1.0.6
*
* @see #setAutoPopulateSeriesFillPaint(boolean)
*/
public boolean getAutoPopulateSeriesFillPaint() {
return this.autoPopulateSeriesFillPaint;
}
/**
* Sets the flag that controls whether or not the series fill paint list is
* automatically populated when {@link #lookupSeriesFillPaint(int)} is
* called.
*
* @param auto the new flag value.
*
* @since 1.0.6
*
* @see #getAutoPopulateSeriesFillPaint()
*/
public void setAutoPopulateSeriesFillPaint(boolean auto) {
this.autoPopulateSeriesFillPaint = auto;
}
// OUTLINE PAINT //////////////////////////////////////////////////////////
/**
* Returns the paint used to outline data items as they are drawn.
* <p>
* The default implementation passes control to the
* {@link #lookupSeriesOutlinePaint} method. You can override this method
* if you require different behaviour.
*
* @param row the row (or series) index (zero-based).
* @param column the column (or category) index (zero-based).
*
* @return The paint (never <code>null</code>).
*/
public Paint getItemOutlinePaint(int row, int column) {
return lookupSeriesOutlinePaint(row);
}
/**
* Returns the paint used to outline an item drawn by the renderer.
*
* @param series the series (zero-based index).
*
* @return The paint (never <code>null</code>).
*
* @since 1.0.6
*/
public Paint lookupSeriesOutlinePaint(int series) {
// return the override, if there is one...
if (this.outlinePaint != null) {
return this.outlinePaint;
}
// otherwise look up the paint table
Paint seriesOutlinePaint = getSeriesOutlinePaint(series);
if (seriesOutlinePaint == null && this.autoPopulateSeriesOutlinePaint) {
DrawingSupplier supplier = getDrawingSupplier();
if (supplier != null) {
seriesOutlinePaint = supplier.getNextOutlinePaint();
setSeriesOutlinePaint(series, seriesOutlinePaint, false);
}
}
if (seriesOutlinePaint == null) {
seriesOutlinePaint = this.baseOutlinePaint;
}
return seriesOutlinePaint;
}
/**
* Returns the paint used to outline an item drawn by the renderer.
*
* @param series the series (zero-based index).
*
* @return The paint (possibly <code>null</code>).
*
* @see #setSeriesOutlinePaint(int, Paint)
*/
public Paint getSeriesOutlinePaint(int series) {
return this.outlinePaintList.getPaint(series);
}
/**
* Sets the paint used for a series outline and sends a
* {@link RendererChangeEvent} to all registered listeners.
*
* @param series the series index (zero-based).
* @param paint the paint (<code>null</code> permitted).
*
* @see #getSeriesOutlinePaint(int)
*/
public void setSeriesOutlinePaint(int series, Paint paint) {
setSeriesOutlinePaint(series, paint, true);
}
/**
* Sets the paint used to draw the outline for a series and, if requested,
* sends a {@link RendererChangeEvent} to all registered listeners.
*
* @param series the series index (zero-based).
* @param paint the paint (<code>null</code> permitted).
* @param notify notify listeners?
*
* @see #getSeriesOutlinePaint(int)
*/
public void setSeriesOutlinePaint(int series, Paint paint, boolean notify) {
this.outlinePaintList.setPaint(series, paint);
if (notify) {
fireChangeEvent();
}
}
/**
* Sets the outline paint for ALL series (optional) and sends a
* {@link RendererChangeEvent} to all registered listeners.
*
* @param paint the paint (<code>null</code> permitted).
*
* @deprecated This method should no longer be used (as of version 1.0.6).
* It is sufficient to rely on {@link #setSeriesOutlinePaint(int,
* Paint)} and {@link #setBaseOutlinePaint(Paint)}.
*/
public void setOutlinePaint(Paint paint) {
setOutlinePaint(paint, true);
}
/**
* Sets the outline paint for ALL series and, if requested, sends a
* {@link RendererChangeEvent} to all registered listeners.
*
* @param paint the paint (<code>null</code> permitted).
* @param notify notify listeners?
*
* @deprecated This method should no longer be used (as of version 1.0.6).
* It is sufficient to rely on {@link #setSeriesOutlinePaint(int,
* Paint, boolean)} and {@link #setBaseOutlinePaint(Paint, boolean)}.
*/
public void setOutlinePaint(Paint paint, boolean notify) {
this.outlinePaint = paint;
if (notify) {
fireChangeEvent();
}
}
/**
* Returns the base outline paint.
*
* @return The paint (never <code>null</code>).
*
* @see #setBaseOutlinePaint(Paint)
*/
public Paint getBaseOutlinePaint() {
return this.baseOutlinePaint;
}
/**
* Sets the base outline paint and sends a {@link RendererChangeEvent} to
* all registered listeners.
*
* @param paint the paint (<code>null</code> not permitted).
*
* @see #getBaseOutlinePaint()
*/
public void setBaseOutlinePaint(Paint paint) {
// defer argument checking...
setBaseOutlinePaint(paint, true);
}
/**
* Sets the base outline paint and, if requested, sends a
* {@link RendererChangeEvent} to all registered listeners.
*
* @param paint the paint (<code>null</code> not permitted).
* @param notify notify listeners?
*
* @see #getBaseOutlinePaint()
*/
public void setBaseOutlinePaint(Paint paint, boolean notify) {
if (paint == null) {
throw new IllegalArgumentException("Null 'paint' argument.");
}
this.baseOutlinePaint = paint;
if (notify) {
fireChangeEvent();
}
}
/**
* Returns the flag that controls whether or not the series outline paint
* list is automatically populated when
* {@link #lookupSeriesOutlinePaint(int)} is called.
*
* @return A boolean.
*
* @since 1.0.6
*
* @see #setAutoPopulateSeriesOutlinePaint(boolean)
*/
public boolean getAutoPopulateSeriesOutlinePaint() {
return this.autoPopulateSeriesOutlinePaint;
}
/**
* Sets the flag that controls whether or not the series outline paint list
* is automatically populated when {@link #lookupSeriesOutlinePaint(int)}
* is called.
*
* @param auto the new flag value.
*
* @since 1.0.6
*
* @see #getAutoPopulateSeriesOutlinePaint()
*/
public void setAutoPopulateSeriesOutlinePaint(boolean auto) {
this.autoPopulateSeriesOutlinePaint = auto;
}
// STROKE
/**
* Returns the stroke used to draw data items.
* <p>
* The default implementation passes control to the getSeriesStroke method.
* You can override this method if you require different behaviour.
*
* @param row the row (or series) index (zero-based).
* @param column the column (or category) index (zero-based).
*
* @return The stroke (never <code>null</code>).
*/
public Stroke getItemStroke(int row, int column) {
return lookupSeriesStroke(row);
}
/**
* Returns the stroke used to draw the items in a series.
*
* @param series the series (zero-based index).
*
* @return The stroke (never <code>null</code>).
*
* @since 1.0.6
*/
public Stroke lookupSeriesStroke(int series) {
// return the override, if there is one...
if (this.stroke != null) {
return this.stroke;
}
// otherwise look up the paint table
Stroke result = getSeriesStroke(series);
if (result == null && this.autoPopulateSeriesStroke) {
DrawingSupplier supplier = getDrawingSupplier();
if (supplier != null) {
result = supplier.getNextStroke();
setSeriesStroke(series, result, false);
}
}
if (result == null) {
result = this.baseStroke;
}
return result;
}
/**
* Sets the stroke for ALL series and sends a {@link RendererChangeEvent}
* to all registered listeners.
*
* @param stroke the stroke (<code>null</code> permitted).
*
* @deprecated This method should no longer be used (as of version 1.0.6).
* It is sufficient to rely on {@link #setSeriesStroke(int, Stroke)}
* and {@link #setBaseStroke(Stroke)}.
*/
public void setStroke(Stroke stroke) {
setStroke(stroke, true);
}
/**
* Sets the stroke for ALL series and, if requested, sends a
* {@link RendererChangeEvent} to all registered listeners.
*
* @param stroke the stroke (<code>null</code> permitted).
* @param notify notify listeners?
*
* @deprecated This method should no longer be used (as of version 1.0.6).
* It is sufficient to rely on {@link #setSeriesStroke(int, Stroke,
* boolean)} and {@link #setBaseStroke(Stroke, boolean)}.
*/
public void setStroke(Stroke stroke, boolean notify) {
this.stroke = stroke;
if (notify) {
fireChangeEvent();
}
}
/**
* Returns the stroke used to draw the items in a series.
*
* @param series the series (zero-based index).
*
* @return The stroke (possibly <code>null</code>).
*
* @see #setSeriesStroke(int, Stroke)
*/
public Stroke getSeriesStroke(int series) {
return this.strokeList.getStroke(series);
}
/**
* Sets the stroke used for a series and sends a {@link RendererChangeEvent}
* to all registered listeners.
*
* @param series the series index (zero-based).
* @param stroke the stroke (<code>null</code> permitted).
*
* @see #getSeriesStroke(int)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -