23
23
self.height = height
25
border_offset = self.height * 0.2
26
line_width = self.height * 0.005
28
if border_offset > self.width / 2.0:
29
border_offset = self.width / 2.0
25
31
self.context = self.cairo_create()
27
33
linpat = cairo.LinearGradient(self.width / 2.0, 0.0, self.width / 2.0, self.height);
28
34
linpat.add_color_stop_rgba (0.0, 0.0, 0.0, 0.0, 0.5);
29
linpat.add_color_stop_rgba (1.0, 0.1, 0.1, 0.1, 0.5);
31
self.context.arc(self.height * 0.2, self.height * 0.2,
32
self.height * 0.2, math.pi, 3.0 * math.pi / 2.0)
33
self.context.line_to(self.width - (self.height * 0.2), 0.0)
34
self.context.arc(self.width - (self.height * 0.2),
35
linpat.add_color_stop_rgba (1.0, 1.0, 1.0, 1.0, 0.5);
36
self._draw_cornered_rect(border_offset, line_width)
37
self.context.close_path()
38
self.context.set_source(linpat)
41
self.context.set_source_rgba(1.0, 1.0, 1.0, 1.0)
42
self._draw_cornered_rect(border_offset, line_width)
43
self.context.set_line_width(self.height*0.01);
49
def _draw_cornered_rect(self, border_offset, line_width):
50
""" Draws a cornered rectangle """
52
self.context.arc(border_offset + line_width,
53
border_offset + line_width,
54
border_offset, math.pi, 3.0 * math.pi / 2.0)
55
self.context.line_to(self.width - border_offset, line_width)
56
self.context.arc(self.width - border_offset,
58
border_offset - line_width,
37
59
3.0 * math.pi / 2.0,
39
self.context.line_to(self.width, self.height - (self.height * 0.2))
40
self.context.arc(self.width - (self.height * 0.2),
41
self.height - (self.height * 0.2),
61
self.context.line_to(self.width - line_width, self.height - border_offset)
62
self.context.arc(self.width - border_offset - line_width,
63
self.height - border_offset - line_width,
45
self.context.line_to(self.height * 0.2, self.height)
46
self.context.arc(self.height * 0.2,
47
self.height - (self.height * 0.2),
67
self.context.line_to(border_offset + line_width, self.height - line_width)
68
self.context.arc(border_offset + line_width,
69
self.height - border_offset - line_width,
52
self.context.close_path()
53
self.context.set_source(linpat)
73
self.context.close_path()
59
75
def resize(self, width, height):