Exemple #1
0
def do_render(self):
    tick_box_size = 12

    x, y = tick_box_size + self.padding_left + 1, (self.height - tick_box_size) / 2.0
    x, y = int(x) + 0.5, int(y) + 0.5

    stroke = "#999"
    if self.state in ("highlight", "pressed"):
        stroke = "#333"

    self.graphics.rectangle(x, y, tick_box_size, tick_box_size)
    vertical_gradient(self, "#fff", "#edeceb", y, y + tick_box_size)
    self.graphics.fill_preserve()

    self.graphics.stroke(stroke)


    if self.toggled:
        self.graphics.set_line_style(1)
        self.graphics.move_to(x + 2, y + tick_box_size * 0.5)
        self.graphics.line_to(x + tick_box_size * 0.4, y + tick_box_size - 3)
        self.graphics.line_to(x + tick_box_size - 2, y + 2)
        self.graphics.stroke("#333")

    self.graphics.rectangle(0, 0, self.width, self.height)
    self.graphics.new_path()
def do_render(self):
    tick_box_size = 12

    x, y = tick_box_size + self.padding_left + 1, (self.height -
                                                   tick_box_size) / 2.0
    x, y = int(x) + 0.5, int(y) + 0.5

    stroke = "#999"
    if self.state in ("highlight", "pressed"):
        stroke = "#333"

    self.graphics.rectangle(x, y, tick_box_size, tick_box_size)
    vertical_gradient(self, "#fff", "#edeceb", y, y + tick_box_size)
    self.graphics.fill_preserve()

    self.graphics.stroke(stroke)

    if self.toggled:
        self.graphics.set_line_style(1)
        self.graphics.move_to(x + 2, y + tick_box_size * 0.5)
        self.graphics.line_to(x + tick_box_size * 0.4, y + tick_box_size - 3)
        self.graphics.line_to(x + tick_box_size - 2, y + 2)
        self.graphics.stroke("#333")

    self.graphics.rectangle(0, 0, self.width, self.height)
    self.graphics.new_path()
Exemple #3
0
def do_render(self, *args):
    """ Properties that affect rendering:
        state:   normal / highlight / pressed
        focused: True / False
        enabled: True / False
    """

    self.graphics.set_line_style(width=1)
    self.graphics.rectangle(0.5, 0.5, self.width, self.height, 4)

    if self.state == "highlight":
        vertical_gradient(self, "#fff", "#edeceb", 0, self.height)
        self.graphics.fill_preserve()
    elif self.state == "pressed":
        vertical_gradient(self, "#B9BBC0", "#ccc", 0, self.height)
        self.graphics.fill_preserve()
    else:
        # normal
        vertical_gradient(self, "#fcfcfc", "#e8e7e6", 0, self.height)
        self.graphics.fill_preserve()


    if self.focused:
        self.graphics.stroke("#89ADDA")
    elif self.state == "pressed":
        self.graphics.stroke("#aaa")
    else:
        self.graphics.stroke("#cdcdcd")
def do_render(self, *args):
    """ Properties that affect rendering:
        state:   normal / highlight / pressed
        focused: True / False
        enabled: True / False
    """

    self.graphics.set_line_style(width=1)
    self.graphics.rectangle(0.5, 0.5, self.width, self.height, 4)

    if self.state == "highlight":
        vertical_gradient(self, "#fff", "#edeceb", 0, self.height)
        self.graphics.fill_preserve()
    elif self.state == "pressed":
        vertical_gradient(self, "#B9BBC0", "#ccc", 0, self.height)
        self.graphics.fill_preserve()
    else:
        # normal
        vertical_gradient(self, "#fcfcfc", "#e8e7e6", 0, self.height)
        self.graphics.fill_preserve()

    if self.focused:
        self.graphics.stroke("#89ADDA")
    elif self.state == "pressed":
        self.graphics.stroke("#aaa")
    else:
        self.graphics.stroke("#cdcdcd")
Exemple #5
0
    def render(self, surface: pygame.Surface, size_factor: float):
        size = surface.get_size()
        if size != self.last_size:
            self.last_background = utils.vertical_gradient(
                size, (75, 142, 188, 255), (94, 178, 235, 255))
            self.last_size = size
        surface.blit(self.last_background, (0, 0))

        self.sprites.sort(key=lambda x: (x.type().value, x.z_index()))
        for sprite in self.sprites:
            sprite.render(surface, size_factor)

        s = pygame.Surface((surface.get_width(), surface.get_height()))
        s.set_alpha(150)
        s.fill((0, 0, 0))
        surface.blit(s, (0, 0))

        super().render(surface, size_factor)
