X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_ProfileInterpolateOp.h;h=bd05e2c0c638303fccda2a0b56be01d9034e39d7;hb=a53349567d67f4df0ef737798a25c24d9dc8f08e;hp=d437d55cc891f2683047205781eab747b32954e7;hpb=065b0e007bb1d8d2b4962cfea24d3d476522e028;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_ProfileInterpolateOp.h b/src/HYDROGUI/HYDROGUI_ProfileInterpolateOp.h index d437d55c..bd05e2c0 100644 --- a/src/HYDROGUI/HYDROGUI_ProfileInterpolateOp.h +++ b/src/HYDROGUI/HYDROGUI_ProfileInterpolateOp.h @@ -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 @@ -27,18 +23,23 @@ #include -class HYDROGUI_CurveCreatorProfile; +#include + +#include +#include + +class HYDROData_IProfilesInterpolator; class HYDROGUI_ProfileInterpolateOp : public HYDROGUI_Operation { Q_OBJECT public: - HYDROGUI_ProfileInterpolateOp( HYDROGUI_Module* theModule, bool isEdit ); + HYDROGUI_ProfileInterpolateOp( HYDROGUI_Module* theModule ); virtual ~HYDROGUI_ProfileInterpolateOp(); - void deleteSelected(); - bool deleteEnabled(); +protected: + typedef QList< QPair > ParamsList; protected: virtual void startOperation(); @@ -50,14 +51,22 @@ protected: virtual bool processApply( int& theUpdateFlags, QString& theErrorMsg, QStringList& theBrowseObjectsEntries ); -private: - void displayPreview(); - void erasePreview(); + QStringList interpolators() const; + HYDROData_IProfilesInterpolator* interpolator( const QString& ) const; + void updateInterpolator( HYDROData_IProfilesInterpolator* ); + HYDROData_Profile::ProfilePoints profile( const QString& ) const; + ParamsList parameters( const QString& ) const; + QString parameters( const ParamsList& ) const; + + TopoDS_Shape previewShape( HYDROData_IProfilesInterpolator* ) const; + +private slots: + void updatePreview(); + void onRiverChanged( const QString& ); + void onInterpolatorChanged( const QString& ); private: - bool myIsEdit; - Handle(HYDROData_Profile) myEditedObject; - HYDROGUI_CurveCreatorProfile* myProfile; + Handle(AIS_Shape) myPreview; }; #endif