home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / share / pyshared / AppInstall / DialogPendingChanges.py < prev    next >
Encoding:
Python Source  |  2009-03-31  |  2.0 KB  |  52 lines

  1. # (c) 2005 Canonical, GPL
  2.  
  3. from SimpleGladeApp import SimpleGladeApp
  4. import gtk
  5. import gobject
  6. import os
  7.  
  8. from Util import *
  9. from widgets.AppListView import AppListView
  10.  
  11. class DialogPendingChanges(SimpleGladeApp):
  12.     def __init__(self, datadir, parent, to_add, to_rm):
  13.         SimpleGladeApp.__init__(self,
  14.                                 path=datadir+"/gnome-app-install.glade",
  15.                                 root="dialog_pending_changes",
  16.                                 domain="gnome-app-install")
  17.         self.add_store = gtk.ListStore(gobject.TYPE_STRING,
  18.                                        gobject.TYPE_PYOBJECT,
  19.                                        gobject.TYPE_INT)
  20.         self.remove_store = gtk.ListStore(gobject.TYPE_STRING,
  21.                                           gobject.TYPE_PYOBJECT,
  22.                                           gobject.TYPE_INT)
  23.         for elm in to_add:
  24.             self.add_store.append([elm.name, elm, 0])
  25.         for elm in to_rm:
  26.             self.remove_store.append([elm.name, elm ,0])
  27.         self.dialog_pending_changes.realize()
  28.         self.dialog_pending_changes.set_transient_for(parent)
  29.         self.button_confirm_changes.grab_default()
  30.         self.dialog_pending_changes.window.set_functions(gtk.gdk.FUNC_MOVE)
  31.         # Setup the app list viewers
  32.         self.treeview_add = AppListView(style=1)
  33.         self.treeview_remove = AppListView(style=1)
  34.         self.scrolledwindow_add.add(self.treeview_add)
  35.         self.scrolledwindow_remove.add(self.treeview_remove)
  36.         self.treeview_add.set_headers_visible(False)
  37.         self.treeview_remove.set_headers_visible(False)
  38.         self.treeview_add.set_model(self.add_store)
  39.         self.treeview_remove.set_model(self.remove_store)
  40.         self.treeview_add.show()
  41.         self.treeview_remove.show()
  42.  
  43.     def run(self):
  44.         if len(self.add_store) == 0:
  45.             self.vbox_add.hide()
  46.         if len(self.remove_store) == 0:
  47.             self.vbox_remove.hide()
  48.         return self.dialog_pending_changes.run()
  49.  
  50.     def hide(self):
  51.         self.dialog_pending_changes.hide()
  52.