package org.geogebra.web.html5.awt; import org.geogebra.ggbjdk.java.awt.DefaultBasicStroke; import org.geogebra.ggbjdk.java.awt.geom.Shape; import com.google.gwt.canvas.dom.client.Context2d.LineCap; import com.google.gwt.canvas.dom.client.Context2d.LineJoin; public class GBasicStrokeW extends DefaultBasicStroke { // Constants final private static LineJoin[] gwtJoins = { LineJoin.MITER, LineJoin.ROUND, LineJoin.BEVEL }; final private static LineCap[] gwtCaps = { LineCap.BUTT, LineCap.ROUND, LineCap.SQUARE }; // Private fields private int lineCap = CAP_BUTT; public GBasicStrokeW(double width, int cap, int join, double miterLimit, double[] dash) { super(width, cap, join, miterLimit, dash); } public GBasicStrokeW(double width, int cap, int join, double miterLimit) { super(width, cap, join, miterLimit); } public GBasicStrokeW(double width, int cap, int join) { super(width, cap, join); } public GBasicStrokeW(double width) { super(width); } public int getLineCap() { return lineCap; } // Methods public Shape createStrokedShape(Shape shape) { return shape; } public static int getJoin(String join) { switch (join.charAt(0)) { case 'r': return JOIN_ROUND; case 'b': return JOIN_BEVEL; } return JOIN_MITER; } public static int getCap(String join) { switch (join.charAt(0)) { case 'r': return CAP_ROUND; case 's': return CAP_SQUARE; } return CAP_BUTT; } public LineCap getEndCapString() { return gwtCaps[getEndCap()]; } public LineJoin getLineJoinString() { return gwtJoins[getLineJoin()]; } }