Exemple #6
0
def do_render(self):
    self.graphics.set_line_style(width=1)

    x, y, x2, y2 = 0.5, 0.5, 0.5 + self.width, 0.5 + self.height
    if isinstance(self.parent, ui.Group) == False or len(self.parent.sprites) == 1:
        # normal button
        self.graphics.rectangle(0.5, 0.5, self.width, self.height, 4)
    elif self.parent.sprites.index(self) == 0:
        self._rounded_line([(x2, y), (x, y), (x, y2), (x2, y2)], 4)
        self.graphics.line_to(x2, y)
    elif self.parent.sprites.index(self) == len(self.parent.sprites) - 1:
        self._rounded_line([(x, y), (x2, y), (x2, y2), (x, y2)], 4)
        self.graphics.line_to(x, y)
    else:
        self.graphics.rectangle(x, y, x2 - 0.5, y2 - 0.5)

    state = self.state
    if self.toggled:
        state = "pressed"

    # move the label when pressed a bit
    self.label_container.padding_left = 1 if state == "pressed" else 0
    self.label_container.padding_right = -1 if state == "pressed" else 0
    self.label_container.padding_top = 1 if state == "pressed" else 0
    self.label_container.padding_bottom = -1 if state == "pressed" else 0

    if state == "highlight":
        vertical_gradient(self, "#fff", "#edeceb", 0, self.height)
        self.graphics.fill_preserve()
    elif state == "pressed":
        vertical_gradient(self, "#B9BBC0", "#ccc", 0, self.height)
        self.graphics.fill_preserve()
    else:
        # normal
        vertical_gradient(self, "#fcfcfc", "#e8e7e6", 0, self.height)
        self.graphics.fill_preserve()


    if self.focused:
        self.graphics.stroke("#89ADDA")
    elif state == "pressed":
        self.graphics.stroke("#aaa")
    else:
        self.graphics.stroke("#cdcdcd")
def do_render(self):
    self.graphics.set_line_style(width=1)

    x, y, x2, y2 = 0.5, 0.5, 0.5 + self.width, 0.5 + self.height
    if isinstance(self.parent, ui.Group) == False or len(
            self.parent.sprites) == 1:
        # normal button
        self.graphics.rectangle(0.5, 0.5, self.width, self.height, 4)
    elif self.parent.sprites.index(self) == 0:
        self._rounded_line([(x2, y), (x, y), (x, y2), (x2, y2)], 4)
        self.graphics.line_to(x2, y)
    elif self.parent.sprites.index(self) == len(self.parent.sprites) - 1:
        self._rounded_line([(x, y), (x2, y), (x2, y2), (x, y2)], 4)
        self.graphics.line_to(x, y)
    else:
        self.graphics.rectangle(x, y, x2 - 0.5, y2 - 0.5)

    state = self.state
    if self.toggled:
        state = "pressed"

    # move the label when pressed a bit
    self.label_container.padding_left = 1 if state == "pressed" else 0
    self.label_container.padding_right = -1 if state == "pressed" else 0
    self.label_container.padding_top = 1 if state == "pressed" else 0
    self.label_container.padding_bottom = -1 if state == "pressed" else 0

    if state == "highlight":
        vertical_gradient(self, "#fff", "#edeceb", 0, self.height)
        self.graphics.fill_preserve()
    elif state == "pressed":
        vertical_gradient(self, "#B9BBC0", "#ccc", 0, self.height)
        self.graphics.fill_preserve()
    else:
        # normal
        vertical_gradient(self, "#fcfcfc", "#e8e7e6", 0, self.height)
        self.graphics.fill_preserve()

    if self.focused:
        self.graphics.stroke("#89ADDA")
    elif state == "pressed":
        self.graphics.stroke("#aaa")
    else:
        self.graphics.stroke("#cdcdcd")
Exemple #8
0
    def render(self, surface: pygame.Surface, size_factor: float):
        size = surface.get_size()
        if size != self.last_size:
            self.last_background = utils.vertical_gradient(size, (75, 142, 188, 255), (94, 178, 235, 255))
            self.last_size = size
        surface.blit(self.last_background, (0, 0))

        self.sprites.sort(key=lambda x: (x.type().value, x.z_index()))
        for sprite in self.sprites:
            sprite.render(surface, size_factor)

        if int(self.meters) < 0:
            t = (Const.offset_meters * self.running_time) / (Const.offset_meters - self.meters)

            font = pygame.font.Font("res/arcade.ttf", surface.get_height() // 5)
            img = font.render(str(int(t - self.running_time) + 1), True, (0, 0, 0))
            surface.blit(img, (
                surface.get_width() // 2 - img.get_width() // 2,
                surface.get_height() // 2 - img.get_height() // 2
            ))
        else:
            font = pygame.font.Font("res/arcade.ttf", surface.get_height() // 10)
            img = font.render(str(int(self.meters)), True, (0, 0, 0))
            surface.blit(img, (int(surface.get_width() * 0.95) - img.get_width(), int(surface.get_height() * 0.05)))