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

  1. /**
  2.  * Module:        StorageClients.ycp
  3.  *
  4.  * Authors:        Thomas Fehr <fehr@suse.de>
  5.  *            Arvin Schnell <arvin@suse.de>
  6.  *
  7.  * Purpose:        Define callbacks for libstorage.
  8.  *
  9.  * $Id: StorageClients.ycp 27261 2006-01-23 18:36:33Z fehr $
  10.  */
  11.  
  12. {
  13.     module "StorageClients";
  14.  
  15.     import "Label";
  16.     import "Popup";
  17.     import "Report";
  18.     import "StorageCallbacks";
  19.  
  20.     textdomain "storage";
  21.  
  22. boolean enable_popup = false;
  23. list<string> texts = [];
  24.  
  25.  
  26. global void ProgressBar (string id, integer cur, integer max)
  27.     {
  28.     integer f = 100 * cur / max;
  29.     UI::ChangeWidget (`id(`progress), `Value, f);
  30.     }
  31.  
  32. global void EnablePopup()
  33.     {
  34.     y2milestone( "EnablePopup" );
  35.     enable_popup = true;
  36.     if( size(texts)>0 )
  37.     {
  38.     y2milestone( "EnablePopup texts:%1", texts );
  39.     foreach( string s, texts,
  40.         ``{
  41.         Report::Message(s);
  42.         });
  43.     }
  44.     texts = [];
  45.     }
  46.  
  47.  
  48. global void ShowInstallInfo (string text)
  49.     {
  50.     UI::ChangeWidget (`id(`progress), `Label, text);
  51.     }
  52.  
  53.  
  54. global void InfoPopup (string text)
  55.     {
  56.     y2milestone( "InfoPopup enable:%1 txt:%2", enable_popup, text );
  57.     if( enable_popup )
  58.     Report::Message(text);
  59.     else
  60.         texts = add( texts, text );
  61.     }
  62.  
  63. global boolean YesNoPopup (string text)
  64.     {
  65.     y2milestone( "YesNoPopup txt:%1", text );
  66.     return Report::AnyQuestion( Popup::NoHeadline(), text, 
  67.                                 Label::YesButton(), Label::NoButton(),
  68.                 `yes );
  69.     }
  70.  
  71. global define void InstallCallbacks()
  72.     {
  73.     y2milestone( "InstallCallbacks" );
  74.     StorageCallbacks::ProgressBar ("StorageClients::ProgressBar");
  75.     StorageCallbacks::ShowInstallInfo ("StorageClients::ShowInstallInfo");
  76.     StorageCallbacks::InfoPopup ("StorageClients::InfoPopup");
  77.     StorageCallbacks::YesNoPopup ("StorageClients::YesNoPopup");
  78.     }
  79.  
  80. }
  81.