enum ActionFlags {
NoFlags = 0x00000000,
DisableDetectionMode = 0x00000001,
- DisableNewSection = 0x00000002
+ DisableNewSection = 0x00000002,
+ DisableClosedSection = 0x00000004
};
public:
void setCurve( CurveCreator_ICurve* theCurve );
QList<int> getSelectedSections();
- QList< QPair< int, int > > getSelectedPoints();
void removeSelected();
bool removeEnabled();
signals:
void selectionChanged();
- void subOperationStarted( QWidget* );
+ void subOperationStarted( QWidget*, bool );
void subOperationFinished( QWidget* );
public slots:
void addCoordsByClick( QMouseEvent* );
protected:
- enum ActionId{ UNDO_ID,
+ enum ActionId{ NONE_ID,
+ UNDO_ID,
REDO_ID,
NEW_SECTION_ID,
ADDITION_MODE_ID,
QAction* createAction( ActionId theId, const QString& theName, const QPixmap& theImage,
const QString& theToolTip, const QKeySequence& theShortcut );
QAction* getAction(ActionId theId);
+ QAction* getAction(ActionMode theMode);
+
+ void setActionMode( const ActionMode& theMode );
ActionMode getActionMode() const;
void updateActionsStates();
void setSelectedPoints( const CurveCreator_ICurve::SectionToPointList& =
CurveCreator_ICurve::SectionToPointList() );
+ void stopActionMode();
+
void startCurveModification( CurveCreator_ICurve::SectionToPointList& thePoints,
const bool theFillPoints = true );
void finishCurveModification( const CurveCreator_ICurve::SectionToPointList& thePoints =
QPoint myDragStartPosition;
int myDragInteractionStyle;
CurveCreator_ICurve::SectionToPointList myDragPoints;
+ QMap<CurveCreator_ICurve::SectionToPoint, CurveCreator::Coordinates> myInitialDragPointsCoords;
bool myDragged;
QByteArray myGuiState;
+ int myPressedX;
+ int myPressedY;
};
#endif // CURVECREATOR_WIDGET_H