/* draw2: render shadows */ import java.awt.*; public class Draw2 extends Draw1 { Item newItem() { return (Item)(new Item2()); } Item2 item2(int i) { return (Item2)item[i]; } public void renderBg() { super.renderBg(); renderShadow(); } // SHADOWS ARE DRAWN OFFSET IN X AND Y public void renderShadow() { for (int i = 0 ; i < nItems ; i++) { setShadow(i); item2(i).draw(g, 10, 10, 2*item2(i).r); } } // PREPARE TO DRAW THE DROP SHADOW OF AN ITEM public void setShadow(int i) { if (shadowColorData == null) shadowColorData = bgColor().darker(); if (item2(i) != null) item2(i).shadowColor = shadowColorData; g.setColor(shadowColorData); } public Color bgColor() { shadowColorData = null; return super.bgColor(); } Color shadowColorData = null; }