diff options
author | Jeremy Katz <katzj@redhat.com> | 2005-09-20 20:43:49 +0000 |
---|---|---|
committer | Jeremy Katz <katzj@redhat.com> | 2005-09-20 20:43:49 +0000 |
commit | 63226bceb21c16d662a78e85e4845309fdc91bfb (patch) | |
tree | 5386daf4d4e43528cdf920299863f88b0d3e8a51 /iw | |
parent | 70d10ea749562734dd0f2f8f434c2a524f5e34ad (diff) | |
download | anaconda-63226bceb21c16d662a78e85e4845309fdc91bfb.tar.gz anaconda-63226bceb21c16d662a78e85e4845309fdc91bfb.tar.xz anaconda-63226bceb21c16d662a78e85e4845309fdc91bfb.zip |
2005-09-20 Jeremy Katz <katzj@redhat.com>
* iw/simple_pkgselect.py: Simple group selection UI...
* textw/simple_pkgselect_text.py: And the same for text mode
* yuminstall.py (YumBackend): Some hacks for simple group
selection UI.
* dispatch.py (installSteps): Add simple group selection step.
* gui.py (stepToClass): Likewise.
* text.py (stepToClasses): Likewise.
* installclass.py (BaseInstallClass.setSteps): Likewise.
Diffstat (limited to 'iw')
-rw-r--r-- | iw/simple_pkgselect.py | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/iw/simple_pkgselect.py b/iw/simple_pkgselect.py new file mode 100644 index 000000000..bf3500a0e --- /dev/null +++ b/iw/simple_pkgselect.py @@ -0,0 +1,74 @@ +# +# simple_pkgselect - Simple package selection UI +# +# Jeremy Katz <katzj@redhat.com> +# Copyright 2005 Red Hat, Inc. +# +# Only shows groups and allows selecting them. None of the real +# "interesting" pieces of package selection are present +# Mostly here as a placeholder until we write the real code +# +# This software may be freely redistributed under the terms of the GNU +# general public license. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# + + +import gtk +import gobject +import gui +import copy +from iw_gui import * +from rhpl.translate import _, N_ + +import checklist + + +class GroupSelectionWindow (InstallWindow): + def getNext(self): + for row in self.cl.store: + (on, grp) = (row[0], row[1]) + if on and grp not in self.instgrps: + self.backend.selectGroup(grp) + elif not on and grp in self.instgrps: + self.backend.deselectGroup(grp) + + def getScreen(self, backend, intf): + self.backend = backend + self.intf = intf + self.instgrps = copy.copy(backend.anaconda_grouplist) + + box = gtk.VBox(False) + box.set_border_width(6) + + txt = gui.WrappingLabel("Please select the package groups you " + "would like to have installed.\n\n" + "Note that this is a temporary interface " + "as we work on hooking things up, so please " + "don't file bugs related directly to it.") + box.pack_start(txt, False) + + + sw = gtk.ScrolledWindow() + sw.set_border_width(6) + sw.set_policy (gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC) + sw.set_shadow_type(gtk.SHADOW_IN) + box.pack_start(sw) + + self.cl = checklist.CheckList(columns = 1) + + # FIXME: this is very yum backend specific... + groups = backend.ayum.groupInfo.visible_groups + groups.sort() + + for g in groups: + self.cl.append_row([g], g in backend.anaconda_grouplist) + + sw.add(self.cl) + + return box + + |