From 826c5180a1bf5763a3c58e42ee040242435076d9 Mon Sep 17 00:00:00 2001 From: xavierqet Date: Sun, 2 Dec 2007 20:41:19 +0000 Subject: [PATCH] Double-cliquer sur un conducteur permet desormais de l'editer git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@223 bfdf4180-ca20-0410-9c96-a3a8aa849046 --- diagramview.cpp | 16 +++++++++++++++- diagramview.h | 2 ++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/diagramview.cpp b/diagramview.cpp index e2dbef949..b2a139dea 100644 --- a/diagramview.cpp +++ b/diagramview.cpp @@ -756,6 +756,16 @@ void DiagramView::editConductor() { if (selected_conductors.count() != 1) return; Conductor *edited_conductor = selected_conductors.first(); + editConductor(edited_conductor); +} + +/** + Edite le conducteur passe en parametre + @param edited_conductor Conducteur a editer +*/ +void DiagramView::editConductor(Conductor *edited_conductor) { + if (!edited_conductor) return; + // initialise l'editeur de proprietes pour le conducteur ConductorProperties old_properties = edited_conductor -> properties(); ConductorPropertiesWidget *cpw = new ConductorPropertiesWidget(old_properties); @@ -911,7 +921,7 @@ void DiagramView::mouseDoubleClickEvent(QMouseEvent *e) { // recupere le rectangle corespondant au cartouche QRectF inset_rect( Diagram::margin, - Diagram::margin + /*bi.columnsHeaderHeight() + */bi.columnsHeight(), + Diagram::margin + bi.columnsHeight(), bi.insetWidth(), bi.insetHeight() ); @@ -931,6 +941,10 @@ void DiagramView::mouseDoubleClickEvent(QMouseEvent *e) { if (inset_rect.contains(click_pos) || columns_rect.contains(click_pos)) { // edite les proprietes du schema dialogEditInfos(); + } else if (QGraphicsItem *qgi = itemAt(e -> pos())) { + if (Conductor *c = qgraphicsitem_cast(qgi)) { + editConductor(c); + } } else { QGraphicsView::mouseDoubleClickEvent(e); } diff --git a/diagramview.h b/diagramview.h index aed96bebc..948daa832 100644 --- a/diagramview.h +++ b/diagramview.h @@ -20,6 +20,7 @@ #include class Diagram; class QETDiagramEditor; +class Conductor; /** Classe representant graphiquement un schema electrique */ @@ -105,6 +106,7 @@ class DiagramView : public QGraphicsView { void adjustSceneRect(); void updateWindowTitle(); void editConductor(); + void editConductor(Conductor *); void resetConductors(); void editDefaultConductorProperties();