diff --git a/src/schule/ngb/zm/charts/BasicChartValue.java b/src/schule/ngb/zm/charts/BasicChartValue.java index 56638f1..598a46d 100644 --- a/src/schule/ngb/zm/charts/BasicChartValue.java +++ b/src/schule/ngb/zm/charts/BasicChartValue.java @@ -2,53 +2,133 @@ package schule.ngb.zm.charts; import schule.ngb.zm.Color; +/** + * Basisimplemenation eines {@link ChartValue}. + *
+ * Die Klasse implementiert das Interface auf die einfachste mögliche Weise als + * reine Datenhaltungsklasse. Sie wird von den Diagrammen verwendet, um reine + * Double Werte als {@code ChartValue} zu speichern. + *
+ * Um einfach einen Datenpunkt zu erstellen, wird eine umfassende Auswahl an + * Konstruktoren angeboten. + */ public class BasicChartValue implements ChartValue { + /** + * Der x-Wert diese Datenpunktes. + */ private double xValue = 0; + /** + * Der Datenwert des Datenpunktes. + */ private double value; + /** + * Die Beschriftung des Datenpunktes. + */ private String label = null; + /** + * Die Farbe des Datenpunktes. + */ private Color color = null; + /** + * Erstellt einen neuen Datenpunkt mit dem angegebenen Datenwert. + * + * @param value Der Datenwert. + */ public BasicChartValue( double value ) { this.value = value; } + /** + * Erstellt einen neuen Datenpunkt mit dem angegebenen x- und Datenwert. + * + * @param xValue Der x-Wert. + * @param value Der Datenwert. + */ public BasicChartValue( double xValue, double value ) { this.xValue = xValue; this.value = value; } + /** + * Erstellt einen neuen Datenpunkt mit dem angegebenen Datenwert und der + * angegebenen Beschriftung. + * + * @param value Der Datenwert. + * @param label Die Beschriftung. + */ public BasicChartValue( double value, String label ) { this.value = value; this.label = label; } + /** + * Erstellt einen neuen Datenpunkt mit dem angegebenen x- und Datenwert und + * der angegebenen Beschriftung. + * + * @param xValue Der x-Wert. + * @param value Der Datenwert. + * @param label Die Beschriftung. + */ public BasicChartValue( double xValue, double value, String label ) { this.xValue = xValue; this.value = value; this.label = label; } + /** + * Erstellt einen neuen Datenpunkt mit dem angegebenen Datenwert und der + * angegebenen Farbe. + * + * @param value Der Datenwert. + * @param color Die Farbe. + */ public BasicChartValue( double value, Color color ) { this.value = value; this.color = color; } + /** + * Erstellt einen neuen Datenpunkt mit dem angegebenen x- und Datenwert und + * der angegebenen Farbe. + * + * @param xValue Der x-Wert. + * @param value Der Datenwert. + * @param color Die Farbe. + */ public BasicChartValue( double xValue, double value, Color color ) { this.xValue = xValue; this.value = value; this.color = color; } + /** + * Erstellt einen neuen Datenpunkt mit dem angegebenen Datenwert, der + * angegebenen Beschriftung und Farbe. + * + * @param value Der Datenwert. + * @param label Die Beschriftung. + * @param color Die Farbe. + */ public BasicChartValue( double value, String label, Color color ) { this.value = value; this.label = label; this.color = color; } + /** + * Erstellt einen neuen Datenpunkt mit dem angegebenen x- und Datenwert, der + * angegebenen Beschriftung und Farbe. + * + * @param xValue Der x-Wert. + * @param value Der Datenwert. + * @param label Die Beschriftung. + * @param color Die Farbe. + */ public BasicChartValue( double xValue, double value, String label, Color color ) { this.xValue = xValue; this.value = value; @@ -56,36 +136,57 @@ public class BasicChartValue implements ChartValue { this.color = color; } + /** + * {@inheritDoc} + */ @Override public double getX() { return xValue; } + /** + * {@inheritDoc} + */ @Override public double getValue() { return value; } + /** + * {@inheritDoc} + */ @Override public void setValue( double pValue ) { this.value = pValue; } + /** + * {@inheritDoc} + */ @Override public String getLabel() { return label; } + /** + * {@inheritDoc} + */ @Override public void setLabel( String pLabel ) { this.label = pLabel; } + /** + * {@inheritDoc} + */ @Override public Color getColor() { return color; } + /** + * {@inheritDoc} + */ @Override public void setColor( Color pColor ) { this.color = pColor; diff --git a/src/schule/ngb/zm/charts/ChartValue.java b/src/schule/ngb/zm/charts/ChartValue.java index 293fbce..cf9e130 100644 --- a/src/schule/ngb/zm/charts/ChartValue.java +++ b/src/schule/ngb/zm/charts/ChartValue.java @@ -12,16 +12,23 @@ public interface ChartValue { /** * Gibt den x-Wert des Datenpunktes zurück. Nicht alle Diagrammarten - * benötigen einen x-Wert und ignorieren diesen. Soll die Klasse nur in - * Diagrammen ohne x-Wert (zum Beispiel Kreis- oder Balkendiagramm) - * dargestellt werden, wird empfohlen, dass immer 0 zurückgegeben wird. + * benötigen einen x-Wert und ignorieren diesen dann gegebenenfalls. Soll + * die Klasse nur in Diagrammen ohne x-Wert (zum Beispiel + * {@link PieChart Kreis-} oder {@link BarChart Balkendiagramm}) dargestellt + * werden, wird empfohlen, dass immer {@code 0} zurückgegeben wird. * * @return Der x-Wert des Datenpunktes. */ double getX(); /** - * Gibt den Datenwertert des Datenpunktes zurück. + * Gibt den Datenwert des Datenpunktes zurück. + *
+ * Der Datenwert wird je nach Diagrammtyp anders interpretiert. In + * {@link LineChart}s wird er im Zusammenhang mit dem {@link #getX() x-Wert} + * als y-Wert eines Datenpunktes genommen. In + * {@link PieChart Kreisdiagrammen} wird er als Anteil des Datums im Kreis + * verstanden. * * @return Der Wert des Datenpunktes. */ @@ -29,6 +36,7 @@ public interface ChartValue { /** * Ändert den Datenwert dieses Datenpunktes. + * * @param pValue */ void setValue( double pValue ); @@ -44,6 +52,7 @@ public interface ChartValue { /** * Ändert die Beschriftung dieses Datenpunktes. + * * @param pLabel Die neue Beschriftung. */ void setLabel( String pLabel ); @@ -59,6 +68,7 @@ public interface ChartValue { /** * Ändert die Farbe dieses Datenpunktes. + * * @param pColor Die neue Farbe. */ void setColor( Color pColor );