// Created by plusminus on 10:07:46 - 26.10.2008 package org.androad.ui.map.overlay.util; import android.graphics.Path; import android.graphics.Point; /** * ManagedPath ensures that <code>moveTo</code> gets called before <code>lineTo</code> gets called for the first time.<br /> * Its only 'managed' for lines! * <b>Info:</b> Where you had to decide whether to call moveTo or lineTo before, now just call lineTo. * @author Nicolas Gramlich */ public class ManagedLinePath extends Path { // =========================================================== // Fields // =========================================================== protected boolean mDidMoveTo = false; // =========================================================== // Methods from SuperClass/Interfaces // =========================================================== public void lineTo(final Point p) { this.lineTo(p.x, p.y); } @Override public void lineTo(final float x, final float y) { if(!this.mDidMoveTo) { this.moveTo(x, y); } else { super.lineTo(x, y); } } @Deprecated public void moveTo(final Point p) { this.moveTo(p.x, p.y); } @Deprecated @Override public void moveTo(final float x, final float y) { this.mDidMoveTo = true; super.moveTo(x, y); } }