diff options
Diffstat (limited to 'src/sugar/activity/activity.py')
-rw-r--r-- | src/sugar/activity/activity.py | 62 |
1 files changed, 5 insertions, 57 deletions
diff --git a/src/sugar/activity/activity.py b/src/sugar/activity/activity.py index f3ee5b8..d2ba278 100644 --- a/src/sugar/activity/activity.py +++ b/src/sugar/activity/activity.py @@ -30,7 +30,7 @@ will need for a real activity. STABLE. """ # Copyright (C) 2006-2007 Red Hat, Inc. -# Copyright (C) 2007-2008 One Laptop Per Child +# Copyright (C) 2007-2009 One Laptop Per Child # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -55,7 +55,8 @@ from hashlib import sha1 import traceback import gconf -import gtk, gobject +import gtk +import gobject import dbus import dbus.service import cjson @@ -63,6 +64,7 @@ import cjson from sugar import util from sugar.presence import presenceservice from sugar.activity.activityservice import ActivityService +from sugar.activity.namingalert import NamingAlert from sugar.graphics import style from sugar.graphics.window import Window from sugar.graphics.toolbox import Toolbox @@ -74,7 +76,6 @@ from sugar.graphics.xocolor import XoColor from sugar.datastore import datastore from sugar.session import XSMPClient from sugar import wm -from sugar import _sugarext _ = lambda msg: gettext.dgettext('sugar-toolkit', msg) @@ -353,59 +354,6 @@ class _ActivitySession(gobject.GObject): def __sm_quit_cb(self, client): self.emit('quit') -class TitleAlert(gtk.Window): - __gtype_name__ = 'SugarTitleAlert' - - _BACKGROUND_COLOR = style.COLOR_BLACK.get_gdk_color() - - def __init__(self, activity): - gtk.Window.__init__(self) - - self.set_border_width(style.LINE_WIDTH) - offset = style.GRID_CELL_SIZE - width = gtk.gdk.screen_width() - offset * 2 - height = gtk.gdk.screen_height() - offset * 2 - self.set_size_request(width, height) - self.set_position(gtk.WIN_POS_CENTER_ALWAYS) - self.set_decorated(False) - self.set_resizable(False) - self.set_modal(True) - self.connect('realize', self.__realize_cb) - - self._activity = activity - - alignment = gtk.Alignment(xalign=0.5, yalign=0.5) - self.add(alignment) - alignment.show() - - vbox = gtk.VBox() - vbox.set_spacing(style.DEFAULT_PADDING) - alignment.add(vbox) - vbox.show() - - self._entry = gtk.Entry() - self._entry.props.text=self._activity.metadata['title'] - self._entry.modify_bg(gtk.STATE_INSENSITIVE, self._BACKGROUND_COLOR) - self._entry.modify_base(gtk.STATE_INSENSITIVE, self._BACKGROUND_COLOR) - vbox.pack_start(self._entry) - self._entry.show() - self._entry.connect('activate', self.__activate_cb) - - button = gtk.Button(_('Keep')) - vbox.pack_start(button) - button.show() - button.connect('clicked', self.__activate_cb) - - def __realize_cb(self, widget): - self.window.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG) - self.window.set_accept_focus(True) - self.modify_bg(gtk.STATE_NORMAL, self._BACKGROUND_COLOR) - - def __activate_cb(self, widget): - self._activity.metadata['title'] = self._entry.props.text - self._activity.metadata['title_set_by_user'] = '1' - self._activity.close() - class Activity(Window, gtk.Container): """This is the base Activity class that all other Activities derive from. This is where your activity starts. @@ -1027,7 +975,7 @@ class Activity(Window, gtk.Container): if not self._updating_jobject: self._complete_close() else: - title_alert = TitleAlert(self) + title_alert = NamingAlert(self, get_bundle_path()) title_alert.set_transient_for(self.get_toplevel()) title_alert.show() |