Salome HOME
projects
/
modules
/
hydro.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Remove functionality by popup menu and the keyboard button "Delete".
[modules/hydro.git]
/
src
/
HYDROCurveCreator
/
CurveCreator_Widget.h
diff --git
a/src/HYDROCurveCreator/CurveCreator_Widget.h
b/src/HYDROCurveCreator/CurveCreator_Widget.h
index 0129da991c4d7b19e4bae08cac6ea254da9e9148..225e864d49a06aac4b0ff31b7f95b1492c5eb3f7 100644
(file)
--- a/
src/HYDROCurveCreator/CurveCreator_Widget.h
+++ b/
src/HYDROCurveCreator/CurveCreator_Widget.h
@@
-65,6
+65,9
@@
public:
QList<int> getSelectedSections();
QList< QPair< int, int > > getSelectedPoints();
QList<int> getSelectedSections();
QList< QPair< int, int > > getSelectedPoints();
+ void removeSelected();
+ bool removeEnabled();
+
signals:
void selectionChanged();
void subOperationStarted( QWidget* );
signals:
void selectionChanged();
void subOperationStarted( QWidget* );
@@
-102,7
+105,7
@@
protected slots:
void onMouseRelease( SUIT_ViewWindow*, QMouseEvent* theEvent );
void onMouseMove( SUIT_ViewWindow*, QMouseEvent* theEvent );
void onMouseRelease( SUIT_ViewWindow*, QMouseEvent* theEvent );
void onMouseMove( SUIT_ViewWindow*, QMouseEvent* theEvent );
- void on
LocalPoint
Changed( int theRow, int theColumn );
+ void on
Cell
Changed( int theRow, int theColumn );
protected:
enum ActionId{ UNDO_ID,
protected:
enum ActionId{ UNDO_ID,
@@
-124,12
+127,15
@@
protected:
};
enum ActionMode {
};
enum ActionMode {
+ NoneMode,
AdditionMode,
ModificationMode,
AdditionMode,
ModificationMode,
- DetectionMode,
- NoneMode
+ DetectionMode
};
};
+ typedef std::pair< int, int > SectionToPoint;
+ typedef std::deque< SectionToPoint > SectionToPointList;
+
private:
QAction* createAction( ActionId theId, const QString& theName, const QPixmap& theImage,
const QString& theToolTip, const QKeySequence& theShortcut );
private:
QAction* createAction( ActionId theId, const QString& theName, const QPixmap& theImage,
const QString& theToolTip, const QKeySequence& theShortcut );
@@
-140,28
+146,42
@@
private:
void removeSection();
void removePoint();
void removeSection();
void removePoint();
-
bool
insertPointToSelectedSegment( const int theXPosition,
+
void
insertPointToSelectedSegment( const int theXPosition,
const int theYPosition );
const int theYPosition );
+ void moveSelectedPoints( const int theXPosition, const int theYPosition );
void updateLocalPointView();
void updateLocalPointView();
- void setLocalPointContext( const bool theOpen );
+ void setLocalPointContext( const bool theOpen
, const bool isUpdateTable = false
);
void addLocalPointToTable( const double theX, const double theY );
void setDragStarted( const bool theState, const QPoint& thePoint = QPoint() );
void addLocalPointToTable( const double theX, const double theY );
void setDragStarted( const bool theState, const QPoint& thePoint = QPoint() );
- void getSelectedPonts(
const int theSectionId, QList<int>
& thePoints );
- void setSelectedPonts( const
int theSectionId, const QList<int>& thePoints = QList<int>
() );
+ void getSelectedPonts(
SectionToPointList
& thePoints );
+ void setSelectedPonts( const
SectionToPointList& = SectionToPointList
() );
+ void startCurveModification( SectionToPointList& thePoints,
+ const bool theFillPoints = true );
+ void finishCurveModification( const SectionToPointList& thePoints = SectionToPointList() );
// curve algorithm
int findLocalPointIndex( int theSectionId, float theX, float theY );
// curve algorithm
int findLocalPointIndex( int theSectionId, float theX, float theY );
+ void findSectionsToPoints( const double theX, const double theY,
+ SectionToPointList& thePoints );
+ void convert( const SectionToPointList& thePoints,
+ QMap<int, QList<int> >& theConvPoints );
// OCC algorithm
bool pointOnObject( Handle(AIS_InteractiveObject) theObject,
const int theX, const int theY,
// OCC algorithm
bool pointOnObject( Handle(AIS_InteractiveObject) theObject,
const int theX, const int theY,
- gp_Pnt& thePoint,
int& thePoint1, i
nt& thePoint2 );
+ gp_Pnt& thePoint,
gp_Pnt& thePoint1, gp_P
nt& thePoint2 );
bool hasProjectPointOnCurve( const int theX, const int theY,
const Handle(Geom_Curve)& theCurve,
bool hasProjectPointOnCurve( const int theX, const int theY,
const Handle(Geom_Curve)& theCurve,
- gp_Pnt& theOutPoint );
+ Standard_Real& theParameter );
+
+ // local point view table methods
+ int getSectionId( const int theRowId ) const;
+ int getPointId( const int theRowId ) const;
+
+ bool contains( const SectionToPointList& theList, const SectionToPoint& theValue ) const;
private:
QMap<ActionId, QAction*> myActionMap;
private:
QMap<ActionId, QAction*> myActionMap;
@@
-173,8
+193,10
@@
private:
int mySection;
int myPointNum;
bool myDragStarted;
int mySection;
int myPointNum;
bool myDragStarted;
- QList<int> myDragPoints;
QPoint myDragStartPosition;
QPoint myDragStartPosition;
+ int myDragInteractionStyle;
+ SectionToPointList myDragPoints;
+ bool myDragged;
QByteArray myGuiState;
};
QByteArray myGuiState;
};