KateTemplateHandler

Search for usage in LXR

#include <katetemplatehandler.h>

Inheritance diagram for KateTemplateHandler:

Public Member Functions

 KateTemplateHandler (KTextEditor::ViewPrivate *view, KTextEditor::Cursor position, const QString &templateString, const QString &script, KateUndoManager *undoManager)
 
KTextEditor::DocumentPrivatedoc () const
 
KTextEditor::ViewPrivate * view () const
 
- Public Member Functions inherited from QObject
 QObject (QObject *parent)
 
QBindable< QStringbindableObjectName ()
 
bool blockSignals (bool block)
 
const QObjectListchildren () const const
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectInfo () const const
 
void dumpObjectTree () const const
 
QList< QByteArraydynamicPropertyNames () const const
 
virtual bool event (QEvent *e)
 
findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (Qt::FindChildOptions options) const const
 
bool inherits (const char *className) const const
 
void installEventFilter (QObject *filterObj)
 
bool isQuickItemType () const const
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
void killTimer (int id)
 
virtual const QMetaObjectmetaObject () const const
 
void moveToThread (QThread *targetThread)
 
QString objectName () const const
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
QVariant property (const char *name) const const
 
 Q_CLASSINFO (Name, Value)
 
 Q_EMIT Q_EMIT
 
 Q_ENUM (...)
 
 Q_ENUM_NS (...)
 
 Q_ENUMS (...)
 
 Q_FLAG (...)
 
 Q_FLAG_NS (...)
 
 Q_FLAGS (...)
 
 Q_GADGET Q_GADGET
 
 Q_GADGET_EXPORT (EXPORT_MACRO)
 
 Q_INTERFACES (...)
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_MOC_INCLUDE Q_MOC_INCLUDE
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_OBJECT Q_OBJECT
 
 Q_PROPERTY (...)
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SLOT Q_SLOT
 
 Q_SLOTS Q_SLOTS
 
qobject_cast (const QObject *object)
 
qobject_cast (QObject *object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 
void removeEventFilter (QObject *obj)
 
void setObjectName (const QString &name)
 
void setObjectName (QAnyStringView name)
 
void setParent (QObject *parent)
 
bool setProperty (const char *name, const QVariant &value)
 
bool setProperty (const char *name, QVariant &&value)
 
bool signalsBlocked () const const
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds interval, Qt::TimerType timerType)
 
QThreadthread () const const
 

Protected Member Functions

bool eventFilter (QObject *object, QEvent *event) override
 
- Protected Member Functions inherited from QObject
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
int receivers (const char *signal) const const
 
QObjectsender () const const
 
int senderSignalIndex () const const
 
virtual void timerEvent (QTimerEvent *event)
 

Additional Inherited Members

- Public Types inherited from QObject
typedef  QObjectList
 
- Properties inherited from QObject
 objectName
 
- Static Public Member Functions inherited from QObject
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 

Detailed Description

Inserts a template and offers advanced snippet features, like navigation and mirroring.

For each template inserted a new KateTemplateHandler will be created.

The handler has the following features:

  • It inserts the template string into the document at the requested position.
  • When the template contains at least one variable, the cursor will be placed at the start of the first variable and its range gets selected.
  • When more than one variable exists,TAB and SHIFT TAB can be used to navigate to the next/previous variable.
  • When a variable occurs more than once in the template, edits to any of the occurrences will be mirroed to the other ones.
  • When ESC is pressed, the template handler closes.
  • When ALT + RETURN is pressed and a ${cursor} variable exists in the template,the cursor will be placed there. Else the cursor will be placed at the end of the template.
Author
Milian Wolff mail@.nosp@m.mili.nosp@m.anw.d.nosp@m.e

Definition at line 53 of file katetemplatehandler.h.

Constructor & Destructor Documentation

◆ KateTemplateHandler()

KateTemplateHandler::KateTemplateHandler ( KTextEditor::ViewPrivate * view,
KTextEditor::Cursor position,
const QString & templateString,
const QString & script,
KateUndoManager * undoManager )

Setup the template handler, insert the template string.

NOTE: The handler deletes itself when required, you do not need to keep track of it.

Definition at line 30 of file katetemplatehandler.cpp.

◆ ~KateTemplateHandler()

KateTemplateHandler::~KateTemplateHandler ( )
override

Definition at line 99 of file katetemplatehandler.cpp.

Member Function Documentation

◆ doc()

KTextEditor::DocumentPrivate * KateTemplateHandler::doc ( ) const

Definition at line 208 of file katetemplatehandler.cpp.

◆ eventFilter()

bool KateTemplateHandler::eventFilter ( QObject * object,
QEvent * event )
overrideprotectedvirtual

Provide keyboard interaction for the template handler.

The event filter handles the following shortcuts:

TAB: jump to next editable (i.e. not mirrored) range. NOTE: this prevents indenting via TAB. SHIFT + TAB: jump to previous editable (i.e. not mirrored) range. NOTE: this prevents un-indenting via SHIFT + TAB. ESC: terminate template handler (only when no completion is active). ALT + RETURN: accept template and jump to the end-cursor. if %{cursor} was given in the template, that will be the end-cursor. else just jump to the end of the inserted text.

Reimplemented from QObject.

Definition at line 225 of file katetemplatehandler.cpp.

◆ view()

KTextEditor::ViewPrivate * KateTemplateHandler::view ( ) const

Definition at line 543 of file katetemplatehandler.cpp.


The documentation for this class was generated from the following files:
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:11:28 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.