def __init__(self, size): BuddyIcon.__init__(self, buddy=get_owner_instance(), pixel_size=size) self.palette_invoker.cache_palette = True self._palette_enabled = False self._register_menu = None
def __init__(self, size): BuddyIcon.__init__(self, buddy=get_owner_instance(), pixel_size=size) # This is a workaround to skip the callback for # enter-notify-event in the parent class the first time. def __enter_notify_event_cb(icon, event): self.unset_state_flags(Gtk.StateFlags.PRELIGHT) self.disconnect(self._enter_notify_hid) self._enter_notify_hid = self.connect('enter-notify-event', __enter_notify_event_cb)
def _add_buddy(self, buddy_model): buddy_model.connect('notify::current-activity', self.__buddy_notify_current_activity_cb) if buddy_model.props.current_activity is not None: return icon = BuddyIcon(buddy_model) if buddy_model.is_owner(): self._owner_icon = icon self._layout.add(icon) if hasattr(icon, 'set_filter'): icon.set_filter(self._query) self._buddies[buddy_model.props.key] = icon
def __init__(self, size): BuddyIcon.__init__(self, buddy=get_owner_instance(), pixel_size=size) self.palette_invoker.cache_palette = True self._palette_enabled = False self._register_menu = None # This is a workaround to skip the callback for # enter-notify-event in the parent class the first time. def __enter_notify_event_cb(icon, event): self.unset_state_flags(Gtk.StateFlags.PRELIGHT) self.disconnect(self._enter_notify_hid) self._enter_notify_hid = self.connect('enter-notify-event', __enter_notify_event_cb)
def __init__(self): layout = SpreadLayout() # Round off icon size to an even number to ensure that the icon self._owner_icon = BuddyIcon(buddy=get_owner_instance(), pixel_size=style.XLARGE_ICON_SIZE & ~1) ViewContainer.__init__(self, layout, self._owner_icon) self._animator = animator.Animator(0.3) self._animator.connect('completed', self._animation_completed_cb)
def __init__(self, buddy, **kwargs): Gtk.VBox.__init__(self) # round icon sizes to an even number so that it can be accurately # centered in a larger bounding box also of even dimensions size = style.LARGE_ICON_SIZE & ~1 self._buddy = buddy self._buddy_icon = BuddyIcon(buddy) self._buddy_icon.props.pixel_size = size self.add(self._buddy_icon) self._buddy_icon.show() self._activity_icon = CanvasIcon(pixel_size=size) self._update_activity() self._buddy.connect('notify::current-activity', self.__buddy_notify_current_activity_cb) self._buddy.connect('notify::present', self.__buddy_notify_present_cb) self._buddy.connect('notify::color', self.__buddy_notify_color_cb)
def __init__(self): gobject.GObject.__init__(self) self._box = hippo.CanvasBox() self._box.props.background_color = style.COLOR_WHITE.get_int() self.set_root(self._box) self._layout = _Layout() self._box.set_layout(self._layout) self._my_icon = BuddyIcon(buddy=get_owner_instance(), size=style.XLARGE_ICON_SIZE) self._box.append(self._my_icon) self._animator = animator.Animator(0.3) self._animator.connect('completed', self._animation_completed_cb)
def __init__(self, buddy, **kwargs): hippo.CanvasBox.__init__(self, **kwargs) self._buddy = buddy self._buddy_icon = BuddyIcon(buddy) self._buddy_icon.props.size = style.LARGE_ICON_SIZE self.append(self._buddy_icon) self._activity_icon = CanvasIcon(size=style.LARGE_ICON_SIZE) self._activity_icon_visible = False self._update_activity() self._buddy.connect('notify::current-activity', self.__buddy_notify_current_activity_cb) self._buddy.connect('notify::present', self.__buddy_notify_present_cb) self._buddy.connect('notify::color', self.__buddy_notify_color_cb)
def __init__(self, toolbar): logging.debug('STARTUP: Loading the mesh view') layout = SpreadLayout() # Round off icon size to an even number to ensure that the icon owner_icon = BuddyIcon(get_owner_instance(), style.STANDARD_ICON_SIZE & ~1) ViewContainer.__init__(self, layout, owner_icon) self.set_can_focus(False) self.wireless_networks = {} self._adhoc_manager = None self._adhoc_networks = [] self._model = neighborhood.get_model() self._buddies = {} self._activities = {} self._mesh = [] self._buddy_to_activity = {} self._suspended = True self._query = '' toolbar.connect('query-changed', self._toolbar_query_changed_cb) toolbar.search_entry.connect('icon-press', self.__clear_icon_pressed_cb) for buddy_model in self._model.get_buddies(): self._add_buddy(buddy_model) self._model.connect('buddy-added', self._buddy_added_cb) self._model.connect('buddy-removed', self._buddy_removed_cb) for activity_model in self._model.get_activities(): self._add_activity(activity_model) self._model.connect('activity-added', self._activity_added_cb) self._model.connect('activity-removed', self._activity_removed_cb) netmgr_observer = NetworkManagerObserver(self) netmgr_observer.listen()
def __init__(self, toolbar): logging.debug('STARTUP: Loading the group view') layout = SpreadLayout() # Round off icon size to an even number to ensure that the icon owner_icon = BuddyIcon(get_owner_instance(), style.LARGE_ICON_SIZE & ~1) ViewContainer.__init__(self, layout, owner_icon) self._query = '' toolbar.connect('query-changed', self._toolbar_query_changed_cb) toolbar.search_entry.connect('icon-press', self.__clear_icon_pressed_cb) self._friends = {} friends_model = friends.get_model() for friend in friends_model: self.add_friend(friend) friends_model.connect('friend-added', self._friend_added_cb) friends_model.connect('friend-removed', self._friend_removed_cb)
def _add_buddy(self, buddy): icon = BuddyIcon(buddy, style.STANDARD_ICON_SIZE) self._icons[buddy.props.key] = icon self.add_icon(icon) icon.show()
def __init__(self, size): BuddyIcon.__init__(self, buddy=get_owner_instance(), size=size) self._palette_enabled = False self._register_menu = None
class FriendView(Gtk.VBox): def __init__(self, buddy, **kwargs): Gtk.VBox.__init__(self) # round icon sizes to an even number so that it can be accurately # centered in a larger bounding box also of even dimensions size = style.LARGE_ICON_SIZE & ~1 self._buddy = buddy self._buddy_icon = BuddyIcon(buddy) self._buddy_icon.props.pixel_size = size self.add(self._buddy_icon) self._buddy_icon.show() self._activity_icon = CanvasIcon(pixel_size=size) self._update_activity() self._buddy.connect('notify::current-activity', self.__buddy_notify_current_activity_cb) self._buddy.connect('notify::present', self.__buddy_notify_present_cb) self._buddy.connect('notify::color', self.__buddy_notify_color_cb) def _get_new_icon_name(self, ps_activity): registry = bundleregistry.get_registry() activity_info = registry.get_bundle(ps_activity.props.type) if activity_info: return activity_info.get_icon() return None def _remove_activity_icon(self): if self._activity_icon.get_visible(): self._activity_icon.hide() self.remove(self._activity_icon) def __buddy_notify_current_activity_cb(self, buddy, pspec): self._update_activity() def _update_activity(self): if not self._buddy.props.present or \ not self._buddy.props.current_activity: self._remove_activity_icon() return # FIXME: use some sort of "unknown activity" icon rather # than hiding the icon? name = self._get_new_icon_name(self._buddy.current_activity) if name: self._activity_icon.props.file_name = name self._activity_icon.props.xo_color = self._buddy.props.color if not self._activity_icon.get_visible(): self.add(self._activity_icon) self._activity_icon.show() else: self._remove_activity_icon() def __buddy_notify_present_cb(self, buddy, pspec): self._update_activity() def __buddy_notify_color_cb(self, buddy, pspec): # TODO: shouldn't this change self._buddy_icon instead? self._activity_icon.props.xo_color = buddy.props.color
class FriendView(Gtk.VBox): def __init__(self, buddy, **kwargs): Gtk.VBox.__init__(self) # round icon sizes to an even number so that it can be accurately # centered in a larger bounding box also of even dimensions size = style.LARGE_ICON_SIZE & ~1 self._buddy = buddy self._buddy_icon = BuddyIcon(buddy) self._buddy_icon.props.pixel_size = size self.add(self._buddy_icon) self._buddy_icon.show() self._activity_icon = CanvasIcon(pixel_size=size) self._update_activity() self._buddy.connect('notify::current-activity', self.__buddy_notify_current_activity_cb) self._buddy.connect('notify::present', self.__buddy_notify_present_cb) self._buddy.connect('notify::color', self.__buddy_notify_color_cb) @staticmethod def _get_new_icon_name(ps_activity): registry = bundleregistry.get_registry() activity_info = registry.get_bundle(ps_activity.props.type) if activity_info: return activity_info.get_icon() return None def _remove_activity_icon(self): if self._activity_icon.get_visible(): self._activity_icon.hide() self.remove(self._activity_icon) def __buddy_notify_current_activity_cb(self, buddy, pspec): self._update_activity() def _update_activity(self): if not self._buddy.props.present or \ not self._buddy.props.current_activity: self._remove_activity_icon() return # FIXME: use some sort of "unknown activity" icon rather # than hiding the icon? name = self._get_new_icon_name(self._buddy.current_activity) if name: self._activity_icon.props.file_name = name self._activity_icon.props.xo_color = self._buddy.props.color if not self._activity_icon.get_visible(): self.add(self._activity_icon) self._activity_icon.show() else: self._remove_activity_icon() def __buddy_notify_present_cb(self, buddy, pspec): self._update_activity() def __buddy_notify_color_cb(self, buddy, pspec): # TODO: shouldn't this change self._buddy_icon instead? self._activity_icon.props.xo_color = buddy.props.color