From 4869f7464200cd7dd5e94b66647b9217e7a4b6d9 Mon Sep 17 00:00:00 2001 From: "John (J5) Palmieri" Date: Tue, 9 Jan 2007 15:25:51 -0500 Subject: [PATCH] add prelight on mouse enter to activity icons * prelight uses profile.get_color() --- shell/view/frame/ActivitiesBox.py | 11 +++++++++++ shell/view/home/activitiesdonut.py | 2 ++ 2 files changed, 13 insertions(+) diff --git a/shell/view/frame/ActivitiesBox.py b/shell/view/frame/ActivitiesBox.py index aa965853..2ca0cfda 100644 --- a/shell/view/frame/ActivitiesBox.py +++ b/shell/view/frame/ActivitiesBox.py @@ -20,6 +20,7 @@ import logging from sugar.graphics.canvasicon import CanvasIcon from sugar.presence import PresenceService from sugar.graphics import style +from sugar import profile class ActivityItem(CanvasIcon): def __init__(self, activity): @@ -27,6 +28,16 @@ class ActivityItem(CanvasIcon): CanvasIcon.__init__(self, icon_name=icon_name) style.apply_stylesheet(self, 'frame.ActivityIcon') self._activity = activity + self._normal_color = self.get_property('color') + self._prelight_color = profile.get_color() + + self.connect('motion-notify-event', self._mouse_motion_event_cb) + + def _mouse_motion_event_cb(self, item, event): + if event.detail == hippo.MOTION_DETAIL_ENTER: + self.set_property('color', self._prelight_color) + elif event.detail == hippo.MOTION_DETAIL_LEAVE: + self.set_property('color', self._normal_color) def get_bundle_id(self): return self._activity.get_service_name() diff --git a/shell/view/home/activitiesdonut.py b/shell/view/home/activitiesdonut.py index 117fd28f..4796a376 100644 --- a/shell/view/home/activitiesdonut.py +++ b/shell/view/home/activitiesdonut.py @@ -26,6 +26,8 @@ from sugar.graphics import colors from sugar.graphics import iconcolor from sugar import profile +# TODO: rgb_to_html and html_to_rgb are useful elsewhere +# we should put this in a common module def rgb_to_html(r, g, b): """ (r, g, b) tuple (in float format) -> #RRGGBB """ return '#%02x%02x%02x' % (int(r * 255), int(g * 255), int(b * 255))