1 /*
2 	Copyright 2006-2019 The QElectroTech Team
3 	This file is part of QElectroTech.
4 
5 	QElectroTech is free software: you can redistribute it and/or modify
6 	it under the terms of the GNU General Public License as published by
7 	the Free Software Foundation, either version 2 of the License, or
8 	(at your option) any later version.
9 
10 	QElectroTech is distributed in the hope that it will be useful,
11 	but WITHOUT ANY WARRANTY; without even the implied warranty of
12 	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 	GNU General Public License for more details.
14 
15 	You should have received a copy of the GNU General Public License
16 	along with QElectroTech.  If not, see <http://www.gnu.org/licenses/>.
17 */
18 #ifndef ESEVENTADDLINE_H
19 #define ESEVENTADDLINE_H
20 
21 #include "eseventinterface.h"
22 
23 class ElementScene;
24 class PartLine;
25 class QGraphicsSceneMouseEvent;
26 
27 /**
28  * @brief The ESEventAddLine class
29  * This ESEvent manage creation of line in a ElementScene
30  */
31 class ESEventAddLine : public ESEventInterface
32 {
33 	public:
34 		ESEventAddLine(ElementScene *scene);
35 		~ESEventAddLine() override;
36 
37 		bool mousePressEvent   (QGraphicsSceneMouseEvent *event) override;
38 		bool mouseMoveEvent    (QGraphicsSceneMouseEvent *event) override;
39 		bool mouseReleaseEvent (QGraphicsSceneMouseEvent *event) override;
40 
41 	private:
42 		PartLine *m_line;
43 };
44 
45 #endif // ESEVENTADDLINE_H
46