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

  1. /**
  2.  *  File:
  3.  *    repair.ycp
  4.  *
  5.  *  Module:
  6.  *    YaST2 system repair tool - automatic error detection and repair tool
  7.  *
  8.  *  Summary:
  9.  *    This file provides the framework of the YaST2 system repair tool.
  10.  *    It contains the main function that starts the scan and repair process.
  11.  *
  12.  *  Author:
  13.  *    Johannes Buchhold <jbuch@suse.de>
  14.  *
  15.  * $Id: repair.ycp 20738 2005-01-12 17:47:48Z jsuchome $
  16.  */
  17. {
  18.  
  19.   import "CommandLine";
  20.   import "Stage";
  21.   import "Wizard";
  22.  
  23.   import "OSRRepairUI";
  24.   import "OSRModuleLoading";
  25.   import "OSRMode";
  26.  
  27.   textdomain "repair";
  28.  
  29.   //////////////////////////////////////////////////////////////////////////////
  30.   //
  31.   //  MAIN
  32.   //
  33.   //////////////////////////////////////////////////////////////////////////////
  34.   define symbol OSRSequence ()
  35.   {
  36.  
  37.     // check the special osr modes
  38.     if( ! OSRMode::IsValid() ) return `error;
  39.  
  40.     // ===== Open UI ==================================================
  41.     if( (! Stage::cont ()) && (! Stage::initial ()))
  42.     {
  43.     Wizard::CreateDialog();
  44.     }
  45.     Wizard::SetTitleIcon("misc");
  46.  
  47.     // ===== Init the Rescue System =================================
  48.     symbol ret = OSRRepairUI::InitDialog();
  49.  
  50.     if ( ret != `next ) return ret;
  51.  
  52.     // ==== Open main dialog =========================================
  53.     ret = OSRRepairUI::OsrMainDialog();
  54.  
  55.     // ==== Try to unload all loaded modules =========================
  56.     OSRModuleLoading::UnloadAll();
  57.  
  58.     // ==== Close the dialog =========================================
  59.     if( (! Stage::cont ()) && (! Stage::initial ()))
  60.     {
  61.     UI::CloseDialog();
  62.     }
  63.     return ret;
  64.   }
  65.  
  66.   /* the command line description map */
  67.   map cmdline = $[
  68.     "id"        : "repair",
  69.     // translators: command line help text for repair module
  70.     "help"        : _("System repair module"),
  71.     // help text
  72.     "customhelp"    : _("Command line interface for the system repair module is not available"),
  73.     "guihandler"    : OSRSequence,
  74.   ];
  75.   return OSRMode::Init () ? OSRSequence () : CommandLine::Run (cmdline);
  76. }
  77.