def __init__(self, tab_type, selected_tabs): Display.__init__(self) self.widget = widgetset.Scroller(False, True) alignment = widgetset.Alignment(xalign=0.5, yalign=0.0, xscale=1) alignment.add(tabcontroller.StoresTab()) self.widget.add(alignment)
def pad(widget, top=0, bottom=0, left=0, right=0): """Wrap a widget in an Alignment that will pad it. """ alignment = widgetset.Alignment(xscale=1, yscale=1) alignment.set_padding(top, bottom, left, right) alignment.add(widget) return alignment
def align(widget, xalign=0, yalign=0, xscale=0, yscale=0, top_pad=0, bottom_pad=0, left_pad=0, right_pad=0): """Create an alignment, then add widget to it and return the alignment. """ alignment = widgetset.Alignment(xalign, yalign, xscale, yscale) alignment.set_padding(top_pad, bottom_pad, left_pad, right_pad) alignment.add(widget) return alignment
def __init__(self, tab_type, selected_tabs): Display.__init__(self) text = '\n'.join(tab.name for tab in selected_tabs) label = widgetset.Label(text) label.set_size(3) label.set_bold(True) label.set_color((1.0, 0, 0)) alignment = widgetset.Alignment(xalign=0.5, yalign=0.0) alignment.add(label) self.widget = alignment
def add_to_table(self, table, row, pad_bottom=0): baselines = [self._get_baseline(widget) for widget, _, _, _, _, _ \ in self._packing] max_baseline = max(baselines) column = 0 for (widget, span, xalign, xscale, pad_left, pad_right), baseline in \ zip(self._packing, baselines): if baseline > -1: bottom_pad = pad_bottom + max_baseline - baseline yalign = 1.0 else: bottom_pad = pad_bottom yalign = 0.0 alignment = widgetset.Alignment(xalign, yalign, xscale, 0.0) alignment.set_padding(0, bottom_pad, pad_left, pad_right) alignment.add(widget) table.pack(alignment, column, row, column_span=span) column += span
def __init__(self): widgetset.SolidBackground.__init__(self, (0, 0, 0)) vbox = widgetset.VBox() label = widgetset.Label(_( "%(appname)s can't play this file. You may " "be able to open it with a different program", {"appname": app.config.get(prefs.SHORT_APP_NAME)} )) label.set_color((1, 1, 1)) vbox.pack_start(label) table = widgetset.Table(2, 2) table.set_column_spacing(6) self.filename_label = self._make_label('') self.filetype_label = self._make_label('') table.pack(widgetutil.align_left(self._make_heading(_('Filename:'))), 0, 0) table.pack(widgetutil.align_left(self.filename_label), 1, 0) table.pack(widgetutil.align_left(self._make_heading(_('File type:'))), 0, 1) table.pack(widgetutil.align_left(self.filetype_label), 1, 1) vbox.pack_start(widgetutil.align_left(table, top_pad=12)) hbox = widgetset.HBox(spacing=12) reveal_button = widgetset.Button(_('Reveal File')) self.play_externally_button = widgetset.Button(_('Play Externally')) self.play_externally_button.connect('clicked', self._on_play_externally) skip_button = widgetset.Button(_('Skip')) reveal_button.connect('clicked', self._on_reveal) skip_button.connect('clicked', self._on_skip) self.reveal_button_holder = widgetutil.HideableWidget(reveal_button) self.play_externally_button_holder = widgetutil.HideableWidget( self.play_externally_button) hbox.pack_start(self.reveal_button_holder) hbox.pack_start(self.play_externally_button_holder) hbox.pack_start(skip_button) vbox.pack_start(widgetutil.align_center(hbox, top_pad=24)) alignment = widgetset.Alignment(xalign=0.5, yalign=0.5) alignment.add(vbox) self.add(alignment)
def build_widgets(self): self.vlayout = widgetset.VBox(spacing=5) grid = dialogwidgets.ControlGrid() donate_nothanks_textentry = widgetset.TextEntry() donate_nothanks_textentry.set_width(5) prefpanel.attach_integer(donate_nothanks_textentry, prefs.DONATE_NOTHANKS, prefpanel.build_error_image(), prefpanel.create_value_checker(min_=0)) last_donate_time_textentry = widgetset.TextEntry() last_donate_time_textentry.set_width(16) prefpanel.attach_integer(last_donate_time_textentry, prefs.LAST_DONATE_TIME, prefpanel.build_error_image(), prefpanel.create_value_checker(min_=0)) donate_counter_textentry = widgetset.TextEntry() donate_counter_textentry.set_width(5) prefpanel.attach_integer(donate_counter_textentry, prefs.DONATE_COUNTER, prefpanel.build_error_image(), prefpanel.create_value_checker(min_=0)) set_ratelimit_button = widgetset.Button('Force ratelimit') set_ratelimit_button.connect('clicked', self.on_set_ratelimit_clicked) reset_ratelimit_button = widgetset.Button('Force no ratelimit') reset_ratelimit_button.connect('clicked', self.on_reset_ratelimit_clicked) reset_button = widgetset.Button('Reset counters to factory defaults') reset_button.connect('clicked', self.on_reset_clicked) reset_donate_url_button = widgetset.Button('Reset') reset_donate_url_button.connect('clicked', self.on_reset_donate_url_clicked) reset_payment_url_button = widgetset.Button('Reset') reset_payment_url_button.connect('clicked', self.on_reset_payment_url_clicked) self.donate_url_textentry = widgetset.TextEntry() self.donate_url_textentry.set_width(16) self.payment_url_textentry = widgetset.TextEntry() self.payment_url_textentry.set_width(16) run_button = widgetset.Button('Run dialog') run_button.connect('clicked', self.on_run_clicked) grid.pack_label('Set DONATE_NOTHANKS', grid.ALIGN_RIGHT) grid.pack(donate_nothanks_textentry, span=2) grid.end_line(spacing=4) grid.pack_label('Set LAST_DONATE_TIME', grid.ALIGN_RIGHT) grid.pack(last_donate_time_textentry, span=2) grid.end_line(spacing=4) grid.pack_label('Set DONATE_COUNTER', grid.ALIGN_RIGHT) grid.pack(donate_counter_textentry, span=2) grid.end_line(spacing=4) grid.pack(reset_button, grid.FILL, span=3) grid.end_line(spacing=4) hbox = widgetset.HBox() hbox.pack_start(set_ratelimit_button) hbox.pack_start(reset_ratelimit_button) grid.pack(widgetutil.align_center(hbox), grid.FILL, span=3) grid.end_line(spacing=4) grid.pack_label('Use donate url', grid.ALIGN_RIGHT) grid.pack(self.donate_url_textentry) grid.pack(reset_donate_url_button, grid.FILL) grid.end_line(spacing=4) grid.pack_label('Use payment donate url', grid.ALIGN_RIGHT) grid.pack(self.payment_url_textentry) grid.pack(reset_payment_url_button, grid.FILL) grid.end_line(spacing=4) grid.pack(run_button, grid.FILL, span=3) grid.end_line(spacing=12) alignment = widgetset.Alignment(xalign=0.5, yalign=0.5) alignment.set_padding(20, 20, 20, 20) alignment.add(grid.make_table()) return alignment