Salome HOME
Minor fixes
[tools/install.git] / src / SALOME_InstallWizard.hxx
index 6165010d2f6e0b4f8713bce1fcfd8112e25504d4..94a6c9345aefd25b90363d255211b61fe9d92eed 100644 (file)
@@ -3,7 +3,7 @@
 //  Author    : Vadim SANDLER, Open CASCADE SAS (vadim.sandler@opencascade.com)
 //  Project   : SALOME
 //  Module    : Installation Wizard
-//  Copyright : 2002-2008 CEA
+//  Copyright : 2002-2009 CEA
 
 #ifndef __SALOME_InstallWizard
 #define __SALOME_InstallWizard
@@ -172,6 +172,8 @@ class SALOME_InstallWizard: public InstallWizard
   QString getBasePlatform();
   // get current platform
   static QStringList currentPlatform();
+  // get application root dir
+  static QString     rootDirPath();
 
   // get binaries path
   QString getBinPath() const { return binPath; }
@@ -191,6 +193,10 @@ class SALOME_InstallWizard: public InstallWizard
   // set dependancies
   void setDependancies( QCheckListItem* item, Dependancies dep);
 
+  // executes some actions after finish of installation process (successful or not)
+  void doPostActions( const QString& btnText,
+                     const QString& btnAboutInfo );
+
   // add button for the <Finish> page
   void addFinishButton( const QString& label, 
                        const QString& tooltip, 
@@ -205,6 +211,8 @@ class SALOME_InstallWizard: public InstallWizard
   void setCopyright( const QString& copyright ) { myCopyright = copyright; }
   // set license
   void setLicense( const QString& license ) { myLicense = license; }
+  // set list of optional libraries
+  void setOptionalLibs( const QString& optlibs ) { myOptLibs = QStringList::split( ",", optlibs ); }
 
   // get version
   QString getVersion() { return myVersion; }
@@ -214,8 +222,16 @@ class SALOME_InstallWizard: public InstallWizard
   QString getCopyright() { return myCopyright; }
   // get license
   QString getLicense() { return myLicense; }
+  // get list of optional libraries
+  QStringList getOptionalLibs() { return myOptLibs; }
   // get platform
-  QString getPlatform() { return refPlatform ? refPlatform : curPlatform; }
+  QString getPlatform() { return !refPlatform.isEmpty() ? refPlatform : curPlatform; }
+  // get corresponding XML file
+  QString getXmlFile( const QString& platform ) {
+    return (platformsMap.find( platform ) != platformsMap.end() ) ? 
+      platformsMap[ platform ] : 
+      QString("");
+  }
   // get InstallWizard's name
   QString getIWName() { return myIWName; }
 
@@ -336,6 +352,8 @@ class SALOME_InstallWizard: public InstallWizard
   void readFromStdout();
   // -->something was written to stderr
   void readFromStderr();
+  // -->stop installation process if there is an error in stderr
+  void manageInstProc();
 
  private:
   QString          myIWName;       // Installation Wizard's name
@@ -345,6 +363,7 @@ class SALOME_InstallWizard: public InstallWizard
   QString          myLicense;      // license info
   QString          myTargetPath;   // target directory path
   QString          myTmpPath;      // temporary directory path
+  QStringList      myOptLibs;      // list of optional libraries
   
   HelpWindow*      helpWindow;     // help window
   QProcess*        shellProcess;   // shell process (install script)
@@ -367,7 +386,6 @@ class SALOME_InstallWizard: public InstallWizard
   QString          srcPath;        // sources path
   QString          oneProdDirName; // name of the single directory for binaries of prerequisites
   QString          commonPlatform; // platform with universal binaries
-  QStringList      singleBinPlts;  // list of platforms for that the special binary packages are exist
   bool             moreMode;       // advanced mode flag
   QWidget*         previousPage;   // previous page
   QString          tmpCreated;     // created temporary directory
@@ -426,6 +444,7 @@ class SALOME_InstallWizard: public InstallWizard
   QLineEdit*       passedParams;   // user can pass data to running script
   QTextEdit*       installProgress;// contains information about progress of installing selected products
   ProgressView*    progressView;   // displays information about progress of installing selected products
+  QCheckBox*       ignoreErrCBox;  // checkbox to ignore installation errors
   QLabel*          statusLab;      // displays currently performed action
   // --> finish page
   QWidget*         readmePage;     // page itself