[qet] [4258] Replace DVEventAddText by DiagramEventAddText.

[ Thread Index | Date Index | More lists.tuxfamily.org/qet Archives ]


Revision: 4258
Author:   blacksun
Date:     2015-11-12 18:29:48 +0100 (Thu, 12 Nov 2015)
Log Message:
-----------
Replace DVEventAddText by DiagramEventAddText.
Use is unchanged

Modified Paths:
--------------
    trunk/sources/qetdiagrameditor.cpp

Added Paths:
-----------
    trunk/sources/diagramevent/diagrameventaddtext.cpp
    trunk/sources/diagramevent/diagrameventaddtext.h

Removed Paths:
-------------
    trunk/sources/dvevent/dveventaddtext.cpp
    trunk/sources/dvevent/dveventaddtext.h

Added: trunk/sources/diagramevent/diagrameventaddtext.cpp
===================================================================
--- trunk/sources/diagramevent/diagrameventaddtext.cpp	                        (rev 0)
+++ trunk/sources/diagramevent/diagrameventaddtext.cpp	2015-11-12 17:29:48 UTC (rev 4258)
@@ -0,0 +1,56 @@
+/*
+        Copyright 2006-2015 The QElectroTech Team
+        This file is part of QElectroTech.
+
+        QElectroTech is free software: you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation, either version 2 of the License, or
+        (at your option) any later version.
+
+        QElectroTech is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with QElectroTech.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#include "diagrameventaddtext.h"
+#include "independenttextitem.h"
+#include "diagramcommands.h"
+#include "diagram.h"
+
+/**
+ * @brief DiagramEventAddText::DiagramEventAddText
+ * Default constructor
+ * @param diagram : the diagram where this event must operate
+ */
+DiagramEventAddText::DiagramEventAddText(Diagram *diagram) :
+    DiagramEventInterface(diagram)
+{}
+
+/**
+ * @brief DiagramEventAddText::~DiagramEventAddText
+ */
+DiagramEventAddText::~DiagramEventAddText()
+{}
+
+/**
+ * @brief DiagramEventAddText::mousePressEvent
+ * @param event : event of mouse press event.
+ * @return : true if this event is handled, otherwise false
+ */
+bool DiagramEventAddText::mousePressEvent(QGraphicsSceneMouseEvent *event)
+{
+    if (event->button() == Qt::LeftButton)
+    {
+        IndependentTextItem *text = new IndependentTextItem();
+        m_diagram -> undoStack().push(new AddItemCommand<IndependentTextItem *>(text, m_diagram, event->scenePos()));
+        text->setTextInteractionFlags(Qt::TextEditorInteraction);
+        text->setFocus(Qt::MouseFocusReason);
+        emit finish();
+        return true;
+    }
+    return false;
+}

Added: trunk/sources/diagramevent/diagrameventaddtext.h
===================================================================
--- trunk/sources/diagramevent/diagrameventaddtext.h	                        (rev 0)
+++ trunk/sources/diagramevent/diagrameventaddtext.h	2015-11-12 17:29:48 UTC (rev 4258)
@@ -0,0 +1,40 @@
+/*
+        Copyright 2006-2015 The QElectroTech Team
+        This file is part of QElectroTech.
+
+        QElectroTech is free software: you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation, either version 2 of the License, or
+        (at your option) any later version.
+
+        QElectroTech is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with QElectroTech.  If not, see <http://www.gnu.org/licenses/>.
+*/
+#ifndef DIAGRAMEVENTADDTEXT_H
+#define DIAGRAMEVENTADDTEXT_H
+
+#include "diagrameventinterface.h"
+
+class Diagram;
+
+/**
+ * @brief The DiagramEventAddText class
+ * This diagram event handle the creation of a new text in a diagram
+ */
+class DiagramEventAddText : public DiagramEventInterface
+{
+        Q_OBJECT
+
+        public:
+            DiagramEventAddText(Diagram *diagram);
+            virtual ~DiagramEventAddText();
+
+            virtual bool mousePressEvent (QGraphicsSceneMouseEvent *event);
+};
+
+#endif // DIAGRAMEVENTADDTEXT_H

Deleted: trunk/sources/dvevent/dveventaddtext.cpp
===================================================================
--- trunk/sources/dvevent/dveventaddtext.cpp	2015-11-12 17:01:08 UTC (rev 4257)
+++ trunk/sources/dvevent/dveventaddtext.cpp	2015-11-12 17:29:48 UTC (rev 4258)
@@ -1,43 +0,0 @@
-/*
-	Copyright 2006-2015 The QElectroTech Team
-	This file is part of QElectroTech.
-
-	QElectroTech is free software: you can redistribute it and/or modify
-	it under the terms of the GNU General Public License as published by
-	the Free Software Foundation, either version 2 of the License, or
-	(at your option) any later version.
-
-	QElectroTech is distributed in the hope that it will be useful,
-	but WITHOUT ANY WARRANTY; without even the implied warranty of
-	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-	GNU General Public License for more details.
-
-	You should have received a copy of the GNU General Public License
-	along with QElectroTech.  If not, see <http://www.gnu.org/licenses/>.
-*/
-#include "dveventaddtext.h"
-#include "independenttextitem.h"
-#include "diagram.h"
-#include "diagramcommands.h"
-#include "diagramview.h"
-#include <QMouseEvent>
-
-DVEventAddText::DVEventAddText(DiagramView *dv) :
-	DVEventInterface (dv)
-{}
-
-DVEventAddText::~DVEventAddText() {}
-
-bool DVEventAddText::mousePressEvent(QMouseEvent *event)
-{
-	if (event->button() == Qt::LeftButton)
-	{
-		IndependentTextItem *text = new IndependentTextItem();
-		m_diagram -> undoStack().push(new AddItemCommand<IndependentTextItem *>(text, m_diagram, m_dv -> mapToScene(event -> pos())));
-		text->setTextInteractionFlags(Qt::TextEditorInteraction);
-		text->setFocus(Qt::MouseFocusReason);
-		emit finish();
-		return true;
-	}
-	return false;
-}

Deleted: trunk/sources/dvevent/dveventaddtext.h
===================================================================
--- trunk/sources/dvevent/dveventaddtext.h	2015-11-12 17:01:08 UTC (rev 4257)
+++ trunk/sources/dvevent/dveventaddtext.h	2015-11-12 17:29:48 UTC (rev 4258)
@@ -1,33 +0,0 @@
-/*
-	Copyright 2006-2015 The QElectroTech Team
-	This file is part of QElectroTech.
-
-	QElectroTech is free software: you can redistribute it and/or modify
-	it under the terms of the GNU General Public License as published by
-	the Free Software Foundation, either version 2 of the License, or
-	(at your option) any later version.
-
-	QElectroTech is distributed in the hope that it will be useful,
-	but WITHOUT ANY WARRANTY; without even the implied warranty of
-	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-	GNU General Public License for more details.
-
-	You should have received a copy of the GNU General Public License
-	along with QElectroTech.  If not, see <http://www.gnu.org/licenses/>.
-*/
-#ifndef DVEVENTADDTEXT_H
-#define DVEVENTADDTEXT_H
-
-#include "dveventinterface.h"
-
-class DVEventAddText : public DVEventInterface
-{
-	Q_OBJECT
-
-	public:
-		DVEventAddText(DiagramView *dv);
-		virtual ~DVEventAddText ();
-		virtual bool mousePressEvent       (QMouseEvent *event);
-};
-
-#endif // DVEVENTADDTEXT_H

Modified: trunk/sources/qetdiagrameditor.cpp
===================================================================
--- trunk/sources/qetdiagrameditor.cpp	2015-11-12 17:01:08 UTC (rev 4257)
+++ trunk/sources/qetdiagrameditor.cpp	2015-11-12 17:29:48 UTC (rev 4258)
@@ -35,11 +35,11 @@
 #include "nomenclature.h"
 #include "diagramfoliolist.h"
 #include "qetshapeitem.h"
-#include "dveventaddtext.h"
 #include "reportproperties.h"
 #include "diagrampropertieseditordockwidget.h"
 #include "diagrameventaddshape.h"
 #include "diagrameventaddimage.h"
+#include "diagrameventaddtext.h"
 
 #include "ui/dialogautonum.h"
 
@@ -1138,25 +1138,10 @@
 void QETDiagramEditor::addItemGroupTriggered(QAction *action)
 {
 	QString value = action->data().toString();
-	DiagramView *dv = currentDiagram();
 
-	if (!dv || value.isEmpty()) return;
+	if (Q_UNLIKELY (!currentDiagram() || !currentDiagram()->diagram() || value.isEmpty())) return;
 
-	DVEventInterface *dvevent = nullptr;
-
-	if (value == "text")
-		dvevent = new DVEventAddText(dv);
-
-	if (dvevent)
-	{
-		dv->setEventInterface(dvevent);
-		connect(dvevent, &DVEventInterface::finish, [action](){action->setChecked(false);});
-		return;
-	}
-
-	if (Q_UNLIKELY (!dv->diagram())) return;
-
-	Diagram *d = dv->diagram();
+	Diagram *d = currentDiagram()->diagram();
 	DiagramEventInterface *diagram_event = nullptr;
 
 	if (value == "line")
@@ -1179,6 +1164,8 @@
 		else
 			diagram_event = deai;
 	}
+	else if (value == "text")
+		diagram_event = new DiagramEventAddText(d);
 
 	if (diagram_event)
 	{


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