• Skip to content
  • Skip to link menu
KDE 3.5 API Reference
  • KDE API Reference
  • @topname@
  • Sitemap
  • Contact Us
 

kparts

KParts::Factory

KParts::Factory Class Reference

#include <factory.h>

Inheritance diagram for KParts::Factory:

KLibFactory QObject

List of all members.


Detailed Description

A generic factory object to create a Part.

Factory is an abstract class. Reimplement the createPartObject() method to give it functionality.

See also:
KLibFactory.

Definition at line 40 of file factory.h.


Public Member Functions

 Factory (QObject *parent=0, const char *name=0)
Part * createPart (QWidget *parentWidget=0, const char *widgetName=0, QObject *parent=0, const char *name=0, const char *classname="KParts::Part", const QStringList &args=QStringList())
const KInstance * partInstance ()

Static Public Member Functions

static const KInstance * partInstanceFromLibrary (const QCString &libraryName)

Protected Types

enum  { VIRTUAL_QUERY_INSTANCE_PARAMS = 0x10 }

Protected Member Functions

virtual Part * createPartObject (QWidget *parentWidget=0, const char *widgetName=0, QObject *parent=0, const char *name=0, const char *classname="KParts::Part", const QStringList &args=QStringList())=0
virtual QObject * createObject (QObject *parent=0, const char *name=0, const char *classname="QObject", const QStringList &args=QStringList())

Member Enumeration Documentation

anonymous enum [protected]

This 'enum' along with the structure below is NOT part of the public API.

It's going to disappear in KDE 4.0 and is likely to change inbetween.

Definition at line 129 of file factory.h.


Member Function Documentation

Part * Factory::createPart ( QWidget *  parentWidget = 0,
const char *  widgetName = 0,
QObject *  parent = 0,
const char *  name = 0,
const char *  classname = "KParts::Part",
const QStringList &  args = QStringList() 
)

Creates a part.

The QStringList can be used to pass additional arguments to the part. If the part needs additional arguments, it should take them as name="value" pairs. This is the way additional arguments will get passed to the part from eg. khtml. You can for example embed the part into HTML by using the following code:

    <object type="my_mimetype" data="url_to_my_data">
        <param name="name1" value="value1">
        <param name="name2" value="value2">
    </object>
This could result in a call to
     createPart( parentWidget, name, parentObject, parentName, "KParts::Part",
                 QStringList("name1="value1"", "name2="value2") );

Returns:
the newly created part.
createPart() automatically emits a signal KLibFactory::objectCreated to tell the library about its newly created object. This is very important for reference counting, and allows unloading the library automatically once all its objects have been destroyed.

Definition at line 42 of file factory.cpp.

const KInstance * Factory::partInstance (  ) 

If you have a part contained in a shared library you might want to query for meta-information like the about-data, or the KInstance in general.

If the part is exported using KParts::GenericFactory then this method will return the instance that belongs to the part without the need to instantiate the part component.

Definition at line 50 of file factory.cpp.

const KInstance * Factory::partInstanceFromLibrary ( const QCString &  libraryName  )  [static]

A convenience method for partInstance() that takes care of retrieving the factory for a given library name and calling partInstance() on it.

Parameters:
libraryName name of the library to query the instance from

Definition at line 58 of file factory.cpp.

Part * Factory::createPartObject ( QWidget *  parentWidget = 0,
const char *  widgetName = 0,
QObject *  parent = 0,
const char *  name = 0,
const char *  classname = "KParts::Part",
const QStringList &  args = QStringList() 
) [protected, pure virtual]

Reimplement this method in your implementation to create the Part.

The QStringList can be used to pass additional arguments to the part. If the part needs additional arguments, it should take them as name="value" pairs. This is the way additional arguments will get passed to the part from eg. khtml. You can for example emebed the part into HTML by using the following code:

    <object type="my_mimetype" data="url_to_my_data">
        <param name="name1" value="value1">
        <param name="name2" value="value2">
    </object>
This could result in a call to
     createPart( parentWidget, name, parentObject, parentName, "Kparts::Part",
                 QStringList("name1="value1"", "name2="value2") );

Returns:
the newly created part.

Implemented in KParts::GenericFactory< T >.

Definition at line 72 of file factory.cpp.

QObject * Factory::createObject ( QObject *  parent = 0,
const char *  name = 0,
const char *  classname = "QObject",
const QStringList &  args = QStringList() 
) [protected, virtual]

Reimplemented from KLibFactory.

Calls createPart()

Implements KLibFactory.

Definition at line 77 of file factory.cpp.


The documentation for this class was generated from the following files:
  • factory.h
  • factory.cpp

kparts

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

@topname@

Skip menu "@topname@"
  •     kdnssd-avahi
  • arts
  • dcop
  • dnssd
  • interfaces
  •     interface
  •     library
  •   kspeech
  •   ktexteditor
  • kabc
  • kate
  • kcmshell
  • kdecore
  • kded
  • kdefx
  • kdeprint
  • kdesu
  • kdeui
  • kdoctools
  • khtml
  • kimgio
  • kinit
  • kio
  •   bookmarks
  •   httpfilter
  •   kfile
  •   kio
  •   kioexec
  •   kpasswdserver
  •   kssl
  • kioslave
  •   http
  • kjs
  • kmdi
  •   kmdi
  • knewstuff
  • kparts
  • kresources
  • kspell2
  • kunittest
  • kutils
  • kwallet
  • libkmid
  • libkscreensaver
Generated for @topname@ by doxygen 1.5.5
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