Parent

Included Modules

Class/Module Index [+]

Quicksearch

TaskJuggler::GanttContainer

The GanttContainer represents a container task (task with sub-tasks).

Public Class Methods

new(lineHeight, xStart, xEnd, y) click to toggle source

Create a GanttContainer object based on the following information: line is a reference to the GanttLine. xStart is the left edge of the task in chart coordinates. xEnd is the right edge. The container extends over the edges due to the shape of the jags.

# File lib/taskjuggler/reports/GanttContainer.rb, line 28
def initialize(lineHeight, xStart, xEnd, y)
  @lineHeight = lineHeight
  @start = xStart
  @end = xEnd
  @y = y
end

Public Instance Methods

addBlockedZones(router) click to toggle source
# File lib/taskjuggler/reports/GanttContainer.rb, line 57
def addBlockedZones(router)
  # Horizontal block
  router.addZone(@start - @@size, @y + (@lineHeight / 2) - @@size - 2,
                 @end - @start + 1 + 2 * @@size, 2 * @@size + 5, true,
                 false)
  # Block for arrowhead.
  router.addZone(@start - @@size - 9, @y + (@lineHeight / 2) - 7, 10, 15,
                 true, true)
  # Vertical block for end cap
  router.addZone(@start - @@size - 2, @y, 2 * @@size + 5, @lineHeight,
                 false, true)
  router.addZone(@end - @@size - 2, @y, 2 * @@size + 5, @lineHeight,
                 false, true)
end
endDepLineEnd() click to toggle source

Return the point [ x, y ] where task end dependency lines should end at.

# File lib/taskjuggler/reports/GanttContainer.rb, line 53
def endDepLineEnd
  [ @end, @y + @lineHeight / 2 ]
end
endDepLineStart() click to toggle source

Return the point [ x, y ] where task end dependency lines should start from.

# File lib/taskjuggler/reports/GanttContainer.rb, line 48
def endDepLineStart
  [ @end + @@size, @y + @lineHeight / 2 ]
end
startDepLineEnd() click to toggle source

Return the point [ x, y ] where task start dependency lines should end at.

# File lib/taskjuggler/reports/GanttContainer.rb, line 42
def startDepLineEnd
  [ @start - @@size, @y + @lineHeight / 2 ]
end
startDepLineStart() click to toggle source

Return the point [ x, y ] where task start dependency lines should start from.

# File lib/taskjuggler/reports/GanttContainer.rb, line 37
def startDepLineStart
  [ @start, @y + @lineHeight / 2 ]
end
to_html() click to toggle source

Convert the abstact representation of the GanttContainer into HTML elements.

# File lib/taskjuggler/reports/GanttContainer.rb, line 74
def to_html
  xStart = @start.to_i
  yCenter = (@lineHeight / 2).to_i
  width = @end.to_i - @start.to_i + 1

  html = []

  # Invisible trigger frame for tooltips.
  html << rectToHTML(xStart - @@size, 0, width + 2 * @@size, @lineHeight,
                     'tj_gantt_frame')

  # The bar
  html << rectToHTML(xStart - @@size, yCenter - @@size,
                     width + 2 * @@size, @@size, 'containerbar')
  # The left jag
  html << jagToHTML(xStart, yCenter)
  # The right jag
  html << jagToHTML(xStart + width, yCenter)

  html
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.