This module contains utility methods to create the canvas Elements with minimal overhead. The element is added to it's current parent and mandatory arguments are enforced. It also eliminates the need to call 'new' methods of each Element.
# File lib/taskjuggler/Painter/Primitives.rb, line 45 def circle(cx, cy, r, attrs = {}) attrs[:cx] = cx attrs[:cy] = cy attrs[:r] = r @elements << (c = Circle.new(attrs)) c end
# File lib/taskjuggler/Painter/Primitives.rb, line 32 def color(*args) Color.new(*args) end
# File lib/taskjuggler/Painter/Primitives.rb, line 53 def ellipse(cx, cy, rx, ry, attrs = {}) attrs[:cx] = cx attrs[:cy] = cy attrs[:rx] = rx attrs[:ry] = ry @elements << (e = Ellipse.new(attrs)) e end
# File lib/taskjuggler/Painter/Primitives.rb, line 40 def group(attrs = {}, &block) @elements << (g = Group.new(attrs, &block)) g end
# File lib/taskjuggler/Painter/Primitives.rb, line 62 def line(x1, y1, x2, y2, attrs = {}) attrs[:x1] = x1 attrs[:y1] = y1 attrs[:x2] = x2 attrs[:y2] = y2 @elements << (l = Line.new(attrs)) l end
# File lib/taskjuggler/Painter/Primitives.rb, line 36 def points(arr) Points.new(arr) end
# File lib/taskjuggler/Painter/Primitives.rb, line 71 def polyline(points, attrs = {}) attrs[:points] = points.is_a?(Array) ? Points.new(points) : points @elements << (l = PolyLine.new(attrs)) l end
Generated with the Darkfish Rdoc Generator 2.