Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/rpms/sugar/0021-Processdialog-prerequisite-check-support.patch
diff options
context:
space:
mode:
Diffstat (limited to 'rpms/sugar/0021-Processdialog-prerequisite-check-support.patch')
-rw-r--r--rpms/sugar/0021-Processdialog-prerequisite-check-support.patch88
1 files changed, 88 insertions, 0 deletions
diff --git a/rpms/sugar/0021-Processdialog-prerequisite-check-support.patch b/rpms/sugar/0021-Processdialog-prerequisite-check-support.patch
new file mode 100644
index 0000000..eb21667
--- /dev/null
+++ b/rpms/sugar/0021-Processdialog-prerequisite-check-support.patch
@@ -0,0 +1,88 @@
+From aa883ed6be6ef81692cf92f0ead21954331a6081 Mon Sep 17 00:00:00 2001
+From: Martin Abente <mabente@paraguayeduca.org>
+Date: Thu, 29 Jul 2010 17:20:45 -0400
+Subject: [PATCH sugar 21/74] Processdialog prerequisite check support
+
+---
+ src/jarabe/journal/processdialog.py | 23 ++++++++++++++++++++---
+ 1 files changed, 20 insertions(+), 3 deletions(-)
+
+diff --git a/src/jarabe/journal/processdialog.py b/src/jarabe/journal/processdialog.py
+index 08c6d11..181174d 100644
+--- a/src/jarabe/journal/processdialog.py
++++ b/src/jarabe/journal/processdialog.py
+@@ -48,6 +48,7 @@ def __init__(self, process_script='', process_params=[], restart_after=True):
+ self._start_message = _('Running')
+ self._failed_message = _('Failed')
+ self._finished_message = _('Finished')
++ self._prerequisite_message = ('Prerequisites were not met')
+
+ self.set_border_width(style.LINE_WIDTH)
+ width = gtk.gdk.screen_width()
+@@ -125,7 +126,7 @@ def _setup_options(self):
+
+ self._close_button = gtk.Button()
+ self._close_button.set_image(icon)
+- self._close_button.set_label(_('Cancel'))
++ self._close_button.set_label(_('Close'))
+ self._close_button.connect('clicked', self.__close_cb)
+ self._close_button.show()
+
+@@ -165,12 +166,18 @@ def __close_cb(self, button):
+ self.destroy()
+
+ def __start_cb(self, button):
+- self._process_management.do_process([self._process_script] + self._process_params)
++ if self._check_prerequisites():
++ self._process_management.do_process([self._process_script] + self._process_params)
++ else:
++ self._set_status_failed(self, error_message=self._prerequisite_message)
+
+ def __restart_cb(self, button):
+ session_manager = get_session_manager()
+ session_manager.logout()
+
++ def _check_prerequisites(self):
++ return True
++
+ def _set_status_started(self, model, data=None):
+ self._message.set_markup(self._start_message)
+
+@@ -199,12 +206,13 @@ def _set_status_finished(self, model, data=None):
+ else:
+ self._close_button.show()
+
+- def _set_status_failed(self, model, error_message=''):
++ def _set_status_failed(self, model=None, error_message=''):
+ self._message.set_markup('%s %s' % (self._failed_message, error_message))
+
+ self._progress_bar.hide()
+ self._start_button.show()
+ self._close_button.show()
++ self._restart_button.hide()
+
+ logging.error(error_message)
+
+@@ -246,6 +254,11 @@ def _resetup_information(self, volume_path):
+ self._message.set_markup('%s %s.\n\n' % (_('Journal content will be restored from'), volume_path) + \
+ '<big><b>%s</b> %s</big>' % (_('Warning:'), _('Current Journal content will be deleted!')))
+
++ self._prerequisite_message = _(', please close all the running activities.')
++
++ def _check_prerequisites(self):
++ return len(shell.get_model()) <= 1
++
+ class XSBackupDialog(ProcessDialog):
+
+ def __init__(self, xs_hostname):
+@@ -276,3 +289,7 @@ def _resetup_information(self, xs_hostname):
+
+ self._message.set_text('%s %s.' % (_('Journal content will be restored from'), xs_hostname))
+
++ self._prerequisite_message = _(', please close all the running activities.')
++
++ def _check_prerequisites(self):
++ return len(shell.get_model()) <= 1
+--
+1.7.6
+