Exemple #1
0
class Button(Widget, BinBaselineCalculator):
    def __init__(self, text, style='normal', width=None):
        Widget.__init__(self)
        BinBaselineCalculator.__init__(self)
        # We just ignore style here, GTK users expect their own buttons.
        self.set_widget(gtk.Button())
        self.create_signal('clicked')
        self.forward_signal('clicked')
        self.label = Label(text)
        if width:
            current_width = self.label.get_width()
            padding = (width - current_width) // 2
            odd = width - current_width - padding * 2
            alignment = layout.Alignment(0.5, 0.5, 0, 0)
            alignment.set_padding(0, 0, padding, padding + odd)
            alignment.add(self.label)
            self._widget.add(alignment._widget)
        else:
            self._widget.add(self.label._widget)
        self.label._widget.show()

    def set_text(self, title):
        self.label.set_text(title)

    def set_bold(self, bold):
        self.label.set_bold(bold)

    def set_size(self, scale_factor):
        self.label.set_size(scale_factor)

    def set_color(self, color):
        self.label.set_color(color)
Exemple #2
0
class Button(Widget, BinBaselineCalculator):
    def __init__(self, text, style='normal', width=None):
        Widget.__init__(self)
        BinBaselineCalculator.__init__(self)
        # We just ignore style here, GTK users expect their own buttons.
        self.set_widget(gtk.Button())
        self.create_signal('clicked')
        self.forward_signal('clicked')
        self.label = Label(text)
        if width:
            current_width = self.label.get_width()
            padding = (width - current_width) // 2
            odd = width - current_width - padding * 2
            alignment = layout.Alignment(0.5, 0.5, 0, 0)
            alignment.set_padding(0, 0, padding, padding+odd)
            alignment.add(self.label)
            self._widget.add(alignment._widget)
        else:
            self._widget.add(self.label._widget)
        self.label._widget.show()

    def set_text(self, title):
        self.label.set_text(title)

    def set_bold(self, bold):
        self.label.set_bold(bold)

    def set_size(self, scale_factor):
        self.label.set_size(scale_factor)

    def set_color(self, color):
        self.label.set_color(color)
Exemple #3
0
class Button(Widget, BinBaselineCalculator):
    def __init__(self, text, style='normal', width=None):
        Widget.__init__(self)
        BinBaselineCalculator.__init__(self)
        # We just ignore style here, GTK users expect their own buttons.
        self.set_widget(gtk.Button())
        self.create_signal('clicked')
        self.forward_signal('clicked')
        self.label = Label(text)
        # only honor width if its bigger than the width we need to display the
        # label (#18994)
        if width and width > self.label.get_width():
            alignment = layout.Alignment(0.5, 0.5, 0, 0)
            alignment.set_size_request(width, -1)
            alignment.add(self.label)
            self._widget.add(alignment._widget)
        else:
            self._widget.add(self.label._widget)
        self.label._widget.show()

    def set_text(self, title):
        self.label.set_text(title)

    def set_bold(self, bold):
        self.label.set_bold(bold)

    def set_size(self, scale_factor):
        self.label.set_size(scale_factor)

    def set_color(self, color):
        self.label.set_color(color)