mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2026-01-26 12:39:59 +01:00
Move element display help line
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@3592 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
@@ -494,9 +494,18 @@ QDomElement Element::toXml(QDomDocument &document, QHash<Terminal *, int> &table
|
|||||||
return(element);
|
return(element);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Initialise link for this element
|
/**
|
||||||
void Element::initLink(QETProject *prj) {
|
* @brief Element::initLink
|
||||||
// if nothing to link return now
|
* Initialise the link between this element and other elements.
|
||||||
|
* This method can be call once because init the link according to
|
||||||
|
* uuid store in a private list, after link, the list is clear, so
|
||||||
|
* call another time do nothing.
|
||||||
|
*
|
||||||
|
* @param prj, ownership project of this element and other element to be linked
|
||||||
|
*/
|
||||||
|
void Element::initLink(QETProject *prj)
|
||||||
|
{
|
||||||
|
// if nothing to link return now
|
||||||
if (tmp_uuids_link.isEmpty()) return;
|
if (tmp_uuids_link.isEmpty()) return;
|
||||||
|
|
||||||
ElementProvider ep(prj);
|
ElementProvider ep(prj);
|
||||||
@@ -540,6 +549,23 @@ bool comparPos(const Element *elmt1, const Element *elmt2) {
|
|||||||
return elmt1->pos().x() <= elmt2->pos().x();
|
return elmt1->pos().x() <= elmt2->pos().x();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Element::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
|
||||||
|
{
|
||||||
|
QetGraphicsItem::mouseMoveEvent(event);
|
||||||
|
foreach (Terminal *t, terminals())
|
||||||
|
{
|
||||||
|
t -> drawHelpLine(true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Element::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
|
||||||
|
{
|
||||||
|
QetGraphicsItem::mouseReleaseEvent(event);
|
||||||
|
foreach (Terminal *t, terminals())
|
||||||
|
{
|
||||||
|
t -> drawHelpLine(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* When mouse over element
|
* When mouse over element
|
||||||
|
|||||||
@@ -42,9 +42,18 @@ class Element : public QetGraphicsItem {
|
|||||||
|
|
||||||
// attributes
|
// attributes
|
||||||
public:
|
public:
|
||||||
|
/**
|
||||||
|
* Enable the use of qgraphicsitem_cast to safely cast
|
||||||
|
* a QGraphicsItem into an Element.
|
||||||
|
* @return the QGraphicsItem type
|
||||||
|
*/
|
||||||
enum { Type = UserType + 1000 };
|
enum { Type = UserType + 1000 };
|
||||||
// this enum is use to know the kind of element and
|
virtual int type() const { return Type; }
|
||||||
// to use flag for element provider class
|
|
||||||
|
/**
|
||||||
|
* @brief The kind enum
|
||||||
|
* Used to know the kind of this element (master, slave, report ect...)
|
||||||
|
*/
|
||||||
enum kind {Simple = 1,
|
enum kind {Simple = 1,
|
||||||
NextReport = 2,
|
NextReport = 2,
|
||||||
PreviousReport = 4,
|
PreviousReport = 4,
|
||||||
@@ -54,44 +63,35 @@ class Element : public QetGraphicsItem {
|
|||||||
Terminale = 32};
|
Terminale = 32};
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QSize dimensions;
|
QSize dimensions;
|
||||||
QPoint hotspot_coord;
|
QPoint hotspot_coord;
|
||||||
QPixmap preview;
|
QPixmap preview;
|
||||||
|
|
||||||
|
// methods
|
||||||
// methods
|
|
||||||
public:
|
public:
|
||||||
/**
|
/// @return the list of terminals for this element
|
||||||
Enable the use of qgraphicsitem_cast to safely cast a QGraphicsItem into an
|
|
||||||
Element.
|
|
||||||
@return the QGraphicsItem type
|
|
||||||
*/
|
|
||||||
virtual int type() const { return Type; }
|
|
||||||
|
|
||||||
// pure virtual methods to be defined in derived classes
|
|
||||||
/// @return the list of terminals for this element
|
|
||||||
virtual QList<Terminal *> terminals() const = 0;
|
virtual QList<Terminal *> terminals() const = 0;
|
||||||
/// @return the list of conductors attached to this element
|
/// @return the list of conductors attached to this element
|
||||||
virtual QList<Conductor *> conductors() const = 0;
|
virtual QList<Conductor *> conductors() const = 0;
|
||||||
/// @return the list of text items attached to this element
|
/// @return the list of text items attached to this element
|
||||||
virtual QList<ElementTextItem *> texts() const = 0;
|
virtual QList<ElementTextItem *> texts() const = 0;
|
||||||
/// @return the text field tagged with @tagg or NULL if text field isn't found
|
/// @return the text field tagged with @tagg or NULL if text field isn't found
|
||||||
virtual ElementTextItem* taggedText(const QString &tagg) const = 0;
|
virtual ElementTextItem* taggedText(const QString &tagg) const = 0;
|
||||||
/// @return the list of lines items in this element
|
/// @return the list of lines items in this element
|
||||||
virtual QList<QLineF *> lines() const = 0;
|
virtual QList<QLineF *> lines() const = 0;
|
||||||
/// @return the list of rectangles items in this element
|
/// @return the list of rectangles items in this element
|
||||||
virtual QList<QRectF *> rectangles() const = 0;
|
virtual QList<QRectF *> rectangles() const = 0;
|
||||||
/// @return the list of bounding rectangles for circles items in this element
|
/// @return the list of bounding rectangles for circles items in this element
|
||||||
virtual QList<QRectF *> circles() const = 0;
|
virtual QList<QRectF *> circles() const = 0;
|
||||||
/// @return the list of polygons in this element
|
/// @return the list of polygons in this element
|
||||||
virtual QList<QVector<QPointF> *> polygons() const = 0;
|
virtual QList<QVector<QPointF> *> polygons() const = 0;
|
||||||
/// @return the list of arcs in this element
|
/// @return the list of arcs in this element
|
||||||
virtual QList<QVector<qreal> *> arcs() const = 0;
|
virtual QList<QVector<qreal> *> arcs() const = 0;
|
||||||
/// @return the current number of terminals of this element
|
/// @return the current number of terminals of this element
|
||||||
virtual int terminalsCount() const = 0;
|
virtual int terminalsCount() const = 0;
|
||||||
/// @return the minimum number of terminals for this element
|
/// @return the minimum number of terminals for this element
|
||||||
virtual int minTerminalsCount() const = 0;
|
virtual int minTerminalsCount() const = 0;
|
||||||
/// @return the maximum number of terminals for this element
|
/// @return the maximum number of terminals for this element
|
||||||
virtual int maxTerminalsCount() const = 0;
|
virtual int maxTerminalsCount() const = 0;
|
||||||
|
|
||||||
|
|
||||||
@@ -101,22 +101,22 @@ class Element : public QetGraphicsItem {
|
|||||||
*like the linked element or information about this element
|
*like the linked element or information about this element
|
||||||
*/
|
*/
|
||||||
//METHODS related to linked element
|
//METHODS related to linked element
|
||||||
public:
|
public:
|
||||||
bool isFree () const;
|
bool isFree () const;
|
||||||
virtual void linkToElement(Element *) {}
|
virtual void linkToElement (Element *) {}
|
||||||
virtual void unlinkAllElements() {}
|
virtual void unlinkAllElements () {}
|
||||||
virtual void unlinkElement(Element *) {}
|
virtual void unlinkElement (Element *) {}
|
||||||
virtual void initLink(QETProject *);
|
virtual void initLink (QETProject *);
|
||||||
QList<Element *> linkedElements ();
|
QList<Element *> linkedElements ();
|
||||||
virtual int linkType() const {return link_type_;} // @return the linkable type
|
virtual int linkType() const {return link_type_;} // @return the linkable type
|
||||||
void newUuid() {uuid_ = QUuid::createUuid();} //create new uuid for this element
|
void newUuid() {uuid_ = QUuid::createUuid();} //create new uuid for this element
|
||||||
|
|
||||||
//ATTRIBUTES related to linked element
|
//ATTRIBUTES related to linked element
|
||||||
protected:
|
protected:
|
||||||
QList <Element *> connected_elements;
|
QList <Element *> connected_elements;
|
||||||
QList <QUuid> tmp_uuids_link;
|
QList <QUuid> tmp_uuids_link;
|
||||||
QUuid uuid_;
|
QUuid uuid_;
|
||||||
kind link_type_;
|
kind link_type_;
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void elementInfoChange(DiagramContext old_info, DiagramContext new_info);
|
void elementInfoChange(DiagramContext old_info, DiagramContext new_info);
|
||||||
@@ -182,8 +182,11 @@ class Element : public QetGraphicsItem {
|
|||||||
void updatePixmap();
|
void updatePixmap();
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void hoverEnterEvent ( QGraphicsSceneHoverEvent * );
|
virtual void mouseMoveEvent ( QGraphicsSceneMouseEvent *event );
|
||||||
virtual void hoverLeaveEvent ( QGraphicsSceneHoverEvent * );
|
virtual void mouseReleaseEvent ( QGraphicsSceneMouseEvent *event );
|
||||||
|
virtual void hoverEnterEvent ( QGraphicsSceneHoverEvent * );
|
||||||
|
virtual void hoverLeaveEvent ( QGraphicsSceneHoverEvent * );
|
||||||
|
|
||||||
private:
|
private:
|
||||||
bool m_mouse_over;
|
bool m_mouse_over;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user