private void drawLineWithBorder(int x1, int y1, int x2, int y2,
int size, int borderSize, Color innerColor, Color borderColor, Graphics2D g) {
Graphics2D temp = g;
Stroke stroke = new BasicStroke(size, BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND);
g.setStroke(stroke);
g.setColor(borderColor);
g.drawLine(x1, y1, x2, y2);
Stroke stroke2 = new BasicStroke(size - (borderSize * 2), BasicStroke.CAP_BUTT, BasicStroke.JOIN_ROUND);
g.setStroke(stroke2);
g.setColor(innerColor);
g.drawLine((x1 - borderSize), (y1 - borderSize), (x2 + borderSize), (y2 + borderSize));
g = temp;
}