001    /**
002     * Created by IntelliJ IDEA.
003     * User: Wei Wang
004     * Date: Nov 28, 2002
005     * Time: 3:12:09 AM
006     */
007    
008    package EVolve.util.Painters;
009    
010    import EVolve.visualization.AutoImage;
011    
012    import java.awt.*;
013    import java.util.Stack;
014    
015    public class StackHotspotPainter extends Painter{
016        private Stack currentStack;
017    
018        public void paint(AutoImage image, int x, int y, int z) {
019    
020            if (z == Integer.MAX_VALUE) {// method return;
021                image.setColor(x,y,Color.black);
022                if (!currentStack.empty()) {
023                    currentStack.pop();
024                    if (!currentStack.empty()) {
025                        image.setColor(x,((Integer)currentStack.peek()).intValue(),Color.red );
026                    }
027                }
028            } else {
029                for (int i=0; i<currentStack.size(); i++) {
030                    image.setColor(x,((Integer)currentStack.get(i)).intValue(),Color.blue);
031                }
032                image.setColor(x,y,Color.red);
033                currentStack.push(new Integer(y));
034            }
035        }
036    
037        public void setStack(Stack stack) {
038            currentStack = stack;
039        }
040    
041    }