From bc6bc0e888c98e8c95dec930969c7e27b846a3b1 Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Tue, 6 Dec 2005 13:32:11 +0100 Subject: * implemented confirmChanges() --- DistUpgrade/DistUpgrade.glade | 113 ++++++++++++++++++++++++++++++++++-------- DistUpgrade/DistUpgrade.py | 30 +++++++---- 2 files changed, 112 insertions(+), 31 deletions(-) (limited to 'DistUpgrade') diff --git a/DistUpgrade/DistUpgrade.glade b/DistUpgrade/DistUpgrade.glade index 7651d2cd..92355a60 100644 --- a/DistUpgrade/DistUpgrade.glade +++ b/DistUpgrade/DistUpgrade.glade @@ -98,14 +98,14 @@ - - Details + + Changes GTK_WINDOW_TOPLEVEL GTK_WIN_POS_CENTER_ON_PARENT False 400 200 - True + False False True False @@ -120,7 +120,7 @@ True False - 0 + 6 @@ -132,11 +132,24 @@ True True True - gtk-ok + gtk-no + True + GTK_RELIEF_NORMAL + True + -9 + + + + + + True + True + True + gtk-yes True GTK_RELIEF_NORMAL True - -5 + -8 @@ -150,14 +163,15 @@ + 6 True False - 0 + 6 True - <b>Required changes:</b> + <b>Confirm changes:</b> False True GTK_JUSTIFY_LEFT @@ -180,26 +194,83 @@ - + + True + + False + False + GTK_JUSTIFY_LEFT + False + False + 0 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + + 0 + False + False + + + + + True True - GTK_POLICY_AUTOMATIC - GTK_POLICY_AUTOMATIC - GTK_SHADOW_IN - GTK_CORNER_TOP_LEFT + False + 0 - + True True - False - False - False - True - False - False - False + GTK_POLICY_AUTOMATIC + GTK_POLICY_AUTOMATIC + GTK_SHADOW_IN + GTK_CORNER_TOP_LEFT + + + + True + True + False + False + False + True + False + False + False + + + + + + + + True + Details + False + False + GTK_JUSTIFY_LEFT + False + False + 0.5 + 0.5 + 0 + 0 + PANGO_ELLIPSIZE_NONE + -1 + False + 0 + + label_item + diff --git a/DistUpgrade/DistUpgrade.py b/DistUpgrade/DistUpgrade.py index 0897104b..11a333a5 100644 --- a/DistUpgrade/DistUpgrade.py +++ b/DistUpgrade/DistUpgrade.py @@ -5,6 +5,7 @@ pygtk.require('2.0') import gtk import gtk.gdk import gtk.glade +import gobject import apt import apt_pkg @@ -45,9 +46,10 @@ class DistUpgradeView(object): self.toUpgrade = [] self.toRemove = [] for pkg in changes: - if pkg.markedUpgrade: toUpgrade.append(pkg) - elif pkg.markedInstall: toInstall.append(pkg) - elif pkg.markedRemove: toRemove.append(pkg) + if pkg.markedInstall: self.toInstall.append(pkg.name) + elif pkg.markedUpgrade: self.toUpgrade.append(pkg.name) + elif pkg.markedDelete: self.toRemove.append(pkg.name) + # no downgrades, re-installs assert(len(self.toInstall)+len(self.toUpgrade)+len(self.toRemove) == len(changes)) def askYesNoQuestion(self, summary, msg): pass @@ -120,17 +122,25 @@ class GtkDistUpgradeView(DistUpgradeView,SimpleGladeApp): dialog.destroy() return False def confirmChanges(self, changes): - DistUpgradeView.cnfirmChanges(self, changes) + DistUpgradeView.confirmChanges(self, changes) + msg = _("%s packages are going to be removed.\n" + "%s packages are going to be newly installed.\n" + "%s packages are going to be upgraded.\n" % + (len(self.toRemove),len(self.toInstall),len(self.toRemove))) + self.label_changes.set_text(msg) + # fill in the details self.details_list.clear() - for rm in toRemove: + for rm in self.toRemove: self.details_list.append([_("To be removed: %s" % rm)]) - for inst in toInstall: + for inst in self.toInstall: self.details_list.append([_("To be installed: %s" % inst)]) - for up in toUpgrade: + for up in self.toUpgrade: self.details_list.append([_("To be upgraded: %s" % up)]) - res = self.dialog_details.run() - self.dialog_details.hide() - return True + res = self.dialog_changes.run() + self.dialog_changes.hide() + if res == gtk.RESPONSE_YES: + return True + return False def askYesNoQuestion(self, summary, msg): msg = "%s\n\n%s" % (summary,msg) dialog = gtk.MessageDialog(parent=self.window_main, -- cgit v1.2.3