# class KTextEditor.Factory

### abstract class

Table of contents
Modules
ktexteditor Classes
All Classes

Module | ktexteditor
Namespace | ktexteditor
Class | KTextEditor.Factory
Inherits | KParts.Factory

Accessor to the Editor implementation.

Topics: - factory_intro - factory_example - factory_notes

Introduction

The Factory provides access to the chosen Editor (selected with KTextEditor.EditorChooser). The Editor itself then provides methods to handle documents and config options.

To access the Editor use editor().

Each KTextEditor implementation must reimplement this factory to allow access to the editor object.

Creating an Editor Part To get a kate part the following code snippet can be used:

    KLibFactory* factory = KLibLoader.self()->factory("katepart");
    KTextEditor.Factory* kte_factory =
    qobject_cast<KTextEditor.Factory*>(factory);

    if(kte_factory) {
    // valid editor factory, it is possible to access the editor now
    KTextEditor.Editor* editor = kte_factory->editor();
    } else {
    // error
    }

If another editor part is desired substitue the string "katepart" with the corresponding library name.

However, if you are only interested in getting the editor part (which is usually the case) a simple call of

    KTextEditor.Editor* editor = KTextEditor.editor("katepart");

is enough.

Notes It is recommend to use the EditorChooser to get the used editor part. This way the user can choose the editor implementation. The Factory itself is not needed to get the Editor with the help of the EditorChooser.

See also KParts.Factory, KTextEditor.Editor Author Christoph Cullmann \<cullmann@kde.org\>

### methods

- Factory (parent)

  returns nothing

  Argument | Type | Default
  --- | --- | ---
  parent | QObject |

  Constructor.

  Create a new Factory with parent.

  parent - parent object

- editor ()

  returns (KTextEditor.Editor)
  pure virtual

  Get the global Editor object. The editor part implementation must ensure that this object lives as long as any factory or document object exists. Returns global KTextEditor.Editor object