import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.io.*; import java.util.*; public class HoldShapes extends PositionalGraphic { // The ArrayList shapes holds a list of all your shapes. Look at what paint() does. ArrayList shapes = new ArrayList(); // Note: this is an instance variable so addScoop() can access it. Make sure you instantiate it. IceCreamConePG iceCreamCone; public HoldShapes() { // Instantiate each of your PG objects. Use your setters to set each one up. Then add each // of them to your shapes ArrayList. //------------ You write the code ---------------- } public void addScoop(String color) { //------------ You write the code ---------------- // Call addScoop() in your IceCreamConePG class that takes the color for the new scoop. } @Override public void paint(Graphics g) { // This code loops through and paints all of the shapes. for (PositionalGraphic shape:shapes) { shape.paint(g); } } }