Example #1
0
    def __init__(self,
                 content,
                 contentSize,
                 color=COLOR["LIGHT"]["MAIN_COLOR"],
                 font_size=20,
                 **kwargs):
        super(ShortenText, self).__init__(**kwargs)
        texture = Short(text=content,
                        color=color,
                        text_size=[contentSize[0], None],
                        shorten=True,
                        shorten_from="right",
                        split_str="",
                        font_size=font_size)
        texture.refresh()
        if texture.texture.height < contentSize[1]:
            texture.text_size = texture.texture.size
        else:
            texture.text_size = contentSize
            texture.max_lines = 5

        texture.render()
        texture.refresh()

        self.texture = Image(texture=texture.texture,
                             pos_hint={
                                 "x": 0,
                                 "top": 1
                             })
        self.size_hint = [None, None]
        self.size = texture.texture.size
        self.add_widget(self.texture)
Example #2
0
    def __init__(self, message, writer=False, **kwargs):
        super(Message, self).__init__(**kwargs)
        MAX_WIDTH = Win.width // 2

        if writer:
            position = {"right": .95, "center_y": .5}
        else:
            position = {"x": .05, "center_y": .5}

        # self.add_widget(Button(size_hint_x = MAX_WIDTH, pos_hint = {"right": 1,"y":0}))

        messageText = Label(text=message,
                            padding=[3.0, 4.0],
                            color=COLOR["LIGHT"]["MAIN_COLOR"],
                            font="20px")
        messageText.refresh()
        if messageText.texture.size[0] <= MAX_WIDTH:
            messageText.text_size = [messageText.texture.size[0], None]
        else:
            messageText.text_size = [MAX_WIDTH, None]
        messageText.refresh()
        print(MAX_WIDTH, messageText.texture.size, messageText.text_size)
        self.size_hint_y = None
        self.height = messageText.texture.size[1]

        self.add_widget(
            Button(pos_hint=position,
                   size_hint=[None, None],
                   width=messageText.texture.size[0] + 4,
                   height=self.height + 2,
                   background_normal="images/backLayout.png",
                   background_down="images/backLayout.png",
                   background_color=[.75, .75, .75, 1]))
        self.add_widget(
            Button(pos_hint=position,
                   size_hint_x=None,
                   width=messageText.texture.size[0],
                   background_normal="images/backLayout.png",
                   background_down="images/backLayout.png"))
        messageImage = Image(texture=messageText.texture,
                             size_hint_x=None,
                             width=messageText.texture.size[0],
                             pos_hint=position)

        self.add_widget(messageImage)