[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)
{