[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


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/