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)
Exemple #4
0
 def __init__(self, text=None, bold=False):
     Widget.__init__(self)
     BinBaselineCalculator.__init__(self)
     if text is None:
         text = ''
     self.set_widget(gtk.CheckButton())
     self.label = Label(text)
     self._widget.add(self.label._widget)
     self.label._widget.show()
     self.create_signal('toggled')
     self.forward_signal('toggled')
     if bold:
         self.label.set_bold(True)
Exemple #5
0
 def __init__(self, text, style='normal'):
     Widget.__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)
     self._widget.add(self.label._widget)
     self.label._widget.show()
Exemple #6
0
 def __init__(self, text=None, bold=False):
     Widget.__init__(self)
     BinBaselineCalculator.__init__(self)
     if text is None:
         text = ''
     self.set_widget(gtk.CheckButton())
     self.label = Label(text)
     self._widget.add(self.label._widget)
     self.label._widget.show()
     self.create_signal('toggled')
     self.forward_signal('toggled')
     if bold:
         self.label.set_bold(True)
Exemple #7
0
class Checkbox(Widget, BinBaselineCalculator):
    """Widget that the user can toggle on or off."""

    def __init__(self, text=None, bold=False):
        Widget.__init__(self)
        BinBaselineCalculator.__init__(self)
        if text is None:
            text = ''
        self.set_widget(gtk.CheckButton())
        self.label = Label(text)
        self._widget.add(self.label._widget)
        self.label._widget.show()
        self.create_signal('toggled')
        self.forward_signal('toggled')
        if bold:
            self.label.set_bold(True)

    def get_checked(self):
        return self._widget.get_active()

    def set_checked(self, value):
        self._widget.set_active(value)

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

    def get_text_padding(self):
        """
        Returns the amount of space the checkbox takes up before the label.
        """
        indicator_size = self._widget.style_get_property('indicator-size')
        indicator_spacing = self._widget.style_get_property(
            'indicator-spacing')
        focus_width = self._widget.style_get_property('focus-line-width')
        focus_padding = self._widget.style_get_property('focus-padding')
        return (indicator_size + 3 * indicator_spacing + 2 * (focus_width +
                focus_padding))
Exemple #8
0
class Checkbox(Widget, BinBaselineCalculator):
    """Widget that the user can toggle on or off."""
    def __init__(self, text=None, bold=False):
        Widget.__init__(self)
        BinBaselineCalculator.__init__(self)
        if text is None:
            text = ''
        self.set_widget(gtk.CheckButton())
        self.label = Label(text)
        self._widget.add(self.label._widget)
        self.label._widget.show()
        self.create_signal('toggled')
        self.forward_signal('toggled')
        if bold:
            self.label.set_bold(True)

    def get_checked(self):
        return self._widget.get_active()

    def set_checked(self, value):
        self._widget.set_active(value)

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

    def get_text_padding(self):
        """
        Returns the amount of space the checkbox takes up before the label.
        """
        indicator_size = self._widget.style_get_property('indicator-size')
        indicator_spacing = self._widget.style_get_property(
            'indicator-spacing')
        focus_width = self._widget.style_get_property('focus-line-width')
        focus_padding = self._widget.style_get_property('focus-padding')
        return (indicator_size + 3 * indicator_spacing + 2 *
                (focus_width + focus_padding))
Exemple #9
0
class Button(Widget, BinBaselineCalculator):
    def __init__(self, text, style='normal'):
        Widget.__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)
        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 #10
0
 def __init__(self):
     Label.__init__(self)
     self.create_signal("clicked")
Exemple #11
0
 def __init__(self):
     Label.__init__(self)
     self.create_signal("clicked")