[qet] [802] + Agrandissement des pts de deplacement des conducteurs lorsqu' on clique dessus. |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/qet Archives
]
Revision: 802
Author: cfdev
Date: 2009-12-04 13:04:42 +0100 (Fri, 04 Dec 2009)
Log Message:
-----------
+ Agrandissement des pts de deplacement des conducteurs lorsqu'on clique dessus.
Modified Paths:
--------------
trunk/sources/conductor.cpp
trunk/sources/conductor.h
Modified: trunk/sources/conductor.cpp
===================================================================
--- trunk/sources/conductor.cpp 2009-12-03 22:38:36 UTC (rev 801)
+++ trunk/sources/conductor.cpp 2009-12-04 12:04:42 UTC (rev 802)
@@ -93,6 +93,8 @@
this,
SLOT(displayedTextChanged())
);
+ // taille du carre de saisie du segment
+ RectMoveSeg_Scale = 1.0;
}
/**
@@ -503,15 +505,15 @@
QPointF previous_point;
for (int i = 1 ; i < (points.size() -1) ; ++ i) {
QPointF point = points.at(i);
-
+
// dessine le carre de saisie du segment
if (i > 1) {
qp -> fillRect(
QRectF(
- ((previous_point.x() + point.x()) / 2.0 ) - pretty_offset,
- ((previous_point.y() + point.y()) / 2.0 ) - pretty_offset,
- 2.0,
- 2.0
+ ((previous_point.x() + point.x()) / 2.0 ) - pretty_offset * RectMoveSeg_Scale,
+ ((previous_point.y() + point.y()) / 2.0 ) - pretty_offset * RectMoveSeg_Scale,
+ 2.0 * RectMoveSeg_Scale,
+ 2.0 * RectMoveSeg_Scale
),
square_brush
);
@@ -601,11 +603,12 @@
} else if (hasClickedOn(press_point, segment -> middle())) {
moving_point = false;
moving_segment = true;
+ RectMoveSeg_Scale = 2.0;
previous_z_value = zValue();
setZValue(5000.0);
moved_segment = segment;
break;
- }
+ }else RectMoveSeg_Scale = 1.0;
segment = segment -> nextSegment();
}
}
@@ -620,17 +623,19 @@
@param e L'evenement decrivant le deplacement de souris.
*/
void Conductor::mouseMoveEvent(QGraphicsSceneMouseEvent *e) {
+ // position pointee par la souris
+ qreal mouse_x = e -> pos().x();
+ qreal mouse_y = e -> pos().y();
+
// clic gauche
if (e -> buttons() & Qt::LeftButton) {
- // position pointee par la souris
- qreal mouse_x = e -> pos().x();
- qreal mouse_y = e -> pos().y();
bool snap_conductors_to_grid = e -> modifiers() ^ Qt::ShiftModifier;
if (snap_conductors_to_grid) {
mouse_x = qRound(mouse_x / (Diagram::xGrid * 1.0)) * Diagram::xGrid;
mouse_y = qRound(mouse_y / (Diagram::yGrid * 1.0)) * Diagram::yGrid;
}
+
if (moving_point) {
// la modification par points revient bientot
/*
Modified: trunk/sources/conductor.h
===================================================================
--- trunk/sources/conductor.h 2009-12-03 22:38:36 UTC (rev 801)
+++ trunk/sources/conductor.h 2009-12-04 12:04:42 UTC (rev 802)
@@ -93,6 +93,8 @@
virtual void hoverMoveEvent(QGraphicsSceneHoverEvent *);
private:
+ /// taille du carre de saisie du segment
+ int RectMoveSeg_Scale;
/// caracteristiques du conducteur
ConductorProperties properties_;
/// booleen indiquant si le fil est encore valide