diff options
author | James Moger <james.moger@gitblit.com> | 2011-04-04 16:13:11 -0400 |
---|---|---|
committer | James Moger <james.moger@gitblit.com> | 2011-04-04 16:13:11 -0400 |
commit | fc84260e4238fda10842c1bd3b9fb0cb74b95426 (patch) | |
tree | 8cdb945c3679678a0c4aa32d2f179c5097a70da1 /contrib/com/codecommit | |
parent | 8aadfad0de588bc7b1aecd9c3327ec5c44607179 (diff) | |
download | gitblit-fc84260e4238fda10842c1bd3b9fb0cb74b95426.tar.gz gitblit-fc84260e4238fda10842c1bd3b9fb0cb74b95426.zip |
Dropped log links, created new stylesheet, added activity graph.
Diffstat (limited to 'contrib/com/codecommit')
32 files changed, 1810 insertions, 0 deletions
diff --git a/contrib/com/codecommit/wicket/AbstractChartData.java b/contrib/com/codecommit/wicket/AbstractChartData.java new file mode 100644 index 00000000..73c00925 --- /dev/null +++ b/contrib/com/codecommit/wicket/AbstractChartData.java @@ -0,0 +1,46 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.io.Serializable;
+
+/**
+ * @author Daniel Spiewak
+ */
+public abstract class AbstractChartData implements IChartData, Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ private ChartDataEncoding encoding;
+ private double max;
+
+ public AbstractChartData() {
+ this(62);
+ }
+
+ public AbstractChartData(double max) {
+ this(ChartDataEncoding.SIMPLE, max);
+ }
+
+ public AbstractChartData(ChartDataEncoding encoding, double max) {
+ this.encoding = encoding;
+ this.max = max;
+ }
+
+ public ChartDataEncoding getEncoding() {
+ return encoding;
+ }
+
+ public double getMax() {
+ return max;
+ }
+
+ public void setEncoding(ChartDataEncoding encoding) {
+ this.encoding = encoding;
+ }
+
+ public void setMax(double max) {
+ this.max = max;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/AreaFillType.java b/contrib/com/codecommit/wicket/AreaFillType.java new file mode 100644 index 00000000..76ed1a18 --- /dev/null +++ b/contrib/com/codecommit/wicket/AreaFillType.java @@ -0,0 +1,22 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public enum AreaFillType {
+ BETWEEN("b"),
+ DOWN("B");
+
+ private final String rendering;
+
+ private AreaFillType(String rendering) {
+ this.rendering = rendering;
+ }
+
+ public String getRendering() {
+ return rendering;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/AxisAlignment.java b/contrib/com/codecommit/wicket/AxisAlignment.java new file mode 100644 index 00000000..0f15ec0a --- /dev/null +++ b/contrib/com/codecommit/wicket/AxisAlignment.java @@ -0,0 +1,23 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public enum AxisAlignment {
+ LEFT(-1),
+ CENTER(0),
+ RIGHT(1);
+
+ private final int rendering;
+
+ private AxisAlignment(int rendering) {
+ this.rendering = rendering;
+ }
+
+ public int getRendering() {
+ return rendering;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/Chart.java b/contrib/com/codecommit/wicket/Chart.java new file mode 100644 index 00000000..95461cf2 --- /dev/null +++ b/contrib/com/codecommit/wicket/Chart.java @@ -0,0 +1,602 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+import java.awt.Dimension;
+import java.lang.reflect.InvocationTargetException;
+import java.util.concurrent.locks.ReadWriteLock;
+import java.util.concurrent.locks.ReentrantReadWriteLock;
+
+import org.apache.wicket.markup.ComponentTag;
+import org.apache.wicket.markup.html.WebComponent;
+
+/**
+ * @author Daniel Spiewak
+ */
+public class Chart extends WebComponent {
+ private static final long serialVersionUID = 1L;
+
+ private IChartProvider provider;
+
+ private StringBuilder url;
+ private final ReadWriteLock lock = new ReentrantReadWriteLock();
+
+ public Chart(String id, IChartProvider provider) {
+ super(id);
+
+ this.provider = provider;
+ }
+
+ @Override
+ public boolean getStatelessHint() {
+ return false;
+ }
+
+ public void invalidate() {
+ lock.writeLock().lock();
+ try {
+ url = null;
+ } finally {
+ lock.writeLock().unlock();
+ }
+ }
+
+ public CharSequence constructURL() {
+ lock.writeLock().lock();
+ try {
+ if (url != null) {
+ return url;
+ }
+
+ url = new StringBuilder("http://chart.apis.google.com/chart?");
+
+ addParameter(url, "chs", render(provider.getSize()));
+ addParameter(url, "chd", render(provider.getData()));
+ addParameter(url, "cht", render(provider.getType()));
+ addParameter(url, "chbh", render(provider.getBarWidth(), provider.getBarGroupSpacing()));
+ addParameter(url, "chtt", render(provider.getTitle()));
+ addParameter(url, "chdl", render(provider.getLegend()));
+ addParameter(url, "chco", render(provider.getColors()));
+
+ IChartFill bgFill = provider.getBackgroundFill();
+ IChartFill fgFill = provider.getChartFill();
+
+ StringBuilder fillParam = new StringBuilder();
+
+ if (bgFill != null) {
+ fillParam.append("bg,").append(render(bgFill));
+ }
+
+ if (fgFill != null) {
+ if (fillParam.length() > 0) {
+ fillParam.append('|');
+ }
+
+ fillParam.append("c,").append(render(fgFill));
+ }
+
+ if (fillParam.toString().trim().equals("")) {
+ fillParam = null;
+ }
+
+ addParameter(url, "chf", fillParam);
+
+ IChartAxis[] axes = provider.getAxes();
+ addParameter(url, "chxt", renderTypes(axes));
+ addParameter(url, "chxl", renderLabels(axes));
+ addParameter(url, "chxp", renderPositions(axes));
+ addParameter(url, "chxr", renderRanges(axes));
+ addParameter(url, "chxs", renderStyles(axes));
+
+ addParameter(url, "chg", render(provider.getGrid()));
+ addParameter(url, "chm", render(provider.getShapeMarkers()));
+ addParameter(url, "chm", render(provider.getRangeMarkers()));
+ addParameter(url, "chls", render(provider.getLineStyles()));
+ addParameter(url, "chm", render(provider.getFillAreas()));
+ addParameter(url, "chl", render(provider.getPieLabels()));
+
+ return url;
+ } finally {
+ lock.writeLock().unlock();
+ }
+ }
+
+ private void addParameter(StringBuilder url, CharSequence param, CharSequence value) {
+ if (value == null || value.length() == 0) {
+ return;
+ }
+
+ if (url.charAt(url.length() - 1) != '?') {
+ url.append('&');
+ }
+
+ url.append(param).append('=').append(value);
+ }
+
+ private CharSequence render(Dimension dim) {
+ if (dim == null) {
+ return null;
+ }
+
+ return new StringBuilder().append(dim.width).append('x').append(dim.height);
+ }
+
+ private CharSequence render(IChartData data) {
+ if (data == null) {
+ return null;
+ }
+
+ ChartDataEncoding encoding = data.getEncoding();
+
+ StringBuilder back = new StringBuilder();
+ back.append(render(encoding)).append(':');
+
+ for (double[] set : data.getData()) {
+ if (set == null || set.length == 0) {
+ back.append(encoding.convert(-1, data.getMax()));
+ } else {
+ for (double value : set) {
+ back.append(encoding.convert(value, data.getMax())).append(encoding.getValueSeparator());
+ }
+
+ if (back.substring(back.length() - encoding.getValueSeparator().length(),
+ back.length()).equals(encoding.getValueSeparator())) {
+ back.setLength(back.length() - encoding.getValueSeparator().length());
+ }
+ }
+
+ back.append(encoding.getSetSeparator());
+ }
+
+ if (back.substring(back.length() - encoding.getSetSeparator().length(),
+ back.length()).equals(encoding.getSetSeparator())) {
+ back.setLength(back.length() - encoding.getSetSeparator().length());
+ }
+
+ return back;
+ }
+
+ private CharSequence render(Enum<?> value) {
+ if (value == null) {
+ return null;
+ }
+
+ try {
+ Object back = value.getClass().getMethod("getRendering").invoke(value);
+
+ if (back != null) {
+ return back.toString();
+ }
+ } catch (IllegalArgumentException e) {
+ } catch (SecurityException e) {
+ } catch (IllegalAccessException e) {
+ } catch (InvocationTargetException e) {
+ } catch (NoSuchMethodException e) {
+ }
+
+ return null;
+ }
+
+ private CharSequence render(int barWidth, int groupSpacing) {
+ if (barWidth == -1) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder(barWidth);
+
+ if (groupSpacing >= 0) {
+ back.append(',').append(groupSpacing);
+ }
+
+ return back;
+ }
+
+ private CharSequence render(String[] values) {
+ if (values == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ for (String value : values) {
+ CharSequence toRender = render(value);
+ if (toRender == null) {
+ toRender = "";
+ }
+
+ back.append(toRender).append('|');
+ }
+
+ if (back.length() > 0) {
+ back.setLength(back.length() - 1);
+ }
+
+ return back;
+ }
+
+ private CharSequence render(String value) {
+ if (value == null) {
+ return value;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ for (char c : value.toCharArray()) {
+ if (c == ' ') {
+ back.append('+');
+ } else {
+ back.append(c);
+ }
+ }
+
+ return back;
+ }
+
+ private CharSequence render(Color[] values) {
+ if (values == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ for (Color value : values) {
+ CharSequence toRender = render(value);
+ if (toRender == null) {
+ continue;
+ }
+ char delimiter = ',';
+ switch(provider.getType()) {
+ case PIE:
+ case PIE_3D:
+ case BAR_VERTICAL_SET:
+ delimiter = '|';
+ break;
+ }
+ back.append(toRender).append(delimiter);
+ }
+
+ if (back.length() > 0) {
+ back.setLength(back.length() - 1);
+ }
+
+ return back;
+ }
+
+ private CharSequence render(Color value) {
+ if (value == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ {
+ String toPad = Integer.toHexString(value.getRed());
+
+ if (toPad.length() == 1) {
+ back.append(0);
+ }
+ back.append(toPad);
+ }
+
+ {
+ String toPad = Integer.toHexString(value.getGreen());
+
+ if (toPad.length() == 1) {
+ back.append(0);
+ }
+ back.append(toPad);
+ }
+
+ {
+ String toPad = Integer.toHexString(value.getBlue());
+
+ if (toPad.length() == 1) {
+ back.append(0);
+ }
+ back.append(toPad);
+ }
+
+ {
+ String toPad = Integer.toHexString(value.getAlpha());
+
+ if (toPad.length() == 1) {
+ back.append(0);
+ }
+ back.append(toPad);
+ }
+
+ return back;
+ }
+
+ private CharSequence render(IChartFill fill) {
+ if (fill == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ if (fill instanceof ISolidFill) {
+ ISolidFill solidFill = (ISolidFill) fill;
+
+ back.append("s,");
+ back.append(render(solidFill.getColor()));
+ } else if (fill instanceof ILinearGradientFill) {
+ ILinearGradientFill gradientFill = (ILinearGradientFill) fill;
+
+ back.append("lg,").append(gradientFill.getAngle()).append(',');
+
+ Color[] colors = gradientFill.getColors();
+ double[] offsets = gradientFill.getOffsets();
+ for (int i = 0; i < colors.length; i++) {
+ back.append(render(colors[i])).append(',').append(offsets[i]).append(',');
+ }
+
+ back.setLength(back.length() - 1);
+ } else if (fill instanceof ILinearStripesFill) {
+ ILinearStripesFill stripesFill = (ILinearStripesFill) fill;
+
+ back.append("ls,").append(stripesFill.getAngle()).append(',');
+
+ Color[] colors = stripesFill.getColors();
+ double[] widths = stripesFill.getWidths();
+ for (int i = 0; i < colors.length; i++) {
+ back.append(render(colors[i])).append(',').append(widths[i]).append(',');
+ }
+
+ back.setLength(back.length() - 1);
+ } else {
+ return null;
+ }
+
+ return back;
+ }
+
+ private CharSequence renderTypes(IChartAxis[] axes) {
+ if (axes == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ for (IChartAxis axis : axes) {
+ back.append(render(axis.getType())).append(',');
+ }
+
+ if (back.length() > 0) {
+ back.setLength(back.length() - 1);
+ }
+
+ return back;
+ }
+
+ private CharSequence renderLabels(IChartAxis[] axes) {
+ if (axes == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ for (int i = 0; i < axes.length; i++) {
+ if (axes[i] == null || axes[i].getLabels() == null) {
+ continue;
+ }
+
+ back.append(i).append(":|");
+
+ for (String label : axes[i].getLabels()) {
+ if (label == null) {
+ back.append('|');
+ continue;
+ }
+
+ back.append(render(label)).append('|');
+ }
+
+ if (i == axes.length - 1) {
+ back.setLength(back.length() - 1);
+ }
+ }
+
+ return back;
+ }
+
+ private CharSequence renderPositions(IChartAxis[] axes) {
+ if (axes == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ for (int i = 0; i < axes.length; i++) {
+ if (axes[i] == null || axes[i].getPositions() == null) {
+ continue;
+ }
+
+ back.append(i).append(',');
+
+ for (double position : axes[i].getPositions()) {
+ back.append(position).append(',');
+ }
+
+ back.setLength(back.length() - 1);
+
+ back.append('|');
+ }
+
+ if (back.length() > 0) {
+ back.setLength(back.length() - 1);
+ }
+
+ return back;
+ }
+
+ private CharSequence renderRanges(IChartAxis[] axes) {
+ if (axes == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ for (int i = 0; i < axes.length; i++) {
+ if (axes[i] == null || axes[i].getRange() == null) {
+ continue;
+ }
+
+ back.append(i).append(',');
+
+ Range range = axes[i].getRange();
+ back.append(range.getStart()).append(',').append(range.getEnd()).append('|');
+ }
+
+ if (back.length() > 0) {
+ back.setLength(back.length() - 1);
+ }
+
+ return back;
+ }
+
+ private CharSequence renderStyles(IChartAxis[] axes) {
+ if (axes == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ for (int i = 0; i < axes.length; i++) {
+ if (axes[i] == null || axes[i].getColor() == null
+ || axes[i].getFontSize() < 0 || axes[i].getAlignment() == null) {
+ continue;
+ }
+
+ back.append(i).append(',');
+ back.append(render(axes[i].getColor())).append(',');
+ back.append(axes[i].getFontSize()).append(',');
+ back.append(render(axes[i].getAlignment())).append('|');
+ }
+
+ if (back.length() > 0) {
+ back.setLength(back.length() - 1);
+ }
+
+ return back;
+ }
+
+ private CharSequence render(IChartGrid grid) {
+ if (grid == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ back.append(grid.getXStepSize()).append(',');
+ back.append(grid.getYStepSize());
+
+ if (grid.getSegmentLength() >= 0) {
+ back.append(',').append(grid.getSegmentLength());
+ back.append(',').append(grid.getBlankLength());
+ }
+
+ return back;
+ }
+
+ private CharSequence render(IShapeMarker[] markers) {
+ if (markers == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ for (IShapeMarker marker : markers) {
+ back.append(render(marker.getType())).append(',');
+ back.append(render(marker.getColor())).append(',');
+ back.append(marker.getIndex()).append(',');
+ back.append(marker.getPoint()).append(',');
+ back.append(marker.getSize()).append('|');
+ }
+
+ if (back.length() > 0) {
+ back.setLength(back.length() - 1);
+ }
+
+ return back;
+ }
+
+ private CharSequence render(IRangeMarker[] markers) {
+ if (markers == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ for (IRangeMarker marker : markers) {
+ back.append(render(marker.getType())).append(',');
+ back.append(render(marker.getColor())).append(',');
+ back.append(0).append(',');
+ back.append(marker.getStart()).append(',');
+ back.append(marker.getEnd()).append('|');
+ }
+
+ if (back.length() > 0) {
+ back.setLength(back.length() - 1);
+ }
+
+ return back;
+ }
+
+ private CharSequence render(IFillArea[] areas) {
+ if (areas == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ for (IFillArea area : areas) {
+ back.append(render(area.getType())).append(',');
+ back.append(render(area.getColor())).append(',');
+ back.append(area.getStartIndex()).append(',');
+ back.append(area.getEndIndex()).append(',');
+ back.append(0).append('|');
+ }
+
+ if (back.length() > 0) {
+ back.setLength(back.length() - 1);
+ }
+
+ return back;
+ }
+
+ private CharSequence render(ILineStyle[] styles) {
+ if (styles == null) {
+ return null;
+ }
+
+ StringBuilder back = new StringBuilder();
+
+ for (ILineStyle style : styles) {
+ if (style == null) {
+ back.append('|');
+ continue;
+ }
+
+ back.append(style.getThickness()).append(',');
+ back.append(style.getSegmentLength()).append(',');
+ back.append(style.getBlankLength()).append('|');
+ }
+
+ if (back.length() > 0) {
+ back.setLength(back.length() - 1);
+ }
+
+ return back;
+ }
+
+ @Override
+ protected void onComponentTag(ComponentTag tag) {
+ checkComponentTag(tag, "img");
+ super.onComponentTag(tag);
+
+ tag.put("src", constructURL());
+ }
+}
\ No newline at end of file diff --git a/contrib/com/codecommit/wicket/ChartAxis.java b/contrib/com/codecommit/wicket/ChartAxis.java new file mode 100644 index 00000000..7042c0c8 --- /dev/null +++ b/contrib/com/codecommit/wicket/ChartAxis.java @@ -0,0 +1,79 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public class ChartAxis implements IChartAxis {
+ private AxisAlignment alignment;
+ private Color color;
+ private int fontSize = -1;
+ private String[] labels;
+ private double[] positions;
+ private Range range;
+ private ChartAxisType type;
+
+ public ChartAxis(ChartAxisType type) {
+ this.type = type;
+ }
+
+ public AxisAlignment getAlignment() {
+ return alignment;
+ }
+
+ public Color getColor() {
+ return color;
+ }
+
+ public int getFontSize() {
+ return fontSize;
+ }
+
+ public String[] getLabels() {
+ return labels;
+ }
+
+ public double[] getPositions() {
+ return positions;
+ }
+
+ public Range getRange() {
+ return range;
+ }
+
+ public ChartAxisType getType() {
+ return type;
+ }
+
+ public void setAlignment(AxisAlignment alignment) {
+ this.alignment = alignment;
+ }
+
+ public void setColor(Color color) {
+ this.color = color;
+ }
+
+ public void setFontSize(int fontSize) {
+ this.fontSize = fontSize;
+ }
+
+ public void setLabels(String[] labels) {
+ this.labels = labels;
+ }
+
+ public void setPositions(double[] positions) {
+ this.positions = positions;
+ }
+
+ public void setRange(Range range) {
+ this.range = range;
+ }
+
+ public void setType(ChartAxisType type) {
+ this.type = type;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/ChartAxisType.java b/contrib/com/codecommit/wicket/ChartAxisType.java new file mode 100644 index 00000000..82466548 --- /dev/null +++ b/contrib/com/codecommit/wicket/ChartAxisType.java @@ -0,0 +1,25 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public enum ChartAxisType {
+ BOTTOM("x"),
+ TOP("t"),
+
+ LEFT("y"),
+ RIGHT("r");
+
+ private final String rendering;
+
+ private ChartAxisType(String rendering) {
+ this.rendering = rendering;
+ }
+
+ public String getRendering() {
+ return rendering;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/ChartDataEncoding.java b/contrib/com/codecommit/wicket/ChartDataEncoding.java new file mode 100644 index 00000000..15677f49 --- /dev/null +++ b/contrib/com/codecommit/wicket/ChartDataEncoding.java @@ -0,0 +1,82 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+
+/**
+ * @author Daniel Spiewak
+ */
+public enum ChartDataEncoding {
+ SIMPLE("s", "", ",") {
+ CharSequence convert(double value, double max) {
+ if (value < 0) {
+ return "_";
+ }
+
+ value = Math.round((CHARS.length() - 1) * value / max);
+
+ if (value > CHARS.length() - 1) {
+ throw new IllegalArgumentException(value + " is out of range for SIMPLE encoding");
+ }
+
+ return Character.toString(CHARS.charAt((int) value));
+ }
+ },
+ TEXT("t", ",", "|") {
+ CharSequence convert(double value, double max) {
+ if (value < 0) {
+ value = -1;
+ }
+
+ if (value > 100) {
+ throw new IllegalArgumentException(value + " is out of range for TEXT encoding");
+ }
+
+ return Double.toString(value);
+ }
+ },
+ EXTENDED("e", "", ",") {
+ CharSequence convert(double value, double max) {
+ if (value < 0) {
+ return "__";
+ }
+
+ value = Math.round(value);
+
+ if (value > (EXT_CHARS.length() - 1) * (EXT_CHARS.length() - 1)) {
+ throw new IllegalArgumentException(value + " is out of range for EXTENDED encoding");
+ }
+
+ int rem = (int) (value % EXT_CHARS.length());
+ int exp = (int) (value / EXT_CHARS.length());
+
+ return new StringBuilder().append(EXT_CHARS.charAt(exp)).append(EXT_CHARS.charAt(rem));
+ }
+ };
+
+ private static final String CHARS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
+ private static final String EXT_CHARS = CHARS + "-_.";
+
+ private final String rendering, valueSeparator, setSeparator;
+
+ private ChartDataEncoding(String rendering, String valueSeparator, String setSeparator) {
+ this.rendering = rendering;
+ this.valueSeparator = valueSeparator;
+ this.setSeparator = setSeparator;
+ }
+
+ public String getRendering() {
+ return rendering;
+ }
+
+ public String getValueSeparator() {
+ return valueSeparator;
+ }
+
+ public String getSetSeparator() {
+ return setSeparator;
+ }
+
+ abstract CharSequence convert(double value, double max);
+}
diff --git a/contrib/com/codecommit/wicket/ChartGrid.java b/contrib/com/codecommit/wicket/ChartGrid.java new file mode 100644 index 00000000..9fdee200 --- /dev/null +++ b/contrib/com/codecommit/wicket/ChartGrid.java @@ -0,0 +1,51 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public class ChartGrid implements IChartGrid {
+ private int blankLength = -1;
+ private int segmentLength = -1;
+ private int xStepSize = -1;
+ private int yStepSize = -1;
+
+ public ChartGrid(int xStepSize, int yStepSize) {
+ this.xStepSize = xStepSize;
+ this.yStepSize = yStepSize;
+ }
+
+ public int getBlankLength() {
+ return blankLength;
+ }
+
+ public int getSegmentLength() {
+ return segmentLength;
+ }
+
+ public double getXStepSize() {
+ return xStepSize;
+ }
+
+ public double getYStepSize() {
+ return yStepSize;
+ }
+
+ public void setBlankLength(int blankLength) {
+ this.blankLength = blankLength;
+ }
+
+ public void setSegmentLength(int segmentLength) {
+ this.segmentLength = segmentLength;
+ }
+
+ public void setXStepSize(int stepSize) {
+ xStepSize = stepSize;
+ }
+
+ public void setYStepSize(int stepSize) {
+ yStepSize = stepSize;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/ChartProvider.java b/contrib/com/codecommit/wicket/ChartProvider.java new file mode 100644 index 00000000..4e69bfc2 --- /dev/null +++ b/contrib/com/codecommit/wicket/ChartProvider.java @@ -0,0 +1,176 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+import java.awt.Dimension;
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author Daniel Spiewak
+ */
+public class ChartProvider implements IChartProvider, Serializable {
+ private static final long serialVersionUID = 1L;
+ private List<IChartAxis> axes = new ArrayList<IChartAxis>();
+ private IChartFill backgroundFill;
+ private int barGroupSpacing = -1;
+ private int barWidth = -1;
+ private IChartFill chartFill;
+ private Color[] colors;
+ private List<IFillArea> fillAreas = new ArrayList<IFillArea>();
+ private IChartGrid grid;
+ private String[] legend;
+ private ILineStyle[] lineStyles;
+ private String[] pieLabels;
+ private List<IRangeMarker> rangeMarkers = new ArrayList<IRangeMarker>();
+ private List<IShapeMarker> shapeMarkers = new ArrayList<IShapeMarker>();
+ private Dimension size;
+ private String title;
+ private ChartType type;
+ private IChartData data;
+
+ public ChartProvider(Dimension size, ChartType type, IChartData data) {
+ this.size = size;
+ this.type = type;
+ this.data = data;
+ }
+
+ public IChartAxis[] getAxes() {
+ return axes.toArray(new IChartAxis[axes.size()]);
+ }
+
+ public IChartFill getBackgroundFill() {
+ return backgroundFill;
+ }
+
+ public int getBarGroupSpacing() {
+ return barGroupSpacing;
+ }
+
+ public int getBarWidth() {
+ return barWidth;
+ }
+
+ public IChartFill getChartFill() {
+ return chartFill;
+ }
+
+ public Color[] getColors() {
+ return colors;
+ }
+
+ public IFillArea[] getFillAreas() {
+ return fillAreas.toArray(new IFillArea[fillAreas.size()]);
+ }
+
+ public IChartGrid getGrid() {
+ return grid;
+ }
+
+ public String[] getLegend() {
+ return legend;
+ }
+
+ public ILineStyle[] getLineStyles() {
+ return lineStyles;
+ }
+
+ public String[] getPieLabels() {
+ return pieLabels;
+ }
+
+ public IRangeMarker[] getRangeMarkers() {
+ return rangeMarkers.toArray(new IRangeMarker[rangeMarkers.size()]);
+ }
+
+ public IShapeMarker[] getShapeMarkers() {
+ return shapeMarkers.toArray(new IShapeMarker[shapeMarkers.size()]);
+ }
+
+ public Dimension getSize() {
+ return size;
+ }
+
+ public String getTitle() {
+ return title;
+ }
+
+ public ChartType getType() {
+ return type;
+ }
+
+ public void addFillArea(IFillArea fillArea) {
+ fillAreas.add(fillArea);
+ }
+
+ public void addAxis(IChartAxis axis) {
+ axes.add(axis);
+ }
+
+ public void setBackgroundFill(IChartFill backgroundFill) {
+ this.backgroundFill = backgroundFill;
+ }
+
+ public void setBarGroupSpacing(int barGroupSpacing) {
+ this.barGroupSpacing = barGroupSpacing;
+ }
+
+ public void setBarWidth(int barWidth) {
+ this.barWidth = barWidth;
+ }
+
+ public void setChartFill(IChartFill chartFill) {
+ this.chartFill = chartFill;
+ }
+
+ public void setColors(Color[] colors) {
+ this.colors = colors;
+ }
+
+ public void setGrid(IChartGrid grid) {
+ this.grid = grid;
+ }
+
+ public void setLegend(String[] legend) {
+ this.legend = legend;
+ }
+
+ public void setLineStyles(ILineStyle[] lineStyles) {
+ this.lineStyles = lineStyles;
+ }
+
+ public void setPieLabels(String[] pieLabels) {
+ this.pieLabels = pieLabels;
+ }
+
+ public void addRangeMarker(IRangeMarker rangeMarker) {
+ rangeMarkers.add(rangeMarker);
+ }
+
+ public void addShapeMarker(IShapeMarker shapeMarker) {
+ shapeMarkers.add(shapeMarker);
+ }
+
+ public void setSize(Dimension size) {
+ this.size = size;
+ }
+
+ public void setTitle(String title) {
+ this.title = title;
+ }
+
+ public void setType(ChartType type) {
+ this.type = type;
+ }
+
+ public IChartData getData() {
+ return data;
+ }
+
+ public void setData(IChartData data) {
+ this.data = data;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/ChartType.java b/contrib/com/codecommit/wicket/ChartType.java new file mode 100644 index 00000000..3d25d422 --- /dev/null +++ b/contrib/com/codecommit/wicket/ChartType.java @@ -0,0 +1,34 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public enum ChartType {
+ LINE("lc"),
+ LINE_XY("lxy"),
+
+ BAR_HORIZONTAL_SET("bhs"),
+ BAR_VERTICAL_SET("bvs"),
+ BAR_HORIZONTAL_GROUP("bhg"),
+ BAR_VERTICAL_GROUP("bvg"),
+
+ PIE("p"),
+ PIE_3D("p3"),
+
+ VENN("v"),
+
+ SCATTER("s");
+
+ private final String rendering;
+
+ private ChartType(String rendering) {
+ this.rendering = rendering;
+ }
+
+ public String getRendering() {
+ return rendering;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/FillArea.java b/contrib/com/codecommit/wicket/FillArea.java new file mode 100644 index 00000000..2ab5ef38 --- /dev/null +++ b/contrib/com/codecommit/wicket/FillArea.java @@ -0,0 +1,54 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public class FillArea implements IFillArea {
+ private Color color;
+ private int endIndex = -1;
+ private int startIndex = -1;
+ private AreaFillType type = AreaFillType.BETWEEN;
+
+ public FillArea(Color color, int startIndex, int endIndex) {
+ this.color = color;
+ this.startIndex = startIndex;
+ this.endIndex = endIndex;
+ }
+
+ public Color getColor() {
+ return color;
+ }
+
+ public int getEndIndex() {
+ return endIndex;
+ }
+
+ public int getStartIndex() {
+ return startIndex;
+ }
+
+ public AreaFillType getType() {
+ return type;
+ }
+
+ public void setColor(Color color) {
+ this.color = color;
+ }
+
+ public void setEndIndex(int endIndex) {
+ this.endIndex = endIndex;
+ }
+
+ public void setStartIndex(int startIndex) {
+ this.startIndex = startIndex;
+ }
+
+ public void setType(AreaFillType type) {
+ this.type = type;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/IChartAxis.java b/contrib/com/codecommit/wicket/IChartAxis.java new file mode 100644 index 00000000..c7c83dc0 --- /dev/null +++ b/contrib/com/codecommit/wicket/IChartAxis.java @@ -0,0 +1,26 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public interface IChartAxis {
+
+ public ChartAxisType getType();
+
+ public String[] getLabels();
+
+ public double[] getPositions();
+
+ public Range getRange();
+
+ public Color getColor();
+
+ public int getFontSize();
+
+ public AxisAlignment getAlignment();
+}
diff --git a/contrib/com/codecommit/wicket/IChartData.java b/contrib/com/codecommit/wicket/IChartData.java new file mode 100644 index 00000000..c4f6ec7a --- /dev/null +++ b/contrib/com/codecommit/wicket/IChartData.java @@ -0,0 +1,16 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public interface IChartData {
+
+ public ChartDataEncoding getEncoding();
+
+ public double[][] getData();
+
+ public double getMax();
+}
diff --git a/contrib/com/codecommit/wicket/IChartFill.java b/contrib/com/codecommit/wicket/IChartFill.java new file mode 100644 index 00000000..2ccb1d66 --- /dev/null +++ b/contrib/com/codecommit/wicket/IChartFill.java @@ -0,0 +1,10 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public interface IChartFill {
+}
diff --git a/contrib/com/codecommit/wicket/IChartGrid.java b/contrib/com/codecommit/wicket/IChartGrid.java new file mode 100644 index 00000000..05f4c5f6 --- /dev/null +++ b/contrib/com/codecommit/wicket/IChartGrid.java @@ -0,0 +1,18 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public interface IChartGrid {
+
+ public double getXStepSize();
+
+ public double getYStepSize();
+
+ public int getSegmentLength();
+
+ public int getBlankLength();
+}
diff --git a/contrib/com/codecommit/wicket/IChartProvider.java b/contrib/com/codecommit/wicket/IChartProvider.java new file mode 100644 index 00000000..76e7fa62 --- /dev/null +++ b/contrib/com/codecommit/wicket/IChartProvider.java @@ -0,0 +1,47 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+import java.awt.Dimension;
+
+/**
+ * @author Daniel Spiewak
+ */
+public interface IChartProvider {
+
+ public Dimension getSize();
+
+ public IChartData getData();
+
+ public ChartType getType();
+
+ public int getBarWidth();
+
+ public int getBarGroupSpacing();
+
+ public String getTitle();
+
+ public String[] getLegend();
+
+ public Color[] getColors();
+
+ public IChartFill getChartFill();
+
+ public IChartFill getBackgroundFill();
+
+ public String[] getPieLabels();
+
+ public IChartAxis[] getAxes();
+
+ public ILineStyle[] getLineStyles();
+
+ public IChartGrid getGrid();
+
+ public IShapeMarker[] getShapeMarkers();
+
+ public IRangeMarker[] getRangeMarkers();
+
+ public IFillArea[] getFillAreas();
+}
diff --git a/contrib/com/codecommit/wicket/IFillArea.java b/contrib/com/codecommit/wicket/IFillArea.java new file mode 100644 index 00000000..3ba7f0a3 --- /dev/null +++ b/contrib/com/codecommit/wicket/IFillArea.java @@ -0,0 +1,21 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public interface IFillArea {
+
+ public AreaFillType getType();
+
+ public Color getColor();
+
+ public int getStartIndex();
+
+ // unnecessary if BOTTOM
+ public int getEndIndex();
+}
diff --git a/contrib/com/codecommit/wicket/ILineStyle.java b/contrib/com/codecommit/wicket/ILineStyle.java new file mode 100644 index 00000000..873debef --- /dev/null +++ b/contrib/com/codecommit/wicket/ILineStyle.java @@ -0,0 +1,16 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public interface ILineStyle {
+
+ public int getThickness();
+
+ public int getSegmentLength();
+
+ public int getBlankLength();
+}
diff --git a/contrib/com/codecommit/wicket/ILinearGradientFill.java b/contrib/com/codecommit/wicket/ILinearGradientFill.java new file mode 100644 index 00000000..8ed51de5 --- /dev/null +++ b/contrib/com/codecommit/wicket/ILinearGradientFill.java @@ -0,0 +1,18 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public interface ILinearGradientFill extends IChartFill {
+
+ public int getAngle();
+
+ public Color[] getColors();
+
+ public double[] getOffsets();
+}
diff --git a/contrib/com/codecommit/wicket/ILinearStripesFill.java b/contrib/com/codecommit/wicket/ILinearStripesFill.java new file mode 100644 index 00000000..534896f9 --- /dev/null +++ b/contrib/com/codecommit/wicket/ILinearStripesFill.java @@ -0,0 +1,18 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public interface ILinearStripesFill extends IChartFill {
+
+ public int getAngle();
+
+ public Color[] getColors();
+
+ public double[] getWidths();
+}
diff --git a/contrib/com/codecommit/wicket/IRangeMarker.java b/contrib/com/codecommit/wicket/IRangeMarker.java new file mode 100644 index 00000000..1cc30407 --- /dev/null +++ b/contrib/com/codecommit/wicket/IRangeMarker.java @@ -0,0 +1,20 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public interface IRangeMarker {
+
+ public RangeType getType();
+
+ public Color getColor();
+
+ public double getStart();
+
+ public double getEnd();
+}
diff --git a/contrib/com/codecommit/wicket/IShapeMarker.java b/contrib/com/codecommit/wicket/IShapeMarker.java new file mode 100644 index 00000000..626eccb4 --- /dev/null +++ b/contrib/com/codecommit/wicket/IShapeMarker.java @@ -0,0 +1,22 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public interface IShapeMarker {
+
+ public MarkerType getType();
+
+ public Color getColor();
+
+ public int getIndex();
+
+ public double getPoint();
+
+ public int getSize();
+}
diff --git a/contrib/com/codecommit/wicket/ISolidFill.java b/contrib/com/codecommit/wicket/ISolidFill.java new file mode 100644 index 00000000..f97b064e --- /dev/null +++ b/contrib/com/codecommit/wicket/ISolidFill.java @@ -0,0 +1,13 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public interface ISolidFill extends IChartFill {
+ public Color getColor();
+}
diff --git a/contrib/com/codecommit/wicket/LineStyle.java b/contrib/com/codecommit/wicket/LineStyle.java new file mode 100644 index 00000000..0b1eade7 --- /dev/null +++ b/contrib/com/codecommit/wicket/LineStyle.java @@ -0,0 +1,43 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public class LineStyle implements ILineStyle {
+ private int blankLength = -1;
+ private int segmentLength = -1;
+ private int thickness = -1;
+
+ public LineStyle(int thickness, int segmentLength, int blankLength) {
+ this.thickness = thickness;
+ this.segmentLength = segmentLength;
+ this.blankLength = blankLength;
+ }
+
+ public int getBlankLength() {
+ return blankLength;
+ }
+
+ public int getSegmentLength() {
+ return segmentLength;
+ }
+
+ public int getThickness() {
+ return thickness;
+ }
+
+ public void setBlankLength(int blankLength) {
+ this.blankLength = blankLength;
+ }
+
+ public void setSegmentLength(int segmentLength) {
+ this.segmentLength = segmentLength;
+ }
+
+ public void setThickness(int thickness) {
+ this.thickness = thickness;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/LinearGradientFill.java b/contrib/com/codecommit/wicket/LinearGradientFill.java new file mode 100644 index 00000000..090a9a8a --- /dev/null +++ b/contrib/com/codecommit/wicket/LinearGradientFill.java @@ -0,0 +1,49 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public class LinearGradientFill implements ILinearGradientFill {
+ private int angle = -1;
+ private Color[] colors;
+ private double[] offsets;
+
+ public LinearGradientFill(int angle, Color[] colors, double[] offsets) {
+ if (colors.length != offsets.length) {
+ throw new IllegalArgumentException("Must be same number of colors as offsets");
+ }
+
+ this.angle = angle;
+ this.colors = colors;
+ this.offsets = offsets;
+ }
+
+ public int getAngle() {
+ return angle;
+ }
+
+ public Color[] getColors() {
+ return colors;
+ }
+
+ public double[] getOffsets() {
+ return offsets;
+ }
+
+ public void setAngle(int angle) {
+ this.angle = angle;
+ }
+
+ public void setColors(Color[] colors) {
+ this.colors = colors;
+ }
+
+ public void setOffsets(double[] offsets) {
+ this.offsets = offsets;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/LinearStripesFill.java b/contrib/com/codecommit/wicket/LinearStripesFill.java new file mode 100644 index 00000000..52b6f1e0 --- /dev/null +++ b/contrib/com/codecommit/wicket/LinearStripesFill.java @@ -0,0 +1,49 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public class LinearStripesFill implements ILinearStripesFill {
+ private int angle = -1;
+ private Color[] colors;
+ private double[] widths;
+
+ public LinearStripesFill(int angle, Color[] colors, double[] widths) {
+ if (colors.length != widths.length) {
+ throw new IllegalArgumentException("Must be same number of colors as widths");
+ }
+
+ this.angle = angle;
+ this.colors = colors;
+ this.widths = widths;
+ }
+
+ public int getAngle() {
+ return angle;
+ }
+
+ public Color[] getColors() {
+ return colors;
+ }
+
+ public double[] getWidths() {
+ return widths;
+ }
+
+ public void setAngle(int angle) {
+ this.angle = angle;
+ }
+
+ public void setColors(Color[] colors) {
+ this.colors = colors;
+ }
+
+ public void setWidths(double[] widths) {
+ this.widths = widths;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/MarkerType.java b/contrib/com/codecommit/wicket/MarkerType.java new file mode 100644 index 00000000..d14ff543 --- /dev/null +++ b/contrib/com/codecommit/wicket/MarkerType.java @@ -0,0 +1,31 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public enum MarkerType {
+ ARROW("a"),
+ CROSS("c"),
+ DIAMOND("d"),
+ CIRCLE("o"),
+ SQUARE("s"),
+
+ VERTICAL_TO_DATA("v"),
+ VERTICAL_TO_TOP("V"),
+ HORIZONTAL_ACROSS("h"),
+
+ X("x");
+
+ private final String rendering;
+
+ private MarkerType(String rendering) {
+ this.rendering = rendering;
+ }
+
+ public String getRendering() {
+ return rendering;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/Range.java b/contrib/com/codecommit/wicket/Range.java new file mode 100644 index 00000000..d5b7eb62 --- /dev/null +++ b/contrib/com/codecommit/wicket/Range.java @@ -0,0 +1,32 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public class Range {
+ private double start, end;
+
+ public Range(double start, double end) {
+ this.start = start;
+ this.end = end;
+ }
+
+ public double getStart() {
+ return start;
+ }
+
+ public void setStart(double start) {
+ this.start = start;
+ }
+
+ public double getEnd() {
+ return end;
+ }
+
+ public void setEnd(double end) {
+ this.end = end;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/RangeMarker.java b/contrib/com/codecommit/wicket/RangeMarker.java new file mode 100644 index 00000000..a44c95ce --- /dev/null +++ b/contrib/com/codecommit/wicket/RangeMarker.java @@ -0,0 +1,55 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public class RangeMarker implements IRangeMarker {
+ private Color color;
+ private double end = -1;
+ private double start = -1;
+ private RangeType type;
+
+ public RangeMarker(RangeType type, Color color, double start, double end) {
+ this.type = type;
+ this.color = color;
+ this.start = start;
+ this.end = end;
+ }
+
+ public Color getColor() {
+ return color;
+ }
+
+ public double getEnd() {
+ return end;
+ }
+
+ public double getStart() {
+ return start;
+ }
+
+ public RangeType getType() {
+ return type;
+ }
+
+ public void setColor(Color color) {
+ this.color = color;
+ }
+
+ public void setEnd(double end) {
+ this.end = end;
+ }
+
+ public void setStart(double start) {
+ this.start = start;
+ }
+
+ public void setType(RangeType type) {
+ this.type = type;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/RangeType.java b/contrib/com/codecommit/wicket/RangeType.java new file mode 100644 index 00000000..7a86d411 --- /dev/null +++ b/contrib/com/codecommit/wicket/RangeType.java @@ -0,0 +1,22 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+/**
+ * @author Daniel Spiewak
+ */
+public enum RangeType {
+ HORIZONTAL("r"),
+ VERTICAL("R");
+
+ private final String rendering;
+
+ private RangeType(String rendering) {
+ this.rendering = rendering;
+ }
+
+ public String getRendering() {
+ return rendering;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/ShapeMarker.java b/contrib/com/codecommit/wicket/ShapeMarker.java new file mode 100644 index 00000000..88d1aa14 --- /dev/null +++ b/contrib/com/codecommit/wicket/ShapeMarker.java @@ -0,0 +1,65 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public class ShapeMarker implements IShapeMarker {
+ private Color color;
+ private int index = -1;
+ private double point = -1;
+ private int size = -1;
+ private MarkerType type;
+
+ public ShapeMarker(MarkerType type, Color color, int index, double point, int size) {
+ this.type = type;
+ this.color = color;
+ this.index = index;
+ this.point = point;
+ this.size = size;
+ }
+
+ public Color getColor() {
+ return color;
+ }
+
+ public int getIndex() {
+ return index;
+ }
+
+ public double getPoint() {
+ return point;
+ }
+
+ public int getSize() {
+ return size;
+ }
+
+ public MarkerType getType() {
+ return type;
+ }
+
+ public void setColor(Color color) {
+ this.color = color;
+ }
+
+ public void setIndex(int index) {
+ this.index = index;
+ }
+
+ public void setPoint(double point) {
+ this.point = point;
+ }
+
+ public void setSize(int size) {
+ this.size = size;
+ }
+
+ public void setType(MarkerType type) {
+ this.type = type;
+ }
+}
diff --git a/contrib/com/codecommit/wicket/SolidFill.java b/contrib/com/codecommit/wicket/SolidFill.java new file mode 100644 index 00000000..dac8734a --- /dev/null +++ b/contrib/com/codecommit/wicket/SolidFill.java @@ -0,0 +1,25 @@ +/*
+ * Created on Dec 11, 2007
+ */
+package com.codecommit.wicket;
+
+import java.awt.Color;
+
+/**
+ * @author Daniel Spiewak
+ */
+public class SolidFill implements ISolidFill {
+ private Color color;
+
+ public SolidFill(Color color) {
+ this.color = color;
+ }
+
+ public Color getColor() {
+ return color;
+ }
+
+ public void setColor(Color color) {
+ this.color = color;
+ }
+}
|