def _get_confirm_internal_dialog(parent, datadir, app, db, icons, primary, button_text, depends, cache): glade_dialog = SimpleGtkbuilderDialog(datadir, domain="software-center") dialog = glade_dialog.dialog_dependency_alert dialog.set_resizable(True) dialog.set_transient_for(parent) dialog.set_default_size(360, -1) # get icon for the app appdetails = app.get_details(db) icon_name = appdetails.icon if (icon_name is None or not icons.has_icon(icon_name)): icon_name = Icons.MISSING_APP glade_dialog.image_package_icon.set_from_icon_name(icon_name, Gtk.IconSize.DIALOG) # set the texts glade_dialog.label_dependency_primary.set_text( "<span font_weight=\"bold\" font_size=\"large\">%s</span>" % primary) glade_dialog.label_dependency_primary.set_use_markup(True) glade_dialog.button_dependency_do.set_label(button_text) # add the dependencies view = PackageNamesView(_("Dependency"), cache, depends, icons, ICON_SIZE, db) view.set_headers_visible(False) # FIXME: work out how not to select?/focus?/activate? first item glade_dialog.scrolledwindow_dependencies.add(view) glade_dialog.scrolledwindow_dependencies.show_all() return dialog
def deauthorize_computer(parent, datadir, db, icons, account_name, purchased_packages): """ Display a dialog to deauthorize the current computer for purchases """ cache = db._aptcache distro = get_distro() (primary, button_text) = distro.get_deauthorize_text(account_name, purchased_packages) # build the dialog glade_dialog = SimpleGtkbuilderDialog(datadir, domain="software-center") dialog = glade_dialog.dialog_deauthorize dialog.set_resizable(True) dialog.set_transient_for(parent) dialog.set_default_size(360, -1) # use the icon for software-center in the dialog icon_name = "softwarecenter" if (icon_name is None or not icons.has_icon(icon_name)): icon_name = Icons.MISSING_APP glade_dialog.image_icon.set_from_icon_name(icon_name, Gtk.IconSize.DIALOG) # set the texts glade_dialog.label_deauthorize_primary.set_text( "<span font_weight=\"bold\" font_size=\"large\">%s</span>" % primary) glade_dialog.label_deauthorize_primary.set_use_markup(True) glade_dialog.button_deauthorize_do.set_label(button_text) # add the list of packages to remove, if there are any if len(purchased_packages) > 0: view = PackageNamesView(_("Deauthorize"), cache, purchased_packages, icons, ICON_SIZE, db) view.set_headers_visible(False) # FIXME: work out how not to select?/focus?/activate? first item glade_dialog.scrolledwindow_purchased_packages.add(view) glade_dialog.scrolledwindow_purchased_packages.show_all() else: glade_dialog.viewport_purchased_packages.hide() result = dialog.run() dialog.hide() if result == Gtk.ResponseType.ACCEPT: return True return False