コード例 #1
0
    def render(self, renderer):
        if not self.visible():
            return 1 if not self.hidden() else 0

        valid_value = self.is_valid()
        required = False if self.inp is None else self.inp.required

        line = Line()

        checked_str = "  " if valid_value else "  "
        required_str = "* " if required else "  "
        name_str = "{}: ".format(self.name)
        name_color = Colors.EDITING_VALUE if self.is_focused() else (Colors.VALID_VALUE if valid_value else Colors.INVALID_VALUE)

        checked_obj = LineObject(checked_str, 0, {'color': Colors.ERROR})
        required_obj = LineObject(required_str, len(checked_obj), {'color': Colors.IMPORTANT})
        name_obj = LineObject(name_str, len(required_obj), {'color': name_color, 'bold': self.is_focused()})

        line.add(checked_obj)
        line.add(required_obj)
        line.add(name_obj)
        line.render(renderer)

        input_renderer = Renderer(0, -(len(name_obj)), 0, len(name_obj), renderer)

        if self.inp is not None:
            self.inp.render(input_renderer)

        return 1
コード例 #2
0
ファイル: tools.py プロジェクト: eduardoHoefel/dear-tool
    def render(self, renderer):
        height = len(self.options.keys()) + 2
        r2 = Renderer(height, 0,
                      renderer.end_y - renderer.begin_y - height + 1, 0,
                      renderer)
        #r2.render()
        pos_y = 0
        for key in self.options.keys():
            if key == 'b':
                #quit should be the last option
                continue

            pos_y = self.render_option(key, pos_y, r2)

        pos_y = self.render_option('b', height - 3, r2)

        r2.addstr(height - 1, 0, "Choose your option: ")
コード例 #3
0
    def render(self):
        cur_time = time.time()
        if not self.force_next_render and (
                self.last_render is not None and
            (cur_time - self.last_render) < self.update_frequency):
            return

        self.force_next_render = False
        Renderer.reset_cursor()
        self.win.clear()

        for w in self.windows:
            w.set_active(w == self.windows[-1])
            w.render()

        self.refresh()

        self.last_render = time.time()
コード例 #4
0
ファイル: viewer.py プロジェクト: eduardoHoefel/dear-tool
    def render(self, renderer=None):
        super().render()

        scrollbar_renderer = Renderer(-1, 1, 0, self.window.width, self.window)
        self.scroll_bar.render(scrollbar_renderer)

        def renderer_provider(index, pos_y, cursor, item):
            if pos_y is None:
                pos_y = 0

            return pos_y, Renderer(1, -2, pos_y, 1,
                                   self.window.internal_renderer)

        self.cursor.render(renderer_provider)

        return 0
コード例 #5
0
        def renderer_provider(index, pos_y, cursor, item):
            if pos_y is None:
                pos_y = 0

            return pos_y, Renderer(1, -1, pos_y, 0, self.window)
コード例 #6
0
 def renderer_provider(index, pos_y, cursor, item):
     return sizes[index], Renderer(1, sizes[index], 0, positions[index],
                                   renderer)
コード例 #7
0
 def renderer_provider(index, pos_y, cursor, item):
     padding = 17
     if pos_y is None:
         pos_y = 0
     return pos_y, Renderer(1, -padding - 2, 1, padding,
                            self.window.internal_renderer)
コード例 #8
0
 def renderer_provider(index, pos_y, cursor, item):
     width = self.get_width(index, renderer.width)
     padding = self.get_padding(index, renderer.width)
     return 0, Renderer(0, width, 0, padding, renderer)
コード例 #9
0
ファイル: viewer.py プロジェクト: eduardoHoefel/dear-tool
        def renderer_provider(index, pos_y, cursor, item):
            if pos_y is None:
                pos_y = 0

            return pos_y, Renderer(1, -2, pos_y, 1,
                                   self.window.internal_renderer)
コード例 #10
0
        def renderer_provider(index, pos_y, cursor, item):
            if pos_y is None:
                pos_y = 0

            return pos_y, Renderer(1, 0, pos_y, 0, renderer)