home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / boot / i386 / root / usr / share / YaST2 / clients / inst_sw_select.ycp < prev    next >
Text File  |  2006-11-29  |  2KB  |  72 lines

  1. /**
  2.  * Module:        inst_sw_select.ycp
  3.  *
  4.  * Authors:        Gabriele Strattner <gs@suse.de>
  5.  *            Klaus Kaempf <kkaempf@suse.de>
  6.  *
  7.  * Purpose:
  8.  * Displays software selection screen. Show radioboxes for software
  9.  * main categories. Let the user select the software.
  10.  *
  11.  * Packages module read:
  12.  *
  13.  * Packages module write:
  14.  */
  15.  
  16. {
  17.     textdomain "packager";
  18.  
  19.     import "Arch";
  20.     import "Mode";
  21.     import "Installation";
  22.     import "Product";
  23.     import "ProductFeatures";
  24.     import "Packages";
  25.     import "PackagesUI";
  26.     import "SpaceCalculation";
  27.     import "Stage";
  28.  
  29.     import "Wizard";
  30.     import "Popup";
  31.  
  32.     include "partitioning/partition_defines.ycp";
  33.  
  34.     symbol ret = `again;
  35.  
  36.     boolean retval = Pkg::SaveState();
  37.     y2milestone ("Save pkg state retval: %1", retval);
  38.  
  39.     while (ret == `again)
  40.     {
  41.  
  42.     // add additional (internal) packages, like kernel etc.
  43.     // they are added by proposal!!!! (#155819)
  44. //    Pkg::DoProvide (Packages::ComputeSystemPackageList());
  45.     Pkg::PkgSolve(false);
  46.  
  47.     while ( ret == `again )
  48.     {
  49.         ret = (symbol)WFM::CallFunction( "inst_packages", [] );
  50.  
  51.         if ( ret == `accept )
  52.         {
  53.         Packages::base_selection_modified = true;
  54.         ret = `next;
  55.         Packages::solve_errors = 0; // all have been either solved
  56.                         // or marked to ignore
  57.         }
  58.     }
  59.     }
  60.  
  61.     if ( ret == `back || ret == `cancel )
  62.     {
  63.     boolean ret = Pkg::RestoreState( false );
  64.     y2milestone( "RESET to software selection return: %1",  ret );
  65.     }
  66.     else
  67.     {
  68.     Pkg::ClearSaveState();
  69.     }
  70.     return `ret;
  71. }
  72.