/* * */ package ext.egantt.drawing.module; import java.awt.Color; import java.awt.Paint; import java.util.Iterator; import java.util.List; import org.ash.util.Options; import com.egantt.awt.graphics.GraphicsContext; import com.egantt.awt.paint.VerticalGradientPaint; import com.egantt.model.drawing.ContextResources; import com.egantt.model.drawing.DrawingContext; import ext.egantt.drawing.DrawingModule; import ext.egantt.drawing.context.GradientColorContext; import ext.egantt.drawing.context.GradientColorContext.LocalColorContext; public class GradientColorModule implements DrawingModule { public static final class LocalColorContext implements GraphicsContext { public Object get(Object key, Object type) { return "Paint".equals(type) ? color : null; } public Paint getPaint() { return color; } protected final Paint color; public LocalColorContext(Color color) { this.color = new VerticalGradientPaint(color, color); } } public GradientColorModule() { } public void initialise(DrawingContext attributes) { attributes.put("GradientColorContext.BLACK", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.BLACK); attributes.put("GradientColorContext.BLUE", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.BLUE); attributes.put("GradientColorContext.CYAN", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.CYAN); attributes.put("GradientColorContext.DARK_GRAY", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.DARK_GRAY); attributes.put("GradientColorContext.GRAY", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.GRAY); attributes.put("GradientColorContext.GREEN", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.GREEN); attributes.put("GradientColorContext.LIGHT_GRAY", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.LIGHT_GRAY); attributes.put("GradientColorContext.MAGENTA", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.MAGENTA); attributes.put("GradientColorContext.ORANGE", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.ORANGE); attributes.put("GradientColorContext.PINK", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.PINK); attributes.put("GradientColorContext.RED", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.RED); attributes.put("GradientColorContext.WHITE", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.WHITE); attributes.put("GradientColorContext.YELLOW", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.YELLOW); attributes.put("GradientColorContext.OTHER0", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.OTHER0); attributes.put("GradientColorContext.CLUSTER11", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.CLUSTER11); attributes.put("GradientColorContext.QUEUEING12", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.QUEUEING12); attributes.put("GradientColorContext.NETWORK7", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.NETWORK7); attributes.put("GradientColorContext.ADMINISTRATIVE3", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.ADMINISTRATIVE3); attributes.put("GradientColorContext.CONFIGURATION2", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.CONFIGURATION2); attributes.put("GradientColorContext.COMMIT5", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.COMMIT5); attributes.put("GradientColorContext.APPLICATION1", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.APPLICATION1); attributes.put("GradientColorContext.CONCURRENCY4", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.CONCURRENCY4); attributes.put("GradientColorContext.SYSTEMIO9", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.SYSTEMIO9); attributes.put("GradientColorContext.USERIO8", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.USERIO8); attributes.put("GradientColorContext.SCHEDULER10", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.SCHEDULER10); attributes.put("GradientColorContext.CPU", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.CPU); } public void initialise(DrawingContext attributes, List eventList) { attributes.put("GradientColorContext.BLACK", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.BLACK); attributes.put("GradientColorContext.BLUE", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.BLUE); attributes.put("GradientColorContext.CYAN", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.CYAN); attributes.put("GradientColorContext.DARK_GRAY", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.DARK_GRAY); attributes.put("GradientColorContext.GRAY", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.GRAY); attributes.put("GradientColorContext.GREEN", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.GREEN); attributes.put("GradientColorContext.LIGHT_GRAY", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.LIGHT_GRAY); attributes.put("GradientColorContext.MAGENTA", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.MAGENTA); attributes.put("GradientColorContext.ORANGE", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.ORANGE); attributes.put("GradientColorContext.PINK", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.PINK); attributes.put("GradientColorContext.RED", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.RED); attributes.put("GradientColorContext.WHITE", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.WHITE); attributes.put("GradientColorContext.YELLOW", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.YELLOW); attributes.put("GradientColorContext.OTHER0", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.OTHER0); attributes.put("GradientColorContext.CLUSTER11", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.CLUSTER11); attributes.put("GradientColorContext.QUEUEING12", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.QUEUEING12); attributes.put("GradientColorContext.NETWORK7", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.NETWORK7); attributes.put("GradientColorContext.ADMINISTRATIVE3", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.ADMINISTRATIVE3); attributes.put("GradientColorContext.CONFIGURATION2", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.CONFIGURATION2); attributes.put("GradientColorContext.COMMIT5", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.COMMIT5); attributes.put("GradientColorContext.APPLICATION1", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.APPLICATION1); attributes.put("GradientColorContext.CONCURRENCY4", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.CONCURRENCY4); attributes.put("GradientColorContext.SYSTEMIO9", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.SYSTEMIO9); attributes.put("GradientColorContext.USERIO8", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.USERIO8); attributes.put("GradientColorContext.SCHEDULER10", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.SCHEDULER10); attributes.put("GradientColorContext.CPU", ContextResources.GRAPHICS_CONTEXT, GradientColorContext.CPU); if (eventList != null){ Iterator iterEvent = eventList.iterator(); while (iterEvent.hasNext()) { String eventName = (String) iterEvent.next(); attributes.put(eventName, ContextResources.GRAPHICS_CONTEXT, new LocalColorContext(Options.getInstance().getColor(eventName))); } } } public void terminate(DrawingContext attributes) { attributes.put("GradientColorContext.BLACK", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.BLUE", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.CYAN", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.DARK_GRAY", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.GRAY", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.GREEN", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.LIGHT_GRAY", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.MAGENTA", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.ORANGE", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.PINK", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.RED", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.WHITE", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.YELLOW", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.OTHER0", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.CLUSTER11", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.QUEUEING12", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.NETWORK7", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.ADMINISTRATIVE3", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.CONFIGURATION2", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.COMMIT5", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.APPLICATION1", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.CONCURRENCY4", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.SYSTEMIO9", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.USERIO8", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.SCHEDULER10", ContextResources.GRAPHICS_CONTEXT, null); attributes.put("GradientColorContext.CPU", ContextResources.GRAPHICS_CONTEXT, null); } public static final String BLACK_GRADIENT_CONTEXT = "GradientColorContext.BLACK"; public static final String BLUE_GRADIENT_CONTEXT = "GradientColorContext.BLUE"; public static final String CYAN_GRADIENT_CONTEXT = "GradientColorContext.CYAN"; public static final String DARK_GRAY_GRADIENT_CONTEXT = "GradientColorContext.DARK_GRAY"; public static final String GRAY_GRADIENT_CONTEXT = "GradientColorContext.GRAY"; public static final String GREEN_GRADIENT_CONTEXT = "GradientColorContext.GREEN"; public static final String LIGHT_GRAY_GRADIENT_CONTEXT = "GradientColorContext.LIGHT_GRAY"; public static final String MAGENTA_GRADIENT_CONTEXT = "GradientColorContext.MAGENTA"; public static final String ORANGE_GRADIENT_CONTEXT = "GradientColorContext.ORANGE"; public static final String PINK_GRADIENT_CONTEXT = "GradientColorContext.PINK"; public static final String RED_GRADIENT_CONTEXT = "GradientColorContext.RED"; public static final String WHITE_GRADIENT_CONTEXT = "GradientColorContext.WHITE"; public static final String YELLOW_GRADIENT_CONTEXT = "GradientColorContext.YELLOW"; public static final String OTHER0_GRADIENT_CONTEXT = "GradientColorContext.OTHER0"; public static final String CLUSTER11_GRADIENT_CONTEXT = "GradientColorContext.CLUSTER11"; public static final String QUEUEING12_GRADIENT_CONTEXT = "GradientColorContext.QUEUEING12"; public static final String NETWORK7_GRADIENT_CONTEXT = "GradientColorContext.NETWORK7"; public static final String ADMINISTRATIVE3_GRADIENT_CONTEXT = "GradientColorContext.ADMINISTRATIVE3"; public static final String CONFIGURATION2_GRADIENT_CONTEXT = "GradientColorContext.CONFIGURATION2"; public static final String COMMIT5_GRADIENT_CONTEXT = "GradientColorContext.COMMIT5"; public static final String APPLICATION1_GRADIENT_CONTEXT = "GradientColorContext.APPLICATION1"; public static final String CONCURRENCY4_GRADIENT_CONTEXT = "GradientColorContext.CONCURRENCY4"; public static final String SYSTEMIO9_GRADIENT_CONTEXT = "GradientColorContext.SYSTEMIO9"; public static final String USERIO8_GRADIENT_CONTEXT = "GradientColorContext.USERIO8"; public static final String SCHEDULER10_GRADIENT_CONTEXT = "GradientColorContext.SCHEDULER10"; public static final String CPU_GRADIENT_CONTEXT = "GradientColorContext.CPU"; }