X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROCurveCreator%2FCurveCreator_Widget.h;h=31b4db039e842234c039fda0e007ce125c1378f1;hb=09d10e66ba0fac5353c8d1f138055fc6fe86fb65;hp=9243452dbac2606c9df53fea95263ec7070525ef;hpb=95ccf034dee367cc12d9e5f55fa87da33e5847e1;p=modules%2Fhydro.git diff --git a/src/HYDROCurveCreator/CurveCreator_Widget.h b/src/HYDROCurveCreator/CurveCreator_Widget.h index 9243452d..31b4db03 100644 --- a/src/HYDROCurveCreator/CurveCreator_Widget.h +++ b/src/HYDROCurveCreator/CurveCreator_Widget.h @@ -56,13 +56,22 @@ public: enum ActionFlags { NoFlags = 0x00000000, DisableDetectionMode = 0x00000001, - DisableNewSection = 0x00000002 + DisableNewSection = 0x00000002, + DisableClosedSection = 0x00000004 + }; + + enum ActionMode { + NoneMode, + AdditionMode, + ModificationMode, + DetectionMode }; public: explicit CurveCreator_Widget( QWidget* parent, CurveCreator_ICurve *theCurve, const int theActionFlags = NoFlags, + const QStringList& theCoordTitles = QStringList(), Qt::WindowFlags fl=0, int theLocalPointRowLimit = 20); @@ -77,14 +86,17 @@ public: void setCurve( CurveCreator_ICurve* theCurve ); QList getSelectedSections(); - QList< QPair< int, int > > getSelectedPoints(); + void setSelectedSections( const QList& theSections ); void removeSelected(); bool removeEnabled(); + void setActionMode( const ActionMode& theMode ); + ActionMode getActionMode() const; + signals: void selectionChanged(); - void subOperationStarted( QWidget* ); + void subOperationStarted( QWidget*, bool ); void subOperationFinished( QWidget* ); public slots: @@ -147,13 +159,6 @@ protected: DETECTION_MODE_ID }; - enum ActionMode { - NoneMode, - AdditionMode, - ModificationMode, - DetectionMode - }; - private: OCCViewer_Viewer* getOCCViewer(); @@ -162,9 +167,6 @@ private: QAction* getAction(ActionId theId); QAction* getAction(ActionMode theMode); - void setActionMode( const ActionMode& theMode ); - ActionMode getActionMode() const; - void updateActionsStates(); void updateUndoRedo(); @@ -215,8 +217,11 @@ private: QPoint myDragStartPosition; int myDragInteractionStyle; CurveCreator_ICurve::SectionToPointList myDragPoints; + QMap myInitialDragPointsCoords; bool myDragged; QByteArray myGuiState; + int myPressedX; + int myPressedY; }; #endif // CURVECREATOR_WIDGET_H