Salome HOME
refs #567: add "POLYLINES" partition and modified icon for Land Cover object.
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_Wizard.h
index 0349029b7dbfafaeb9bea8150027a4a146d32da7..c0a8855143d1c14d024a8636a432c552262b02df 100644 (file)
@@ -1,12 +1,8 @@
-// Copyright (C) 2007-2013  CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
+// Copyright (C) 2014-2015  EDF-R&D
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -25,6 +21,9 @@
 
 #include "HYDROGUI_InputPanel.h"
 #include <QWizard>
+class QAbstractButton;
+class QStackedWidget;
+class QWizardPage;
 
 /**\class HYDROGUI_Wizard
  *\brief The base class representing base wizard for HYDROGUI module
@@ -37,13 +36,31 @@ public:
   HYDROGUI_Wizard( HYDROGUI_Module* theModule, const QString& theTitle );
   virtual ~HYDROGUI_Wizard();
 
-  void show();
+  QAbstractButton* button( QWizard::WizardButton theBtnId ) const;
+  int              addPage( QWizardPage* thePage );
+  QStackedWidget*  wizard() const;
+
+public slots:
+  void             onNext();
+  void             onBack();
+  
+  void             onFirstPage();
+
+signals:
+  void             Next( const int );
+  void             Back( const int );
 
 protected:
-  QWizard* wizard() const;
+
+  // Returns the state of current page filing.
+  // Reimplement this method in your subclass to verify user input data.
+  virtual bool    acceptCurrent() const;
 
 private:
-  QWizard* myWizard;
+  QStackedWidget* myWizard;
+  QPushButton*    myNext;
+  QPushButton*    myBack;
+  QPushButton*    myFinish;
 };
 
 #endif