KDE 4.9 PyKDE API Reference
  • KDE's Python API
  • Overview
  • PyKDE Home
  • Sitemap
  • Contact Us
 

Editor Class Reference

from PyKDE4.ktexteditor import *

Inherits: QObject
Namespace: KTextEditor

Detailed Description

Accessor interface for Editor part.

Topics: - editor_intro - editor_config - editor_notes - editor_extensions

Introduction

The Editor part can be accessed via the KTextEditor.Factory or the KTextEditor.EditorChooser and provides general information and configuration methods for the Editor implementation, for example KAboutData by using aboutData().

The Editor implementation has a list of all opened documents. Get this list with documents(). To create a new Document call createDocument(). The signal documentCreated() is emitted whenever the Editor created a new document.

Editor Configuration

If the Editor implementation supports a config dialog configDialogSupported() returns true, then the config dialog can be shown with configDialog(). Instead of using the config dialog, the config pages can be embedded into the application's config dialog. To do this, configPages() returns the number of config pages the Editor implementation provides and configPage() returns the requested page. Further, a config page has a short descriptive name, get it with configPageName(). You can get more detailed name by using configPageFullName(). Also every config page has a pixmap, get it with configPagePixmap(). The configuration can be saved and loaded with readConfig() and writeConfig().

Note:
We recommend to embedd the config pages into the main application's config dialog instead of using a separate config dialog, if the config dialog does not look cluttered then. This way, all settings are grouped together in one place.

Implementation Notes

Usually only one instance of the Editor exists. The Kate Part implementation internally uses a static accessor to make sure that only one Kate Part Editor object exists. So several factories still use the same Editor.

readConfig() and writeConfig() should be forwarded to all loaded plugins as well, see KTextEditor.Plugin.readConfig() and KTextEditor.Plugin.writeConfig().

Editor Extension Interfaces

There is only a single extension interface for the Editor: the CommandInterface. With the CommandInterface it is possible to add and remove new command line commands which are valid for all documents. Common use cases are for example commands like find or setting document variables. For further details read the detailed descriptions in the class KTextEditor.CommandInterface.

See also:
KTextEditor.Factory, KTextEditor.Document, KTextEditor.ConfigPage KTextEditor.Plugin, KTextEditor.CommandInterface
Author:
Christoph Cullmann <cullmann@kde.org>


Signals

 documentCreated (KTextEditor.Editor editor, KTextEditor.Document document)

Methods

 __init__ (self, QObject parent)
KAboutData aboutData (self)
 configDialog (self, QWidget parent)
bool configDialogSupported (self)
KTextEditor.ConfigPage configPage (self, int number, QWidget parent)
QString configPageFullName (self, int number)
KIcon configPageIcon (self, int number)
QString configPageName (self, int number)
int configPages (self)
KTextEditor.Document createDocument (self, QObject parent)
QString defaultEncoding (self)
[KTextEditor.Document] documents (self)
 readConfig (self, KConfig config=0)
 setDefaultEncoding (self, QString defaultEncoding)
 setSimpleMode (self, bool on)
bool simpleMode (self)
 writeConfig (self, KConfig config=0)

Signal Documentation

documentCreated ( KTextEditor.Editor  editor,
KTextEditor.Document  document
)

The editor emits this signal whenever a document was successfully created.

Parameters:
editor  editor which created the new document

Parameters:
document  the newly created document instance

See also:
createDocument()

Signal syntax:
QObject.connect(source, SIGNAL("documentCreated(KTextEditor::Editor*, KTextEditor::Document*)"), target_slot)

Method Documentation

__init__ (  self,
QObject  parent
)

Constructor.

Create the Editor object with parent.

Parameters:
parent  parent object

KAboutData aboutData (   self )
Abstract method:
This method is abstract and can be overridden but not called directly.

Get the about data of this Editor part.

Returns:
about data

configDialog (  self,
QWidget  parent
)
Abstract method:
This method is abstract and can be overridden but not called directly.

Show the editor's config dialog, changes will be applied to the editor, but not saved anywhere automagically, call writeConfig() to save them.

Note:
Instead of using the config dialog, the config pages can be embedded into your own config dialog by using configPages() and configPage().

