Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/sugar/activity/activity.py
diff options
context:
space:
mode:
authorSimon Schampijer <simon@schampijer.de>2009-01-18 15:30:53 (GMT)
committer Simon Schampijer <simon@schampijer.de>2009-01-18 15:30:53 (GMT)
commit817a981288bc87f521447a13a22ee293a0dedf07 (patch)
treed90be563e60f0bc683a0e682a31067ccdd35909c /src/sugar/activity/activity.py
parent5250117b8187356220713de874fbaa2ccb6aae34 (diff)
Enhanced the 'Name this entry dialog'
- created the canvastextview in sugar/graphics
Diffstat (limited to 'src/sugar/activity/activity.py')
-rw-r--r--src/sugar/activity/activity.py62
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()