Index: trunk/src/scriptbuilder/gui/drawers/TimeSliceDrawer.java
===================================================================
--- trunk/src/scriptbuilder/gui/drawers/TimeSliceDrawer.java	(revision 7)
+++ trunk/src/scriptbuilder/gui/drawers/TimeSliceDrawer.java	(revision 53)
@@ -96,3 +96,25 @@
         }
     }
+    
+    /**
+     * Draw the events in this timeslice. If any exist, draw the slice event
+     * image. If the incident isn't collapsed, draw the event icons as well.
+     *
+     * @param g2d the graphics component
+     * @param slice the timeSlice to draw
+     * @param collapsed if true, don't draw the event icons
+     */
+    public static void DrawScriptBuilderTimeSlice(Graphics2D g2d, TimeSlice slice)
+    {
+        // If this is an empty slice, return
+        if (slice.events.size() == 0)
+        {
+            return;
+        }
+
+        // Draw the slice event icon to show that there are events here
+        g2d.drawImage(getSliceEventImage(), slice.getX()
+                - ScriptBuilderGuiConstants.EVENT_ICON_WIDTH,
+                ScriptBuilderGuiConstants.TIMELINE_EVENT_ICON_MARGIN, null);
+    }
 }
Index: trunk/src/scriptbuilder/gui/drawers/IncidentTimelineDrawer.java
===================================================================
--- trunk/src/scriptbuilder/gui/drawers/IncidentTimelineDrawer.java	(revision 1)
+++ trunk/src/scriptbuilder/gui/drawers/IncidentTimelineDrawer.java	(revision 53)
@@ -41,3 +41,29 @@
         }
     }
+
+    /**
+     * Draw the incident line. Then, utilize TimeSliceDrawer to draw the
+     * timeslices.
+     *
+     * @param g2d the graphics component
+     * @param incident the incident to be drawn
+     */
+    public static void DrawScriptBuilderTimeline(Graphics2D g2d,
+            ScriptIncident incident)
+    {
+        // Draw the timeline
+        g2d.setColor(incident.color);
+        g2d.fillRect(incident.offset / ScriptBuilderGuiConstants.HORIZONTAL_TICK_RESOLUTION
+                * ScriptBuilderGuiConstants.PIXEL_WIDTH_PER_HORIZONTAL_TICK,
+                ScriptBuilderGuiConstants.TIMELINE_TOP_MARGIN,
+                incident.length / ScriptBuilderGuiConstants.HORIZONTAL_TICK_RESOLUTION
+                * ScriptBuilderGuiConstants.PIXEL_WIDTH_PER_HORIZONTAL_TICK,
+                ScriptBuilderGuiConstants.TIMELINE_HEIGHT);
+
+        // Draw each time slice
+        for (TimeSlice slice : incident.getSlices())
+        {
+            TimeSliceDrawer.DrawScriptBuilderTimeSlice(g2d, slice);
+        }
+    }
 }
