Desactivation temporaire de l'edition des conducteurs par les points de jonction ; Implementation de l'edition des conducteurs par des points de saisie situes en leur milieu

git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@54 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
xavierqet
2007-02-14 01:08:29 +00:00
parent 1e486712cc
commit 8c491de218
6 changed files with 708 additions and 124 deletions

43
conducersegment.h Normal file
View File

@@ -0,0 +1,43 @@
#ifndef CONDUCER_SEGMENT_H
#define CONDUCER_SEGMENT_H
#include <QPointF>
/**
Cette classe represente un segment de conducteur.
*/
class ConducerSegment {
// constructeurs et destructeur
public:
ConducerSegment(QPointF, QPointF, ConducerSegment * = NULL, ConducerSegment * = NULL);
~ConducerSegment();
// attributs
private:
ConducerSegment *previous_segment;
ConducerSegment *next_segment;
QPointF point1;
QPointF point2;
// methodes
public:
void moveX(qreal);
void moveY(qreal);
ConducerSegment *previousSegment();
ConducerSegment *nextSegment();
bool hasPreviousSegment();
bool hasNextSegment();
void setPreviousSegment(ConducerSegment *);
void setNextSegment(ConducerSegment *);
QPointF firstPoint();
QPointF secondPoint();
void setFirstPoint(QPointF);
void setSecondPoint(QPointF);
QPointF middle();
bool isHorizontal();
bool isVertical();
qreal length();
bool canMove1stPointX(qreal, qreal &);
bool canMove2ndPointX(qreal, qreal &);
bool canMove1stPointY(qreal, qreal &);
bool canMove2ndPointY(qreal, qreal &);
};
#endif