def __init__(self): ToolButton.__init__(self) self._property = 'timestamp' self._order = Gtk.SortType.ASCENDING self.props.tooltip = _('Sort view') self.props.icon_name = 'view-lastedit' self.props.hide_tooltip_on_click = False self.palette_invoker.props.toggle_palette = True menu_box = PaletteMenuBox() self.props.palette.set_content(menu_box) menu_box.show() sort_options = [ ('timestamp', 'view-lastedit', _('Sort by date modified')), ('creation_time', 'view-created', _('Sort by date created')), ('filesize', 'view-size', _('Sort by size')), ] for property_, icon, label in sort_options: button = PaletteMenuItem(label) button_icon = Icon(pixel_size=style.SMALL_ICON_SIZE, icon_name=icon) button.set_image(button_icon) button_icon.show() button.connect('activate', self.__sort_type_changed_cb, property_, icon) button.show() menu_box.append_item(button)
def __init__(self): Gtk.ComboBox.__init__(self) ToolButton.__init__(self, icon_name='font-text', tooltip=_('Select font')) self.connect('clicked', self.__font_selection_cb) context = self.get_pango_context() self._init_font_list() self._font_name = 'Sans' font_names = [] for family in context.list_families(): name = family.get_name() if name in self._font_white_list: font_names.append(name) for font_name in sorted(font_names): menu_item = MenuItem(font_name) markup = '<span font="%s">%s</span>' % (font_name, font_name) menu_item.get_children()[0].set_markup(markup) menu_item.connect('activate', self.__menu_activated, font_name) self.props.palette.menu.append(menu_item) menu_item.show() self.show()
def __init__(self, activity, **kwargs): ToolButton.__init__(self, 'edit-cloud', **kwargs) self.set_tooltip(_('Cloud Text')) self.palette_invoker.props.toggle_palette = True self.palette_invoker.props.lock_palette = True self.props.hide_tooltip_on_click = False self._palette = self.get_palette() description_box = PaletteMenuBox() sw = Gtk.ScrolledWindow() sw.set_size_request(int(Gdk.Screen.width() / 3), 5 * style.GRID_CELL_SIZE) sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) self._text_view = Gtk.TextView() self._text_view.set_left_margin(style.DEFAULT_PADDING) self._text_view.set_right_margin(style.DEFAULT_PADDING) self._text_view.set_wrap_mode(Gtk.WrapMode.WORD_CHAR) self._text_buffer = Gtk.TextBuffer() self._text_buffer.set_text(_TEXT) self._text_view.set_buffer(self._text_buffer) self._text_view.connect('focus-in-event', self._text_focus_in_cb) sw.add(self._text_view) description_box.append_item(sw, vertical_padding=0) self._palette.set_content(description_box) description_box.show_all() self.set_expanded(True)
def __init__(self, name): ToolButton.__init__(self) self._name = name self._icon = None self.set_palette_invoker(FrameWidgetInvoker(self)) self.palette_invoker.cache_palette = False self.connect('clicked', self.__clicked_cb)
def __init__(self): ToolButton.__init__(self) self._property = 'timestamp' self._order = Gtk.SortType.ASCENDING self.props.tooltip = _('Sort view') self.props.icon_name = 'view-lastedit' self.props.hide_tooltip_on_click = False self.palette_invoker.props.toggle_palette = True menu_box = PaletteMenuBox() self.props.palette.set_content(menu_box) menu_box.show() for property_, icon, label in self._SORT_OPTIONS: button = PaletteMenuItem(label) button_icon = Icon(icon_size=Gtk.IconSize.MENU, icon_name=icon) button.set_image(button_icon) button_icon.show() button.connect('activate', self.__sort_type_changed_cb, property_, icon) button.show() menu_box.append_item(button)
def __init__(self, activity, **kwargs): ToolButton.__init__(self, 'edit-description', **kwargs) self.set_tooltip(_('Description')) self.palette_invoker.props.toggle_palette = True self.palette_invoker.props.lock_palette = True self.props.hide_tooltip_on_click = False self._palette = self.get_palette() description_box = PaletteMenuBox() sw = Gtk.ScrolledWindow() sw.set_size_request(int(Gdk.Screen.width() / 2), 2 * style.GRID_CELL_SIZE) sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) self._text_view = Gtk.TextView() self._text_view.set_left_margin(style.DEFAULT_PADDING) self._text_view.set_right_margin(style.DEFAULT_PADDING) self._text_view.set_wrap_mode(Gtk.WrapMode.WORD_CHAR) text_buffer = Gtk.TextBuffer() if 'description' in activity.metadata: text_buffer.set_text(activity.metadata['description']) self._text_view.set_buffer(text_buffer) self._text_view.connect('focus-out-event', self.__description_changed_cb, activity) sw.add(self._text_view) description_box.append_item(sw, vertical_padding=0) self._palette.set_content(description_box) description_box.show_all() activity.metadata.connect('updated', self.__jobject_updated_cb)
def __init__(self, page=None, **kwargs): ToolButton.__init__(self, **kwargs) self.page_widget = None self.set_page(page) self.connect("clicked", lambda widget: self.set_expanded(not self.is_expanded())) self.connect_after("draw", self.__drawing_cb) self.connect("hierarchy-changed", self.__hierarchy_changed_cb)
def __init__(self, activity, abi): ToolButton.__init__(self, 'document-save') self.props.tooltip = _('Export') self.props.label = _('Export') for i in self._EXPORT_FORMATS: menu_item = MenuItem(i['title']) menu_item.connect('activate', self.__activate_cb, activity, abi, i) self.props.palette.menu.append(menu_item) menu_item.show()
def __init__(self, icon_name, tooltip_label=None, callback=None, icon_size=Gtk.IconSize.LARGE_TOOLBAR,accelerator=None, **kwargs): icon = Icon(icon_name=icon_name, icon_size=icon_size) ToolButton.__init__(self, icon_widget=icon) if tooltip_label is not None: self.set_tooltip(tooltip_label) if callback is not None: self.connect('clicked', callback)
def __init__(self, **kwargs): ToolButton.__init__(self, **kwargs) self.selected_button = None self.palette_invoker.props.toggle_palette = True self.props.hide_tooltip_on_click = False if self.props.palette: self.__palette_cb(None, None) self.connect('notify::palette', self.__palette_cb)
def __init__(self, device): ToolButton.__init__(self) self._bus = dbus.SystemBus() self._device = device self._device_props = None self._flags = 0 self._ssid = '' self._display_name = '' self._mode = network.NM_802_11_MODE_UNKNOWN self._strength = 0 self._frequency = 0 self._device_state = None self._color = None self._active_ap_op = None self._icon = PulsingIcon() self._icon.props.icon_name = get_icon_state('network-wireless', 0) self._inactive_color = xocolor.XoColor( '%s,%s' % (style.COLOR_BUTTON_GREY.get_svg(), style.COLOR_TRANSPARENT.get_svg())) self._icon.props.pulse_color = self._inactive_color self._icon.props.base_color = self._inactive_color self.set_icon_widget(self._icon) self._icon.show() self.set_palette_invoker(FrameWidgetInvoker(self)) self.props.hide_tooltip_on_click = False self.palette_invoker.props.toggle_palette = True self._palette = WirelessPalette(self._display_name) self._palette.connect('deactivate-connection', self.__deactivate_connection_cb) self.set_palette(self._palette) self._palette.set_group_id('frame') self._device_props = dbus.Interface(self._device, dbus.PROPERTIES_IFACE) self._device_props.GetAll( network.NM_DEVICE_IFACE, byte_arrays=True, reply_handler=self.__get_device_props_reply_cb, error_handler=self.__get_device_props_error_cb) self._device_props.Get( network.NM_WIRELESS_IFACE, 'ActiveAccessPoint', reply_handler=self.__get_active_ap_reply_cb, error_handler=self.__get_active_ap_error_cb) self._bus.add_signal_receiver( self.__state_changed_cb, signal_name='StateChanged', path=self._device.object_path, dbus_interface=network.NM_DEVICE_IFACE)
def __init__(self, journalactivity): self._journalactivity = journalactivity ToolButton.__init__(self, 'edit-copy') self.props.tooltip = _('Copy') self.connect('clicked', self.__clicked_cb) self.menu_builder = CopyMenuBuilder( self._journalactivity, self.__get_uid_list_cb, self._journalactivity.volume_error_cb, self.get_palette().menu, add_clipboard_menu=False, add_webservices_menu=False)
def __init__(self, activity, **kwargs): ToolButton.__init__(self, **kwargs) icon = _create_activity_icon(activity.metadata) self.set_icon_widget(icon) icon.show() self.props.hide_tooltip_on_click = False self.palette_invoker.props.toggle_palette = True self.props.tooltip = activity.metadata['title'] activity.metadata.connect('updated', self.__jobject_updated_cb)
def __init__(self, file_transfer): ToolButton.__init__(self) self.file_transfer = file_transfer file_transfer.connect("notify::state", self.__notify_state_cb) icon = Icon() self.props.icon_widget = icon icon.show() self.notif_icon = NotificationIcon() self.notif_icon.connect("button-release-event", self.__button_release_event_cb) self.connect("clicked", self.__button_clicked_cb)
def __init__(self, types): ToolButton.__init__(self, 'list-add') self.set_tooltip(_('Add Bibliography Entry')) self.palette_invoker.props.toggle_palette = True self.palette_invoker.props.lock_palette = True self._p = self.get_palette() self._search_box = IconEntry() self._search_box.add_clear_button() self._search_box.set_icon_from_name( ICON_ENTRY_PRIMARY, 'system-search') self._search_box.show() types_store = Gtk.ListStore(str) for i in types: types_store.append([i]) self._filter_model = types_store.filter_new() self._filter_model.set_visible_func(self.__model_filter_cb) self._search_box.connect('changed', lambda *args: self._filter_model.refilter()) self._search_box.connect('activate', self.__search_box_activate_cb) treeview = Gtk.TreeView(self._filter_model) treeview.props.headers_visible = False try: treeview.props.activate_on_single_click = True except AttributeError: pass treeview.get_style_context().add_class('add-new-treeview') treeview.connect('row-activated', self.__row_clicked_cb) treeview.show() r = Gtk.CellRendererText() c = Gtk.TreeViewColumn(_('Type'), r, text=0) treeview.append_column(c) sw = Gtk.ScrolledWindow() sw.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.ALWAYS) sw.props.height_request = 300 sw.add(treeview) sw.show() box = Gtk.Box(orientation=Gtk.Orientation.VERTICAL, spacing=6) box.add(self._search_box) box.add(sw) box.show() self._p.set_content(box)
def __init__(self, file_transfer): ToolButton.__init__(self) self.file_transfer = file_transfer file_transfer.connect('notify::state', self.__notify_state_cb) icon = Icon() self.props.icon_widget = icon icon.show() self.notif_icon = NotificationIcon() self.notif_icon.connect('button-release-event', self.__button_release_event_cb) self.connect('clicked', self.__button_clicked_cb)
def __init__(self, activity, **kwargs): ToolButton.__init__(self, 'font-text', **kwargs) self.set_tooltip(_('Select font')) self.palette_invoker.props.toggle_palette = True self.palette_invoker.props.lock_palette = True self.props.hide_tooltip_on_click = False self._palette = self.get_palette() font_box = PaletteMenuBox() font_box.append_item(activity.font_palette_content, vertical_padding=0) self._palette.set_content(font_box) font_box.show_all() self.set_expanded(True)
def __init__(self): ToolButton.__init__(self) self._property = 'timestamp' self._order = Gtk.SortType.ASCENDING self.props.tooltip = _('Sort view') self.props.icon_name = 'view-lastedit' for property_, icon, label in self._SORT_OPTIONS: button = MenuItem(icon_name=icon, text_label=label) button.connect('activate', self.__sort_type_changed_cb, property_, icon) button.show() self.props.palette.menu.insert(button, -1)
def __init__(self, **kwargs): self._xo_color = XoColor('insensitive') self._icon_name = None self._direction = 'vertical' self._progress = 0.0 ToolButton.__init__(self, **kwargs) # GObject should do this, but something down the ToolButton chain of # parents is not passing the kwargs to GObject if 'xo_color' in kwargs: self.props.xo_color = kwargs['xo_color'] if 'icon_name' in kwargs: self.props.icon_name = kwargs['icon_name'] if 'direction' in kwargs: self.props.direction = kwargs['direction'] self._updated()
def __init__(self, icon_name, text, cb, help_cb=None, alt_html=''): ToolButton.__init__(self) if _icon_exists(icon_name): self.props.icon_name = icon_name else: if alt_html == '': alt_html = icon_name label = Gtk.Label() label.set_markup(alt_html) label.show() self.set_label_widget(label) self.create_palette(text, help_cb) self.connect('clicked', cb)
def __init__(self, icon_name, scroll_direction): ToolButton.__init__(self) self._viewport = None self._scroll_direction = scroll_direction self.set_size_request(style.GRID_CELL_SIZE, style.GRID_CELL_SIZE) self.icon = Icon(icon_name=icon_name, pixel_size=style.SMALL_ICON_SIZE) # The alignment is a hack to work around Gtk.ToolButton code # that sets the icon_size when the icon_widget is a Gtk.Image alignment = Gtk.Alignment(xalign=0.5, yalign=0.5) alignment.add(self.icon) self.set_icon_widget(alignment) alignment.show_all() self.connect('clicked', self._clicked_cb)
def __init__(self, device, state): ToolButton.__init__(self) self._bus = dbus.SystemBus() self._device = device self._device_props = None self._device_state = None self._channel = 0 self._icon = PulsingIcon(icon_name=self._ICON_NAME) self._inactive_color = xocolor.XoColor( '%s,%s' % (style.COLOR_BUTTON_GREY.get_svg(), style.COLOR_TRANSPARENT.get_svg())) self._icon.props.pulse_color = profile.get_color() self._icon.props.base_color = self._inactive_color self.set_icon_widget(self._icon) self._icon.show() self.set_palette_invoker(FrameWidgetInvoker(self)) self.props.hide_tooltip_on_click = False self.palette_invoker.props.toggle_palette = True title = _('Mesh Network') self._palette = WirelessPalette(GLib.markup_escape_text(title)) self._palette.connect('deactivate-connection', self.__deactivate_connection) self.set_palette(self._palette) self._palette.set_group_id('frame') self.update_state(state) self._device_props = dbus.Interface(self._device, dbus.PROPERTIES_IFACE) self._device_props.Get( network.NM_OLPC_MESH_IFACE, 'ActiveChannel', reply_handler=self.__get_active_channel_reply_cb, error_handler=self.__get_active_channel_error_cb) self._bus.add_signal_receiver( self.__wireless_properties_changed_cb, signal_name='PropertiesChanged', path=device.object_path, dbus_interface=network.NM_OLPC_MESH_IFACE)
def __init__(self, invite): ToolButton.__init__(self) self._invite = invite self.connect('clicked', self.__clicked_cb) self.connect('destroy', self.__destroy_cb) bundle_registry = bundleregistry.get_registry() bundle = bundle_registry.get_bundle(invite.get_bundle_id()) self._icon = Icon() self._icon.props.xo_color = invite.get_color() if bundle is not None: self._icon.props.file = bundle.get_icon() else: self._icon.props.icon_name = 'image-missing' self.set_icon_widget(self._icon) self._icon.show() palette = InvitePalette(invite) palette.props.invoker = FrameWidgetInvoker(self) palette.set_group_id('frame') palette.connect('remove-invite', self.__remove_invite_cb) self.set_palette(palette) self._notif_icon = NotificationIcon() self._notif_icon.connect('button-release-event', self.__button_release_event_cb) self._notif_icon.props.xo_color = invite.get_color() if bundle is not None: self._notif_icon.props.icon_filename = bundle.get_icon() else: self._notif_icon.props.icon_name = 'image-missing' frame = jarabe.frame.get_view() frame.add_notification(self._notif_icon, Gtk.CornerType.TOP_LEFT)
def __init__(self, **kwargs): ToolButton.__init__(self, 'back', **kwargs) self.props.tooltip = _('Back') self.props.accelerator = '<Alt>Left'
def __init__(self, **kwargs): ToolButton.__init__(self, 'edit-paste', **kwargs) self.props.tooltip = _('Paste') self.props.accelerator = '<Ctrl>V'
def __init__(self, journalactivity): self._journalactivity = journalactivity ToolButton.__init__(self, 'edit-delete') self.connect('clicked', self.__button_cliecked_cb) self.props.tooltip = _('Erase')
def __init__(self, **kwargs): ToolButton.__init__(self, 'edit-copy', **kwargs) self.props.tooltip = _('Copy')
def __init__(self, activity, **kwargs): ToolButton.__init__(self, 'activity-stop', **kwargs) self.props.tooltip = _('Stop') self.props.accelerator = '<Ctrl>Q' self.connect('clicked', self.__stop_button_clicked_cb, activity) activity.add_stop_button(self)
def __init__(self, journalactivity): ToolButton.__init__(self, 'select-all') self.props.tooltip = _('Select all') self._journalactivity = journalactivity self.connect('clicked', self.__do_select_all)
def __init__(self, **kwargs): ToolButton.__init__(self, 'edit-redo', **kwargs) self.props.tooltip = _('Redo')
def __init__(self, **kwargs): ToolButton.__init__(self, **kwargs)
def __init__(self, activity, **kwargs): ToolButton.__init__(self, 'transfer-to', **kwargs) self.props.tooltip = _('Send via CollabWrapper')
def __init__(self, **kwargs): ToolButton.__init__(self, 'edit-copy', **kwargs) self.props.tooltip = _('Copy') self.props.accelerator = '<Ctrl>C'
def __init__(self, **kwargs): ToolButton.__init__(self, 'edit-undo', **kwargs) self.props.tooltip = _('Undo') self.props.accelerator = '<Ctrl>Z'
def __init__(self, activity, **kwargs): ToolButton.__init__(self, 'edit-clear', **kwargs) self.props.tooltip = _('Clear Log')
def __init__(self, **kwargs): ToolButton.__init__(self, 'edit-paste', **kwargs) self.props.tooltip = _('Paste')
def __init__(self, activity, **kwargs): ToolButton.__init__(self, 'activity-stop', **kwargs) self.props.tooltip = _('Stop') self.props.accelerator = '<Ctrl>Q' self.connect('clicked', self.__stop_button_clicked_cb, activity)
def __init__(self, **kwargs): ToolButton.__init__(self, 'edit-redo', **kwargs) self.props.tooltip = _('Redo') # From here, redo will be Ctrl + Y to be consistent with Write activity self.props.accelerator = '<Ctrl>Y'
def __init__(self, journalactivity): self._journalactivity = journalactivity ToolButton.__init__(self, 'edit-copy') self.props.tooltip = _('Copy') self.connect('clicked', self.__clicked_cb) self._menu_builder = None
def __init__(self, activity, **kwargs): ToolButton.__init__(self, 'media-playback-start', **kwargs) self.props.tooltip = _('Ping via CollabWrapper')
def __init__(self, parent_activity, **kwargs): ToolButton.__init__(self, 'add', **kwargs) self.props.tooltip = _('New Game') self.props.accelerator = '<Ctrl>N' self.connect('clicked', self.__new_game_button_clicked_cb, parent_activity)