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 / software_simple_proposal.ycp < prev    next >
Text File  |  2006-11-29  |  2KB  |  56 lines

  1. /**
  2.  * Module:        software_simple_proposal.ycp
  3.  *
  4.  * Author:        Klaus Kaempf <kkaempf@suse.de>
  5.  *
  6.  * Purpose:        Proposal function dispatcher - software.
  7.  *
  8.  *            See also file proposal-API.txt for details.
  9.  */
  10. {
  11.     textdomain "packager";
  12.  
  13.     import "Packages";
  14.  
  15.     string func  = (string) WFM::Args(0);
  16.     map    param = (map) WFM::Args(1);
  17.     map    ret   = $[];
  18.  
  19.     if ( func == "MakeProposal" )
  20.     {
  21.     boolean force_reset      = param["force_reset"     ]:false;
  22.     boolean language_changed = param["language_changed"]:false;
  23.  
  24.     y2milestone("package proposal: force reset: %1, reinit: %2, language changed: %3",  force_reset, false, language_changed );
  25.  
  26.     ret = Packages::Proposal( false,        // user decision: reset to default
  27.                   false,        // reinitialize due to language or partition change
  28.                   true );
  29.  
  30.     if ( language_changed && !force_reset)
  31.     {
  32.         // if the  language has changed the software proposal is reset to the default settings
  33.         if (! haskey (ret, "warning"))
  34.         {
  35.         // the language_changed flag has NOT been set by the NLD frame
  36.         ret = add( ret, "warning", _("The software proposal is reset to default values.") );
  37.         }
  38.     }
  39.         if (Packages::solve_errors > 0)
  40.         {
  41.              // the proposal for the packages requires manual intervention
  42.             ret = union (ret, $[
  43.                         /* warning text */
  44.                      "warning" : _("Cannot solve dependencies automatically. Manual intervention is required."),
  45.                      "warning_level" : `blocker ]);
  46.         }
  47.     return ret;
  48.     }
  49.     else
  50.     {
  51.     return WFM::CallFunction ("software_proposal", [func, param]);
  52.     }
  53.  
  54.     return ret;
  55. }
  56.