setShape(null);
setThickness(null);
setArcExtentInDegrees(null);
} else {
// Search the common properties among selected walls
Wall firstWall = selectedWalls.get(0);
boolean multipleSelection = selectedWalls.size() > 1;
setEditablePoints(!multipleSelection);
// Search the common xStart value among walls
Float xStart = firstWall.getXStart();
for (int i = 1; i < selectedWalls.size(); i++) {
if (!xStart.equals(selectedWalls.get(i).getXStart())) {
xStart = null;
break;
}
}
setXStart(xStart);
// Search the common yStart value among walls
Float yStart = firstWall.getYStart();
for (int i = 1; i < selectedWalls.size(); i++) {
if (!yStart.equals(selectedWalls.get(i).getYStart())) {
yStart = null;
break;
}
}
setYStart(yStart);
// Search the common xEnd value among walls
Float xEnd = firstWall.getXEnd();
for (int i = 1; i < selectedWalls.size(); i++) {
if (!xEnd.equals(selectedWalls.get(i).getXEnd())) {
xEnd = null;
break;
}
}
setXEnd(xEnd);
// Search the common yEnd value among walls
Float yEnd = firstWall.getYEnd();
for (int i = 1; i < selectedWalls.size(); i++) {
if (!yEnd.equals(selectedWalls.get(i).getYEnd())) {
yEnd = null;
break;
}
}
setYEnd(yEnd);
// Search the common left side color among walls
Integer leftSideColor = firstWall.getLeftSideColor();
if (leftSideColor != null) {
for (int i = 1; i < selectedWalls.size(); i++) {
if (!leftSideColor.equals(selectedWalls.get(i).getLeftSideColor())) {
leftSideColor = null;
break;
}
}
}
setLeftSideColor(leftSideColor);
// Search the common left side texture among walls
HomeTexture leftSideTexture = firstWall.getLeftSideTexture();
if (leftSideTexture != null) {
for (int i = 1; i < selectedWalls.size(); i++) {
if (!leftSideTexture.equals(selectedWalls.get(i).getLeftSideTexture())) {
leftSideTexture = null;
break;
}
}
}
getLeftSideTextureController().setTexture(leftSideTexture);
if (leftSideColor != null) {
setLeftSidePaint(WallPaint.COLORED);
} else if (leftSideTexture != null) {
setLeftSidePaint(WallPaint.TEXTURED);
} else {
setLeftSidePaint(null);
}
// Search the common left side shininess value among walls
Float leftSideShininess = firstWall.getLeftSideShininess();
for (int i = 1; i < selectedWalls.size(); i++) {
if (!leftSideShininess.equals(selectedWalls.get(i).getLeftSideShininess())) {
leftSideShininess = null;
break;
}
}
setLeftSideShininess(leftSideShininess);
// Search the common right side color among walls
Integer rightSideColor = firstWall.getRightSideColor();
if (rightSideColor != null) {
for (int i = 1; i < selectedWalls.size(); i++) {
if (!rightSideColor.equals(selectedWalls.get(i).getRightSideColor())) {
rightSideColor = null;
break;
}
}
}
setRightSideColor(rightSideColor);
// Search the common right side texture among walls
HomeTexture rightSideTexture = firstWall.getRightSideTexture();
if (rightSideTexture != null) {
for (int i = 1; i < selectedWalls.size(); i++) {
if (!rightSideTexture.equals(selectedWalls.get(i).getRightSideTexture())) {
rightSideTexture = null;
break;
}
}
}
getRightSideTextureController().setTexture(rightSideTexture);
if (rightSideColor != null) {
setRightSidePaint(WallPaint.COLORED);
} else if (rightSideTexture != null) {
setRightSidePaint(WallPaint.TEXTURED);
} else {
setRightSidePaint(null);
}
// Search the common right side shininess value among walls
Float rightSideShininess = firstWall.getRightSideShininess();
for (int i = 1; i < selectedWalls.size(); i++) {
if (!rightSideShininess.equals(selectedWalls.get(i).getRightSideShininess())) {
rightSideShininess = null;
break;
}
}
setRightSideShininess(rightSideShininess);
// Search the common height among walls
Float height = firstWall.getHeight();
// If wall height was never set, use home wall height
if (height == null && firstWall.getHeight() == null) {
height = this.home.getWallHeight();
}
for (int i = 1; i < selectedWalls.size(); i++) {
Wall wall = selectedWalls.get(i);
float wallHeight = wall.getHeight() == null
? this.home.getWallHeight()
: wall.getHeight();
if (height != wallHeight) {
height = null;
break;
}
}