private WaypointType getDefaultWaypointType() {
        // potentially restore saved instance state
        if (lastSelectedWaypointType != null) {
            return lastSelectedWaypointType;
        }

        // when editing, use the existing type
        if (waypoint != null && waypoint.getWaypointType() != null) {
            return waypoint.getWaypointType();
        }

        // make default for new waypoint depend on cache type
        switch (cache.getType()) {
            case MYSTERY:
                return WaypointType.FINAL;
            case MULTI:
                return WaypointType.STAGE;
            default:
                return WaypointType.WAYPOINT;
        }
    }
State the Coordinate Calculator was last left in.
main/src/main/java/cgeo/geocaching/EditWaypointActivity.java