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

okteta

  • sources
  • kde-4.12
  • kdesdk
  • okteta
  • kasten
  • controllers
  • view
  • structures
  • script
scripthandler.h
Go to the documentation of this file.
1 /*
2  * This file is part of the Okteta Kasten Framework, made within the KDE community.
3  *
4  * Copyright 2010, 2011 Alex Richardson <alex.richardson@gmx.de>
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) version 3, or any
10  * later version accepted by the membership of KDE e.V. (or its
11  * successor approved by the membership of KDE e.V.), which shall
12  * act as a proxy defined in Section 6 of version 3 of the license.
13  *
14  * This library is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17  * Lesser General Public License for more details.
18  *
19  * You should have received a copy of the GNU Lesser General Public
20  * License along with this library. If not, see <http://www.gnu.org/licenses/>.
21  */
22 
23 #ifndef SCRIPTHANDLER_H_
24 #define SCRIPTHANDLER_H_
25 
26 #include <QScriptValue>
27 #include <QScopedPointer>
28 
29 #include <config-structtool.h>
30 #include "scripthandlerinfo.h"
31 
32 class DataInformation;
33 class ArrayDataInformation;
34 class TaggedUnionDataInformation;
35 class ScriptLogger;
36 class TopLevelDataInformation;
37 class QScriptEngineDebugger;
38 
39 class ScriptHandler
40 {
41  Q_DISABLE_COPY(ScriptHandler)
42 
43 public:
44  ScriptHandler(QScriptEngine* engine, TopLevelDataInformation* topLevel);
45  virtual ~ScriptHandler();
46 
47  void validateData(DataInformation* data);
49  void updateDataInformation(DataInformation* data);
50  void updateLength(ArrayDataInformation* array);
51  QString customToString(const DataInformation* data, const QScriptValue& func);
52 
53  QScriptEngine* engine() const;
54  ScriptHandlerInfo* handlerInfo();
55 
56  QScriptValue callFunction(QScriptValue func, DataInformation* data, ScriptHandlerInfo::Mode mode);
57 private:
58  QScopedPointer<QScriptEngine> mEngine;
59  TopLevelDataInformation* mTopLevel;
60 #ifdef OKTETA_DEBUG_SCRIPT
61  QScopedPointer<QScriptEngineDebugger> mDebugger;
62 #endif
63  ScriptHandlerInfo mHandlerInfo;
64 };
65 
66 inline QScriptEngine* ScriptHandler::engine() const
67 {
68  return mEngine.data();
69 }
70 
71 inline ScriptHandlerInfo* ScriptHandler::handlerInfo()
72 {
73  return &mHandlerInfo;
74 }
75 
76 #endif /* SCRIPTHANDLER_H_ */
ScriptHandler::handlerInfo
ScriptHandlerInfo * handlerInfo()
Definition: scripthandler.h:71
DataInformation
Interface that must be implemented by all datatypes.
Definition: datainformation.h:67
ScriptHandler::~ScriptHandler
virtual ~ScriptHandler()
Definition: scripthandler.cpp:47
TaggedUnionDataInformation
A class holding the data of a struct for Okteta.
Definition: taggeduniondatainformation.h:31
ArrayDataInformation
Definition: arraydatainformation.h:36
ScriptHandler::ScriptHandler
ScriptHandler(QScriptEngine *engine, TopLevelDataInformation *topLevel)
Definition: scripthandler.cpp:39
ScriptHandler::updateLength
void updateLength(ArrayDataInformation *array)
Definition: scripthandler.cpp:126
TopLevelDataInformation
Definition: topleveldatainformation.h:46
ScriptHandler::callFunction
QScriptValue callFunction(QScriptValue func, DataInformation *data, ScriptHandlerInfo::Mode mode)
Definition: scripthandler.cpp:162
ScriptHandler::updateDataInformation
void updateDataInformation(DataInformation *data)
The pointer may be changed while updating, CHECK AS SOON AS FUNCTION RETURNS!
Definition: scripthandler.cpp:101
ScriptHandler
Definition: scripthandler.h:39
ScriptLogger
NOT THREAD SAFE!
Definition: scriptlogger.h:35
ScriptHandler::engine
QScriptEngine * engine() const
Definition: scripthandler.h:66
ScriptHandlerInfo::Mode
Mode
The type of function that is being evaluated (most writing is only allowed when updating) ...
Definition: scripthandlerinfo.h:45
ScriptHandler::customToString
QString customToString(const DataInformation *data, const QScriptValue &func)
Definition: scripthandler.cpp:148
ScriptHandlerInfo
Definition: scripthandlerinfo.h:39
ScriptHandler::validateData
void validateData(DataInformation *data)
Definition: scripthandler.cpp:51
scripthandlerinfo.h
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 23:04:09 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

okteta

Skip menu "okteta"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdesdk API Reference

Skip menu "kdesdk API Reference"
  • kapptemplate
  • kcachegrind
  • kompare
  • lokalize
  • okteta
  • umbrello
  •   umbrello

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