// XAAL toolkit // Copyright (C) 2009 Ville Karavirta // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program. If not, see . package xaal.objects.graphical; import xaal.objects.Xaal; public class Square extends Rectangle { public Square(Xaal xaalDoc) { super(xaalDoc); } public Square(Xaal xaalDoc, String id) { super(xaalDoc, id); } public void setLength(int length) { Coordinate end = new Coordinate(getXaal()); end.setX(getStartCoordinate().getX() + length); end.setY(getStartCoordinate().getY() + length); super.setEndCoordinate(end); } /** Only squares are accepted. */ // TODO Elaborate the doc comment public void setEndCoordinate(Coordinate end) { if (end.getX() - getStartCoordinate().getX() == end.getY() - getStartCoordinate().getY()) super.setEndCoordinate(end); } public boolean equalsIgnoreId(GraphicalPrimitive gp) { // just to make it explicit return super.equalsIgnoreId(gp); } }