def _update_icon(self): if self._mode == network.NM_802_11_MODE_ADHOC and \ network.is_sugar_adhoc_network(self._ssid): channel = max([1] + [ap.channel for ap in self._access_points.values()]) if self._device_state == network.NM_DEVICE_STATE_ACTIVATED and \ self._active_ap is not None: icon_name = 'network-adhoc-%s-connected' % channel else: icon_name = 'network-adhoc-%s' % channel self.props.icon_name = icon_name icon = self._palette.props.icon icon.props.icon_name = icon_name else: if self._device_state == network.NM_DEVICE_STATE_ACTIVATED and \ self._active_ap is not None: icon_name = '%s-connected' % _AP_ICON_NAME else: icon_name = _AP_ICON_NAME icon_name = get_icon_state(icon_name, self._strength) if icon_name: self.props.icon_name = icon_name icon = self._palette.props.icon icon.props.icon_name = icon_name
def _update_info(self): name = _ICON_NAME current_level = self._model.props.level xo_color = self._color badge_name = None if not self._model.props.present: status = _STATUS_NOT_PRESENT badge_name = None xo_color = XoColor('%s,%s' % (style.COLOR_WHITE.get_svg(), style.COLOR_WHITE.get_svg())) elif self._model.props.charging: status = _STATUS_CHARGING name += '-charging' xo_color = XoColor('%s,%s' % (style.COLOR_WHITE.get_svg(), style.COLOR_WHITE.get_svg())) elif self._model.props.discharging: status = _STATUS_DISCHARGING if current_level <= _WARN_MIN_PERCENTAGE: badge_name = 'emblem-warning' else: status = _STATUS_FULLY_CHARGED self.icon.props.icon_name = get_icon_state(name, current_level, step=-5) self.icon.props.xo_color = xo_color self.icon.props.badge_name = badge_name self.palette.set_info(current_level, self._model.props.time_remaining, status)
def _create_palette(self): icon_name = get_icon_state(_AP_ICON_NAME, self._strength) self._palette_icon = Icon(icon_name=icon_name, icon_size=style.STANDARD_ICON_SIZE, badge_name=self.props.badge_name) label = glib.markup_escape_text(self._display_name) p = palette.Palette(primary_text=label, icon=self._palette_icon) self.menu_box = Gtk.VBox() self._connect_item = PaletteMenuItem(_('Connect')) icon = Icon(icon_size=Gtk.IconSize.MENU, icon_name='dialog-ok') self._connect_item.set_image(icon) self._connect_item.connect('activate', self.__connect_activate_cb) self.menu_box.add(self._connect_item) self._disconnect_item = PaletteMenuItem(_('Disconnect')) icon = Icon(icon_size=Gtk.IconSize.MENU, icon_name='media-eject') self._disconnect_item.set_image(icon) self._disconnect_item.connect('activate', self.__disconnect_activate_cb) self.menu_box.add(self._disconnect_item) p.set_content(self.menu_box) self.menu_box.show_all() self.connect_to_palette_pop_events(p) return p
def _create_palette(self): icon_name = get_icon_state(_AP_ICON_NAME, self._strength) self._palette_icon = Icon(icon_name=icon_name, icon_size=style.STANDARD_ICON_SIZE, badge_name=self.props.badge_name) label = GLib.markup_escape_text(self._display_name) p = palette.Palette(primary_text=label, icon=self._palette_icon) self.menu_box = Gtk.VBox() self._connect_item = PaletteMenuItem(_('Connect')) icon = Icon(icon_size=Gtk.IconSize.MENU, icon_name='dialog-ok') self._connect_item.set_image(icon) self._connect_item.connect('activate', self.__connect_activate_cb) self.menu_box.add(self._connect_item) self._disconnect_item = PaletteMenuItem(_('Disconnect')) icon = Icon(icon_size=Gtk.IconSize.MENU, icon_name='media-eject') self._disconnect_item.set_image(icon) self._disconnect_item.connect('activate', self.__disconnect_activate_cb) self.menu_box.add(self._disconnect_item) p.set_content(self.menu_box) self.menu_box.show_all() self.connect_to_palette_pop_events(p) return p
def _update_info(self): name = _ICON_NAME current_level = self._model.props.level xo_color = self._color badge_name = None self.show() if not self._model.props.present: self.hide() status = _STATUS_NOT_PRESENT elif self._model.props.charging: status = _STATUS_CHARGING name += '-charging' elif self._model.props.discharging: status = _STATUS_DISCHARGING if current_level <= self._model.warning_capacity: badge_name = 'emblem-warning' else: status = _STATUS_FULLY_CHARGED if self._model.props.present: self.icon.props.icon_name = get_icon_state(name, current_level, step=-5) self.icon.props.xo_color = xo_color self.icon.props.badge_name = badge_name self.palette.set_info(current_level, self._model.props.time_remaining, status)
def _update_info(self): name = _ICON_NAME current_level = self._model.props.level xo_color = self._color badge_name = None if not self._model.props.present: status = _STATUS_NOT_PRESENT badge_name = None xo_color = XoColor( '%s,%s' % (style.COLOR_WHITE.get_svg(), style.COLOR_WHITE.get_svg())) elif self._model.props.charging: status = _STATUS_CHARGING name += '-charging' xo_color = XoColor( '%s,%s' % (style.COLOR_WHITE.get_svg(), style.COLOR_WHITE.get_svg())) elif self._model.props.discharging: status = _STATUS_DISCHARGING if current_level <= _WARN_MIN_PERCENTAGE: badge_name = 'emblem-warning' else: status = _STATUS_FULLY_CHARGED self.icon.props.icon_name = get_icon_state(name, current_level, step=-5) self.icon.props.xo_color = xo_color self.icon.props.badge_name = badge_name self.palette.set_info(current_level, self._model.props.time_remaining, status)
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 _update_info(self): name = _ICON_NAME current_level = self._model.props.level xo_color = self._color if self._model.props.muted: name += "-muted" xo_color = XoColor("%s,%s" % (style.COLOR_WHITE.get_svg(), style.COLOR_WHITE.get_svg())) self.icon.props.icon_name = get_icon_state(name, current_level, step=-1) self.icon.props.xo_color = xo_color
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 _setup(self): self._progressbar = Gtk.ProgressBar() self._progressbar.set_show_text(True) self._progressbar.set_fraction(self._completion_level / 100.0) self.pack_start(self._progressbar, True, True, 0) if self._battery_props is None: return level = self._get_battery_level() icon_name = get_icon_state(_ICON_NAME, level, step=-5) self._icon = Icon(icon_name=icon_name) self.pack_start(self._icon, False, False, 0)
def _setup(self): self._progressbar = Gtk.ProgressBar() self._progressbar.props.discrete_blocks = 10 self._progressbar.set_fraction(self._completion_level / 100.0) self.pack_start(self._progressbar, True, True, 0) if self._battery_props is None: return level = self._get_battery_level() icon_name = get_icon_state(_ICON_NAME, level, step=-5) self._icon = Icon(icon_name=icon_name) self.pack_start(self._icon, False, False, 0)
def _update_output_info(self): name = _ICON_NAME current_level = self._audio_output_model.props.level xo_color = self._color if self._audio_output_model.props.muted: name += '-muted' xo_color = XoColor('%s,%s' % (style.COLOR_WHITE.get_svg(), style.COLOR_WHITE.get_svg())) self.icon.props.icon_name = get_icon_state(name, current_level, step=-1) self.icon.props.xo_color = xo_color
def _update_state(self): if self._active_ap_op is not None: state = self._device_state else: state = network.NM_DEVICE_STATE_UNKNOWN if self._mode != network.NM_802_11_MODE_ADHOC or \ network.is_sugar_adhoc_network(self._ssid) is False: if state == network.NM_DEVICE_STATE_ACTIVATED: icon_name = '%s-connected' % 'network-wireless' else: icon_name = 'network-wireless' icon_name = get_icon_state(icon_name, self._strength) if icon_name: self._icon.props.icon_name = icon_name else: channel = network.frequency_to_channel(self._frequency) if state == network.NM_DEVICE_STATE_ACTIVATED: self._icon.props.icon_name = 'network-adhoc-%s-connected' \ % channel else: self._icon.props.icon_name = 'network-adhoc-%s' % channel self._icon.props.base_color = profile.get_color() if state == network.NM_DEVICE_STATE_PREPARE or \ state == network.NM_DEVICE_STATE_CONFIG or \ state == network.NM_DEVICE_STATE_NEED_AUTH or \ state == network.NM_DEVICE_STATE_IP_CONFIG or \ state == network.NM_DEVICE_STATE_IP_CHECK or \ state == network.NM_DEVICE_STATE_SECONDARIES: self._palette.set_connecting() self._icon.props.pulsing = True elif state == network.NM_DEVICE_STATE_ACTIVATED: def _ip_cb(ip): self._palette.set_connected_with_frequency(self._frequency, ip) self._icon.props.pulsing = False _get_ip(self._bus, self._device_props, _ip_cb) else: self._icon.props.badge_name = None self._icon.props.pulsing = False self._icon.props.pulse_color = self._inactive_color self._icon.props.base_color = self._inactive_color self._palette.set_disconnected()
def _update_state(self): if self._active_ap_op is not None: state = self._device_state else: state = network.NM_DEVICE_STATE_UNKNOWN if self._mode != network.NM_802_11_MODE_ADHOC and \ network.is_sugar_adhoc_network(self._ssid) == False: if state == network.NM_DEVICE_STATE_ACTIVATED: icon_name = '%s-connected' % 'network-wireless' else: icon_name = 'network-wireless' icon_name = get_icon_state(icon_name, self._strength) if icon_name: self._icon.props.icon_name = icon_name else: channel = network.frequency_to_channel(self._frequency) if state == network.NM_DEVICE_STATE_ACTIVATED: self._icon.props.icon_name = 'network-adhoc-%s-connected' \ % channel else: self._icon.props.icon_name = 'network-adhoc-%s' % channel self._icon.props.base_color = profile.get_color() if (state >= network.NM_DEVICE_STATE_PREPARE) and \ (state <= network.NM_DEVICE_STATE_IP_CONFIG): self._palette.set_connecting() self._icon.props.pulsing = True elif state == network.NM_DEVICE_STATE_ACTIVATED: address = self._device_props.Get(network.NM_DEVICE_IFACE, 'Ip4Address') self._palette.set_connected_with_frequency(self._frequency, address) self._icon.props.pulsing = False else: self._icon.props.badge_name = None self._icon.props.pulsing = False self._icon.props.pulse_color = self._inactive_color self._icon.props.base_color = self._inactive_color self._palette.set_disconnected()
def _create_palette(self): icon_name = get_icon_state(_AP_ICON_NAME, self._strength) self._palette_icon = Icon(icon_name=icon_name, pixel_size=style.STANDARD_ICON_SIZE, badge_name=self.props.badge_name) p = palette.Palette(primary_text=self._display_name, icon=self._palette_icon) self.menu_box = Gtk.VBox() self._connect_item = PaletteMenuItem(_('Connect')) icon = Icon(pixel_size=style.SMALL_ICON_SIZE, icon_name='dialog-ok') self._connect_item.set_image(icon) self._connect_item.connect('activate', self.__connect_activate_cb) self.menu_box.add(self._connect_item) self._disconnect_item = PaletteMenuItem(_('Disconnect')) icon = Icon(pixel_size=style.SMALL_ICON_SIZE, icon_name='media-eject') self._disconnect_item.set_image(icon) self._disconnect_item.connect('activate', self.__disconnect_activate_cb) self.menu_box.add(self._disconnect_item) self._forget_item = PaletteMenuItem(_('Forget')) icon = Icon(pixel_size=style.SMALL_ICON_SIZE, icon_name='list-remove') self._forget_item.set_image(icon) self._forget_item.connect('activate', self.__forget_activate_cb) self.menu_box.add(self._forget_item) p.set_content(self.menu_box) self.menu_box.show_all() self.connect_to_palette_pop_events(p) return p
def _create_palette(self): icon_name = get_icon_state(_AP_ICON_NAME, self._strength) self._palette_icon = Icon(icon_name=icon_name, pixel_size=style.STANDARD_ICON_SIZE, badge_name=self.props.badge_name) p = palette.Palette(primary_text=self._display_name, icon=self._palette_icon) self.menu_box = Gtk.VBox() self._connect_item = PaletteMenuItem(_('Connect')) icon = Icon(pixel_size=style.SMALL_ICON_SIZE, icon_name='dialog-ok') self._connect_item.set_image(icon) self._connect_item.connect('activate', self.__connect_activate_cb) self.menu_box.add(self._connect_item) self._disconnect_item = PaletteMenuItem(_('Disconnect')) icon = Icon(pixel_size=style.SMALL_ICON_SIZE, icon_name='media-eject') self._disconnect_item.set_image(icon) self._disconnect_item.connect( 'activate', self.__disconnect_activate_cb) self.menu_box.add(self._disconnect_item) self._forget_item = PaletteMenuItem(_('Forget')) icon = Icon(pixel_size=style.SMALL_ICON_SIZE, icon_name='list-remove') self._forget_item.set_image(icon) self._forget_item.connect('activate', self.__forget_activate_cb) self.menu_box.add(self._forget_item) p.set_content(self.menu_box) self.menu_box.show_all() self.connect_to_palette_pop_events(p) return p
def __battery_properties_changed_cb(self): level = self._get_battery_level() icon_name = get_icon_state(_ICON_NAME, level, step=-5) self._icon.props.icon_name = icon_name