X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_CalculationDlg.h;h=eaf3aa26aa6a52a2e81a437d88753c6953b79619;hb=9f7b45d044e701442d0b370e9779299d25a5d44c;hp=aa3dbe5381322fa97a98d25e663831887208445d;hpb=1ac14cb089babc7875dc626724965359dab0c58e;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_CalculationDlg.h b/src/HYDROGUI/HYDROGUI_CalculationDlg.h index aa3dbe53..eaf3aa26 100644 --- a/src/HYDROGUI/HYDROGUI_CalculationDlg.h +++ b/src/HYDROGUI/HYDROGUI_CalculationDlg.h @@ -31,9 +31,12 @@ class QGroupBox; class QLineEdit; class QListWidget; class QComboBox; +class QLabel; class QStringList; class HYDROGUI_DataBrowser; class HYDROGUI_NameValidator; +class SUIT_DataObject; +class HYDROGUI_Zone; class HYDROGUI_CalculationDlg : public HYDROGUI_Wizard { @@ -50,32 +53,82 @@ public: void setEditedObject( const Handle(HYDROData_CalculationCase) theCase ); - void setGeomObjects( const QStringList& theObjects ); - void setSelectedGeomObjects( const QStringList& theObjects ); + void setAllGeomObjects( const QStringList& theObjects, const QStringList& theObjectsEntries ); + void setPolylineNames( const QStringList& theObjects, const QStringList& theObjectsEntries ); QStringList getSelectedGeomObjects() const; + QStringList getSelectedAvailableGeomObjects() const; + QStringList getSelectedGroups() const; + QStringList getSelectedAvailableGroups() const; + HYDROGUI_Zone* getCurrentZone() const; + + void setAvailableGroups( const QStringList& ); public slots: - void onEmptyName(); - void onAlreadyExists( QString theName ); + void setBoundary( const QString& theObjName ); + void includeGeomObjects( const QStringList& theObjects ); + void excludeGeomObjects( const QStringList& theObjects ); + void includeGroups( const QStringList& theObjects ); + void excludeGroups( const QStringList& theObjects ); + void onEmptyName(); + void onAlreadyExists( QString theName ); + void refreshZonesBrowser(); + void onDataChanged(); + /** + * Process items selection: hide/show bathymetry merge type selector. + */ + void onSelected( SUIT_DataObject* theObject ); + /** + * Process merge type selection: set the selected bathymetry merge type for the currently selected zone. + */ + void onMergeTypeSelected( int theIndex ); + /** + * Process zones moving. Create a new region with dropped zones or add to existing one. + */ + void onZonesDropped( const QList& theList, + SUIT_DataObject* theTargetParent, int theTargetRow, Qt::DropAction theDropAction ); signals: - void addObjects(); - void removeObjects(); + void addObjects(); + void removeObjects(); + void objectsSelected(); + + void addGroups(); + void removeGroups(); + void groupsSelected(); + + void boundarySelected( const QString & theObjName ); + void setMergeType( int theMergeType, QString& theBathymetryName ); + void createRegion( const QList& theZonesList ); + void moveZones( SUIT_DataObject* theRegion, const QList& theZonesList ); + void clickedInZonesBrowser( SUIT_DataObject* ); + +protected: + + virtual bool acceptCurrent() const; private: QWizardPage* createObjectsPage(); + QWizardPage* createGroupsPage(); QWizardPage* createZonesPage(); QGroupBox* myObjectNameGroup; QLineEdit* myObjectName; HYDROGUI_NameValidator* myValidator; + QComboBox* myPolylineName; + + QListWidget* myAvailableGeomObjects; QListWidget* myGeomObjects; - HYDROGUI_DataBrowser* myBrowser; + QListWidget* myAvailableGroups; + QListWidget* myGroups; + + HYDROGUI_DataBrowser* myBrowser; Handle(HYDROData_CalculationCase) myEditedObject; - QComboBox* myBathymetryChoice; + QComboBox* myBathymetryChoice; + QLabel* myBatimetryLabel; + HYDROGUI_Zone* myCurrentZone; }; #endif