• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

rocs/VisualEditor

  • sources
  • kde-4.14
  • kdeedu
  • rocs
  • VisualEditor
  • Actions
AddDataAction.cpp
Go to the documentation of this file.
1 /*
2  This file is part of Rocs.
3  Copyright 2008 Tomaz Canabrava <tomaz.canabrava@gmail.com>
4  Copyright 2008 Ugo Sangiori <ugorox@gmail.com>
5 
6  This program is free software; you can redistribute it and/or
7  modify it under the terms of the GNU General Public License as
8  published by the Free Software Foundation; either version 2 of
9  the License, or (at your option) any later version.
10 
11  This program is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License
17  along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19 
20 #include "AddDataAction.h"
21 #include "Scene/GraphScene.h"
22 #include "Scene/DataItem.h"
23 #include "DataStructure.h"
24 #include "Data.h"
25 #include <KLocale>
26 #include "Document.h"
27 #include <KDebug>
28 #include <DocumentManager.h>
29 
30 AddDataAction::AddDataAction(GraphScene *scene, QObject *parent)
31  : AbstractAction(scene, parent)
32 {
33  setText(i18nc("@action:intoolbar", "Add Data"));
34  setToolTip(i18nc("@info:tooltip", "Creates a new node at the click position."));
35  _name = "add-node";
36 }
37 
38 AddDataAction::~AddDataAction()
39 {
40 }
41 
42 bool AddDataAction::executePress(QPointF pos)
43 {
44  if (!DocumentManager::self().activeDocument()->activeDataStructure()
45  || DocumentManager::self().activeDocument()->activeDataStructure()->readOnly()
46  ) {
47  return false;
48  }
49  //FIXME this only creates data elements of default type
50  DataPtr tmp = DocumentManager::self().activeDocument()->activeDataStructure()
51  ->createData(QString(), QPointF(pos.x(), pos.y()), 0);
52  kDebug() << " the data's actual position: " << tmp.get()->x() << ", " << tmp.get()->y() ;
53  return true;
54 }
55 
56 
57 void AddDataAction::setAddPosition(QPointF position)
58 {
59  _position = position;
60 }
61 
62 
63 bool AddDataAction::executePress()
64 {
65  return executePress(_position);
66 }
AddDataAction::executePress
bool executePress()
Definition: AddDataAction.cpp:63
AddDataAction.h
AddDataAction::setAddPosition
void setAddPosition(QPointF position)
Definition: AddDataAction.cpp:57
GraphScene.h
AbstractAction
the base class for custom actions. This class provides the basic functionality for all custom actions...
Definition: AbstractAction.h:36
QPointF
AddDataAction::AddDataAction
AddDataAction(GraphScene *scene, QObject *parent=0)
Definition: AddDataAction.cpp:30
QPointF::x
qreal x() const
QPointF::y
qreal y() const
GraphScene
Definition: GraphScene.h:38
QObject
AbstractAction::_name
QString _name
Definition: AbstractAction.h:90
QString
AddDataAction::~AddDataAction
~AddDataAction()
Definition: AddDataAction.cpp:38
DataItem.h
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:16:27 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

rocs/VisualEditor

Skip menu "rocs/VisualEditor"
  • Main Page
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal