Ejemplo n.º 1
0
    def build_boxes(self):

        intervals = Intervals()
        intervals.interval_type = self.interval_type
        intervals.x = self.x
        intervals.start = self.start
        intervals.finish = self.finish
        intervals.resolution = self.resolution
        intervals.week_start = self.week_start

        box = Rectangle()
        box.y = self.y
        box.height = self.height
        box.border_rounding = self.box_rounding
        box.border_color = self.box_border_color
        box.border_width = self.box_border_width

        boxes = str()

        for i in intervals.get_intervals():
            box.x = i[0]
            box.width = i[1]
            if i[4] is False:
                box.fill_color = self.ends
            else:
                box.fill_color = self.box_fill
            boxes += box.svg

        return boxes
Ejemplo n.º 2
0
    def build_grid(self):

        intervals = Intervals()
        intervals.interval_type = self.interval_type
        intervals.x = self.x
        intervals.start = self.start
        intervals.finish = self.finish
        intervals.resolution = self.resolution
        intervals.week_start = self.week_start

        line = Line()
        line.y = self.y
        line.dy = self.y + self.height
        line.stroke_color = self.line_color
        line.stroke_width = self.line_width
        line.stroke_dasharray = self.line_dashing

        lines = str()

        for i in intervals.get_intervals():
            line.x = i[0]
            line.dx = line.x
            lines += line.svg

        last_line = self.x + ((self.finish - self.start) * self.resolution)
        line.x = last_line
        line.dx = last_line
        lines += line.svg

        return lines
Ejemplo n.º 3
0
    def build_labels(self):

        intervals = Intervals()
        intervals.interval_type = self.interval_type
        intervals.x = self.x
        intervals.start = self.start
        intervals.finish = self.finish
        intervals.resolution = self.resolution
        intervals.week_start = self.week_start

        date = Date()
        date.week_start = self.week_start
        date.separator = self.separator
        date.date_format = self.date_format

        label = Text()
        label.text_y = self.y
        label.text_translate_y = self.text_y
        label.text_translate_x = self.text_x
        label.font_fill_color = self.font_fill
        label.font_size = self.font_size
        label.font_weight = self.font_weight
        label.font_family = self.font_family
        label.font_style = self.font_style

        labels = str()

        if self.label_type == 'hidden':
            label.text_visibility = 'hidden'

        for i in intervals.get_intervals():
            label.text_x = i[0]
            if i[1] < self.min_label_width:
                label.text = str(
                )  # you could set visibility to hidden but more verbose
            elif self.label_type == 'count' and i[3] == 0:
                label.text = str(
                )  # you could set visibility to hidden but more verbose
            elif self.label_type == 'date':
                date.ordinal_date = i[2]
                label.text = date.get_date()
            else:
                label.text = i[3]  # references count in intervals entry
            labels += label.svg

        return labels