• Skip to content
  • Skip to link menu
KDE 4.2 API Reference
  • KDE API Reference
  • kdelibs
  • Sitemap
  • Contact Us
 

Kate

katescript.h

Go to the documentation of this file.
00001 
00019 
00020 #ifndef KATE_SCRIPT_H
00021 #define KATE_SCRIPT_H
00022 
00023 #include <QtCore/QObject>
00024 #include <QtCore/QHash>
00025 #include <QtCore/QStringList>
00026 
00027 #include <QtScript/QScriptValue>
00028 #include <QtScript/QScriptable>
00029 
00030 class QScriptEngine;
00031 class QScriptContext;
00032 
00033 class KateDocument;
00034 class KateView;
00035 
00036 class KateScriptDocument;
00037 class KateScriptView;
00038 
00039 namespace Kate {
00040   enum ScriptType {
00042     IndentationScript,
00044     UnknownScript
00045   };
00046 
00048   namespace Script {
00049     QScriptValue debug(QScriptContext *context, QScriptEngine *engine);
00050   }
00051 }
00052 
00053 //BEGIN KateScriptInformation
00054 
00058 class KateScriptInformation {
00059   public:
00061     QString name;
00063     QString license;
00065     QString author;
00067     QString version;
00069     QString kateVersion;
00075     Kate::ScriptType type;
00081     QString requiredStyle;
00087     QStringList indentLanguages;
00093     int priority;
00097     QHash<QString, QString> other;
00098 
00102     QString baseName;
00103 };
00104 
00105 //END
00106 
00107 //BEGIN KateScript
00108 
00112 class KateScript {
00113   public:
00119     KateScript(const QString &url, const KateScriptInformation &information);
00120     ~KateScript();
00121 
00123     const QString &url() { return m_url; }
00124 
00126     const KateScriptInformation &information() { return m_information; }
00127 
00135     bool load();
00136 
00141     bool setView (KateView *view);
00142 
00147     QScriptValue global(const QString &name);
00148 
00153     QScriptValue function(const QString &name);
00154 
00156     const QString &errorMessage() { return m_errorMessage; }
00157 
00159     void displayBacktrace(const QScriptValue &error, const QString &header = QString());
00160 
00162     void clearExceptions();
00163 
00164   private:
00166     void initEngine();
00167 
00169     bool m_loaded;
00171     bool m_loadSuccessful;
00173     QString m_url;
00175     KateScriptInformation m_information;
00177     QString m_errorMessage;
00178 
00179   protected:
00181     QScriptEngine *m_engine;
00182 
00183   private:
00185     KateScriptDocument *m_document;
00186     KateScriptView *m_view;
00187 };
00188 
00189 //END
00190 
00191 #endif
00192 
00193 // kate: space-indent on; indent-width 2; replace-tabs on;

Kate

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

kdelibs

Skip menu "kdelibs"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • Kate
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • Kross
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
Generated for kdelibs by doxygen 1.5.7
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal