/** * File: Landscape.java * Author: Brian Borowski * Date created: August 1, 2011 * Date last modified: January 21, 2013 */ import java.awt.Color; import java.awt.GradientPaint; import java.awt.Graphics; import java.awt.Graphics2D; import javax.swing.JPanel; public class Landscape { private static final int DEFAULT_HEIGHT = 40; private static final Color DARK_GREEN = new Color(0, 50, 0), GREEN = new Color(0, 100, 0); private final JPanel parent; private GradientPaint gradientPaint = null; public Landscape(final JPanel parent) { this.parent = parent; } public int getHeight() { return DEFAULT_HEIGHT; } public void paintComponent(final Graphics g) { final Graphics2D g2d = (Graphics2D)g; final int height = parent.getHeight(), width = parent.getWidth(); if (gradientPaint == null) { gradientPaint = new GradientPaint(0, height - DEFAULT_HEIGHT, DARK_GREEN, 0, height, GREEN); } g2d.setPaint(gradientPaint); g2d.fillRect(0, height - DEFAULT_HEIGHT, width, height); } }