Parameters:
parent  parent widget

See also:
configDialogSupported()

bool configDialogSupported (   self )
Abstract method:
This method is abstract and can be overridden but not called directly.

Check, whether this editor has a configuration dialog.

Returns:
true, if the editor has a configuration dialog, otherwise false
See also:
configDialog()

KTextEditor.ConfigPage configPage (  self,
int  number,
QWidget  parent
)
Abstract method:
This method is abstract and can be overridden but not called directly.

Get the config page with the number, config pages from 0 to configPages()-1 are available if configPages() > 0.

Parameters:
number  index of config page

Parameters:
parent  parent widget for config page

Returns:
created config page or NULL, if the number is out of bounds
See also:
configPages()

QString configPageFullName (  self,
int  number
)
Abstract method:
This method is abstract and can be overridden but not called directly.

Get a readable full name for the config page number. The name should be translated.

Example: If the name is "Filetypes", the full name could be "Filetype Specific Settings". For "Shortcuts" the full name would be something like "Shortcut Configuration".

Parameters:
number  index of config page

Returns:
full name of given page index
See also:
configPageName(), configPagePixmap()

KIcon configPageIcon (  self,
int  number
)
Abstract method:
This method is abstract and can be overridden but not called directly.

Get a pixmap with size for the config page number.

Parameters:
number  index of config page

Returns:
pixmap for the given page index
See also:
configPageName(), configPageFullName()

QString configPageName (  self,
int  number
)
Abstract method:
This method is abstract and can be overridden but not called directly.

Get a readable name for the config page number. The name should be translated.

Parameters:
number  index of config page

Returns:
name of given page index
See also:
configPageFullName(), configPagePixmap()

int configPages (   self )
Abstract method:
This method is abstract and can be overridden but not called directly.

Get the number of available config pages. If the editor returns a number < 1, it does not support config pages and the embedding application should use configDialog() instead.

Returns:
number of config pages
See also:
configPage(), configDialog()

KTextEditor.Document createDocument (  self,
QObject  parent
)
Abstract method:
This method is abstract and can be overridden but not called directly.

Create a new document object with parent.

Parameters:
parent  parent object

Returns:
new KTextEditor.Document object
See also:
documents()

QString defaultEncoding (   self )

Get the current default encoding for this Editor part.

Returns:
default encoding
Since:
4.5

[KTextEditor.Document] documents (   self )
Abstract method:
This method is abstract and can be overridden but not called directly.

Get a list of all documents of this editor.

Returns:
list of all existing documents
See also:
createDocument()

readConfig (  self,
KConfig  config=0
)
Abstract method:
This method is abstract and can be overridden but not called directly.

Read editor configuration from KConfig config.

Note:
Implementation Notes: If config is NULL you should use kapp->config() as a fallback solution. Additionally the readConfig() call should be forwarded to every loaded plugin.

Parameters:
config  config object

See also:
writeConfig()

setDefaultEncoding (  self,
QString  defaultEncoding
)

Set the current default encoding for this Editor part. Editor part implementation should call this internally on creation and config changes.

Parameters:
defaultEncoding  new default encoding

Since:
4.5

setSimpleMode (  self,
bool  on
)

Switch the editor to a simple mode which will hide advanced stuff from average user or switch it back to normal mode. This mode will only affect documents/views created after the change.

Parameters:
on  turn simple mode on or not

bool simpleMode (   self )

Query the editor whether simple mode is on or not.

Returns:
true if simple mode is on, otherwise false
See also:
setSimpleMode()

writeConfig (  self,
KConfig  config=0
)
Abstract method:
This method is abstract and can be overridden but not called directly.

Write editor configuration to KConfig config.

Note:
Implementation Notes: If config is NULL you should use kapp->config() as a fallback solution. Additionally the writeConfig() call should be forwarded to every loaded plugin.

Parameters:
config  config object

See also:
readConfig()

  • Full Index

Modules

  • akonadi
  • dnssd
  • kdecore
  • kdeui
  • khtml
  • kio
  • knewstuff
  • kparts
  • kutils
  • nepomuk
  • phonon
  • plasma
  • polkitqt
  • solid
  • soprano
This documentation is maintained by Simon Edwards.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal