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

Kate

  • kde-4.14
  • applications
  • kate
  • part
  • script
katecommandlinescript.h
Go to the documentation of this file.
1 /* This file is part of the KDE libraries and the Kate part.
2  *
3  * Copyright (C) 2009 Dominik Haumann <dhaumann kde org>
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Library General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library 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 GNU
13  * Library General Public License for more details.
14  *
15  * You should have received a copy of the GNU Library General Public License
16  * along with this library; see the file COPYING.LIB. If not, write to
17  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18  * Boston, MA 02110-1301, USA.
19  */
20 
21 #ifndef KATE_COMMANDLINE_SCRIPT_H
22 #define KATE_COMMANDLINE_SCRIPT_H
23 
24 #include "katescript.h"
25 #include "kateview.h"
26 
27 #include <QtCore/QPair>
28 #include <ktexteditor/commandinterface.h>
29 
30 class KateScriptDocument;
31 
32 class KateCommandLineScriptHeader
33 {
34  public:
35  KateCommandLineScriptHeader()
36  {}
37 
38  inline void setFunctions(const QStringList& functions)
39  { m_functions = functions; }
40  inline const QStringList& functions() const
41  { return m_functions; }
42 
43  private:
44  QStringList m_functions;
45 };
46 
47 class ScriptActionInfo
48 {
49  public:
50  ScriptActionInfo() {}
51 
52  inline bool isValid() const { return !(m_command.isEmpty() || m_text.isEmpty()); }
53 
54  inline void setCommand(const QString& command) { m_command = command; }
55  inline QString command() const { return m_command; }
56  inline void setText(const QString& text) { m_text = text; }
57  inline QString text() const { return m_text; }
58  inline void setIcon(const QString& icon) { m_icon = icon; }
59  inline QString icon() const { return m_icon; }
60  inline void setCategory(const QString& category) { m_category = category; }
61  inline QString category() const { return m_category; }
62  inline void setInteractive(bool interactive) { m_interactive = interactive; }
63  inline bool interactive() const { return m_interactive; }
64  inline void setShortcut(const QString& shortcut) { m_shortcut = shortcut; }
65  inline QString shortcut() const { return m_shortcut; }
66 
67  private:
68  QString m_command;
69  QString m_text;
70  QString m_icon;
71  QString m_category;
72  bool m_interactive;
73  QString m_shortcut;
74 };
75 
80 class KateCommandLineScript : public KateScript, public KTextEditor::Command,
81  public KTextEditor::RangeCommand
82 {
83  public:
84  KateCommandLineScript(const QString &url, const KateCommandLineScriptHeader &header);
85  virtual ~KateCommandLineScript();
86 
87  const KateCommandLineScriptHeader& commandHeader();
88 
89  bool callFunction(const QString& cmd, const QStringList args, QString &errorMessage);
90 
91  ScriptActionInfo actionInfo(const QString& cmd);
92 
93  //
94  // KTextEditor::Command interface
95  //
96  public:
97  virtual const QStringList& cmds();
98  virtual bool help(KTextEditor::View *view, const QString &cmd, QString &msg);
99  virtual bool exec(KTextEditor::View *view, const QString &cmd, QString &msg);
100  virtual bool exec(KTextEditor::View *view, const QString &cmd, QString &msg, const KTextEditor::Range &range);
101  virtual bool supportsRange(const QString &cmd);
102 
103  private:
104  KateCommandLineScriptHeader m_commandHeader;
105 };
106 
107 #endif
108 
109 // kate: space-indent on; indent-width 2; replace-tabs on;
kateview.h
ScriptActionInfo::command
QString command() const
Definition: katecommandlinescript.h:55
KateCommandLineScript::help
virtual bool help(KTextEditor::View *view, const QString &cmd, QString &msg)
Definition: katecommandlinescript.cpp:155
KateCommandLineScript::cmds
virtual const QStringList & cmds()
Definition: katecommandlinescript.cpp:107
ScriptActionInfo::setText
void setText(const QString &text)
Definition: katecommandlinescript.h:56
KateScript
KateScript objects represent a script that can be executed and inspected.
Definition: katescript.h:106
KateCommandLineScriptHeader::setFunctions
void setFunctions(const QStringList &functions)
Definition: katecommandlinescript.h:38
KateCommandLineScriptHeader
Definition: katecommandlinescript.h:32
ScriptActionInfo::isValid
bool isValid() const
Definition: katecommandlinescript.h:52
katescript.h
ScriptActionInfo::shortcut
QString shortcut() const
Definition: katecommandlinescript.h:65
KateCommandLineScript::~KateCommandLineScript
virtual ~KateCommandLineScript()
Definition: katecommandlinescript.cpp:40
KateCommandLineScript::actionInfo
ScriptActionInfo actionInfo(const QString &cmd)
Definition: katecommandlinescript.cpp:76
KateCommandLineScript
A specialized class for scripts that are of type KateScriptInformation::IndentationScript.
Definition: katecommandlinescript.h:80
ScriptActionInfo::setIcon
void setIcon(const QString &icon)
Definition: katecommandlinescript.h:58
KateCommandLineScript::callFunction
bool callFunction(const QString &cmd, const QStringList args, QString &errorMessage)
Definition: katecommandlinescript.cpp:51
ScriptActionInfo::setShortcut
void setShortcut(const QString &shortcut)
Definition: katecommandlinescript.h:64
ScriptActionInfo::setCommand
void setCommand(const QString &command)
Definition: katecommandlinescript.h:54
KateCommandLineScriptHeader::functions
const QStringList & functions() const
Definition: katecommandlinescript.h:40
KateScriptDocument
Thinish wrapping around KateDocument, exposing the methods we want exposed and adding some helper met...
Definition: katescriptdocument.h:46
ScriptActionInfo::text
QString text() const
Definition: katecommandlinescript.h:57
QString::isEmpty
bool isEmpty() const
ScriptActionInfo::setInteractive
void setInteractive(bool interactive)
Definition: katecommandlinescript.h:62
ScriptActionInfo::setCategory
void setCategory(const QString &category)
Definition: katecommandlinescript.h:60
QString
KateScript::url
const QString & url()
The script's URL.
Definition: katescript.h:123
KateCommandLineScript::commandHeader
const KateCommandLineScriptHeader & commandHeader()
Definition: katecommandlinescript.cpp:45
ScriptActionInfo::icon
QString icon() const
Definition: katecommandlinescript.h:59
QStringList
KateScript::errorMessage
const QString & errorMessage()
Return a context-specific error message.
Definition: katescript.h:153
KateCommandLineScript::KateCommandLineScript
KateCommandLineScript(const QString &url, const KateCommandLineScriptHeader &header)
Definition: katecommandlinescript.cpp:33
KateCommandLineScript::supportsRange
virtual bool supportsRange(const QString &cmd)
Definition: katecommandlinescript.cpp:150
ScriptActionInfo::category
QString category() const
Definition: katecommandlinescript.h:61
ScriptActionInfo
Definition: katecommandlinescript.h:47
KateCommandLineScript::exec
virtual bool exec(KTextEditor::View *view, const QString &cmd, QString &msg)
Definition: katecommandlinescript.cpp:112
KateCommandLineScriptHeader::KateCommandLineScriptHeader
KateCommandLineScriptHeader()
Definition: katecommandlinescript.h:35
ScriptActionInfo::interactive
bool interactive() const
Definition: katecommandlinescript.h:63
ScriptActionInfo::ScriptActionInfo
ScriptActionInfo()
Definition: katecommandlinescript.h:50
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Sat May 9 2020 03:56:58 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

Kate

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

applications API Reference

Skip menu "applications API Reference"
  •   kate
  •       kate
  •   KTextEditor
  •   Kate
  • Konsole

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