void (final Rectangle rc, final boolean isRow, final Graphics2D g2d, boolean isTop, final boolean haveLeft, final boolean haveRight, final boolean haveLine) { int maxX = (int) rc.getMaxX(); int maxY = (int) rc.getMaxY(); Point linePos = isTop ? new Point(rc.x+1, rc.y+1) : new Point(rc.x+3, rc.y+3); Point markerPos = new Point(rc.x+6, rc.y+6); int midX = (int) rc.getCenterX(); int midY = (int) rc.getCenterY(); if (haveLine) { if (isRow) { g2d.drawLine(linePos.x, midY, markerPos.x, midY); } else { g2d.drawLine(midX, linePos.y, midX, markerPos.y); } } if (haveLeft) { if (isRow) { g2d.drawLine(linePos.x, rc.y, linePos.x, midY); } else { g2d.drawLine(rc.x, linePos.y, midX, linePos.y); } } if (haveRight) { if (isRow) { g2d.drawLine(linePos.x, midY, linePos.x, maxY); } else { g2d.drawLine(midX, linePos.y, maxX, linePos.y); } } }