示例#1
0
    def add_input(self, label, default):

        vbox = VBox()
        vbox.set_spacing(12)
        vbox.set_valign(vbox.VALIGN_CENTER)
        self.__vbox.add(vbox, True)

        lbl = Label(label, theme.font_mb_plain, theme.color_mb_text)
        vbox.add(lbl, True)

        entry = TextInput()
        vbox.add(entry, True)

        self.__retrievers.append(lambda: entry.get_text())
示例#2
0
    def add_range(self, label, min_value, max_value, preset):
        def update_label(v):
            value = min_value + v * total
            lbl.set_text(label + " %d" % value)

        vbox = VBox()
        vbox.set_spacing(12)
        vbox.set_valign(vbox.VALIGN_CENTER)
        self.__vbox.add(vbox, True)

        total = max_value - min_value

        lbl = Label(label + " %d" % preset, theme.font_mb_plain,
                    theme.color_mb_text)
        vbox.add(lbl, True)

        slider = HSlider(theme.mb_slider_gauge)
        slider.connect_value_changed(update_label)
        slider.set_value((preset - min_value) / float(total))
        vbox.add(slider, True)

        self.__retrievers.append(lambda: min_value + slider.get_value() *
                                 (max_value - min_value))