• Skip to content
  • Skip to link menu
  • KDE API Reference
  • kdelibs-4.14.38 API Reference
  • KDE Home
  • Contact Us
 

KUtils

  • KSettings
  • PluginPage
Public Member Functions | Protected Attributes | List of all members
KSettings::PluginPage Class Reference

#include <pluginpage.h>

Inheritance diagram for KSettings::PluginPage:
KCModule QWidget

Public Member Functions

 PluginPage (const KComponentData &componentData, QWidget *parent=0, const QVariantList &args=QVariantList())
 
 ~PluginPage ()
 
virtual void defaults ()
 
virtual void load ()
 
KPluginSelector * pluginSelector ()
 
virtual void save ()
 
- Public Member Functions inherited from KCModule
 KCModule (const KComponentData &componentData, QWidget *parent=0, const QVariantList &args=QVariantList())
 
 ~KCModule ()
 
virtual const KAboutData * aboutData () const
 
KAuth::Action * authAction () const
 
Buttons buttons () const
 
KComponentData componentData () const
 
QList< KConfigDialogManager * > configs () const
 
QString exportText () const
 
bool needsAuthorization () const
 
virtual QString quickHelp () const
 
QString rootOnlyMessage () const
 
void setAboutData (const KAboutData *about)
 
void setExportText (const QString &)
 
void setNeedsAuthorization (bool needsAuth)
 
bool useRootOnlyMessage () const
 

Protected Attributes

PluginPagePrivate *const d_ptr
 

Additional Inherited Members

- Public Types inherited from KCModule
enum  Button
 
- Public Slots inherited from KCModule
virtual void defaults ()
 
virtual void load ()
 
virtual void save ()
 
- Signals inherited from KCModule
void changed (bool state)
 
void quickHelpChanged ()
 
void rootOnlyMessageChanged (bool use, QString message)
 
- Public Attributes inherited from KCModule
 Apply
 
 Default
 
 Export
 
 Help
 
 NoAdditionalButton
 
- Protected Slots inherited from KCModule
void authStatusChanged (int)
 
void changed ()
 
void widgetChanged ()
 
- Protected Member Functions inherited from KCModule
KConfigDialogManager * addConfig (KConfigSkeleton *config, QWidget *widget)
 
KConfigDialogManager * addConfig (KCoreConfigSkeleton *config, QWidget *widget)
 
bool managedWidgetChangeState () const
 
void setButtons (Buttons btn)
 
void setQuickHelp (const QString &help)
 
void setRootOnlyMessage (const QString &message)
 
void setUseRootOnlyMessage (bool on)
 
virtual void showEvent (QShowEvent *ev)
 
void unmanagedWidgetChangeState (bool)
 

Detailed Description

Convenience KCModule for creating a plugins config page.

This class makes it very easy to create a plugins configuration page to your program. All you need to do is create a class that is derived from PluginPage and add the appropriate plugin information to the KPluginSelector. This is done using the pluginSelector() method:

K_PLUGIN_FACTORY(MyAppPluginConfigFactory,
registerPlugin<MyAppPluginConfig>();
)
K_EXPORT_PLUGIN(MyAppConfigFactory("kcm_myapppluginconfig"));
MyAppPluginConfig(QWidget * parent, const QVariantList & args)
: PluginPage(MyAppPluginConfigFactory::componentData(), parent, args)
{
pluginSelector()->addPlugins( KGlobal::mainComponent().componentName(), i18n( "General Plugins" ), "General" );
pluginSelector()->addPlugins( KGlobal::mainComponent().componentName(), i18n( "Effects" ), "Effects" );
}
KCModule::componentData
KComponentData componentData() const
K_EXPORT_PLUGIN
#define K_EXPORT_PLUGIN(factory)
KPluginSelector::addPlugins
void addPlugins(const QString &componentName, const QString &categoryName=QString(), const QString &categoryKey=QString(), KSharedConfig::Ptr config=KSharedConfig::Ptr())
Add a list of KParts plugins.
Definition: kpluginselector.cpp:293
KSettings::PluginPage
Convenience KCModule for creating a plugins config page.
Definition: pluginpage.h:73
KSettings::PluginPage::pluginSelector
KPluginSelector * pluginSelector()
Definition: pluginpage.cpp:67
QWidget
i18n
QString i18n(const char *text)
KGlobal::mainComponent
const KComponentData & mainComponent()
K_PLUGIN_FACTORY
K_PLUGIN_FACTORY(ProxyScoutFactory, registerPlugin< KPAC::ProxyScout >();) namespace KPAC

All that remains to be done is to create the appropriate .desktop file

[Desktop Entry]
Encoding=UTF-8
Icon=plugin
Type=Service
ServiceTypes=KCModule

X-KDE-Library=myapppluginconfig
X-KDE-FactoryName=MyAppPluginConfigFactory
X-KDE-ParentApp=myapp
X-KDE-ParentComponents=myapp

Name=Plugins
Comment=Select and configure your plugins:
Author
Matthias Kretz kretz.nosp@m.@kde.nosp@m..org

Definition at line 72 of file pluginpage.h.

Constructor & Destructor Documentation

◆ PluginPage()

KSettings::PluginPage::PluginPage ( const KComponentData &  componentData,
QWidget *  parent = 0,
const QVariantList &  args = QVariantList() 
)
explicit

Standard KCModule constructor.

Automatically creates the KPluginSelector widget.

Definition at line 44 of file pluginpage.cpp.

◆ ~PluginPage()

KSettings::PluginPage::~PluginPage ( )

Definition at line 62 of file pluginpage.cpp.

Member Function Documentation

◆ defaults()

void KSettings::PluginPage::defaults ( )
virtual

Reimplemented from KCModule.

Definition at line 82 of file pluginpage.cpp.

◆ load()

void KSettings::PluginPage::load ( )
virtual

Load the state of the plugins (selected or not) from the KPluginInfo objects.

For KParts plugins everything should work automatically. For your own type of plugins you might need to reimplement the KPluginInfo::pluginLoaded() method. If that doesn't fit your needs you can also reimplement this method.

Reimplemented from KCModule.

Definition at line 72 of file pluginpage.cpp.

◆ pluginSelector()

KPluginSelector * KSettings::PluginPage::pluginSelector ( )
Returns
a reference to the KPluginSelector.

Definition at line 67 of file pluginpage.cpp.

◆ save()

void KSettings::PluginPage::save ( )
virtual

Save the state of the plugins to KConfig objects.

Reimplemented from KCModule.

Definition at line 77 of file pluginpage.cpp.

Member Data Documentation

◆ d_ptr

PluginPagePrivate* const KSettings::PluginPage::d_ptr
protected

Definition at line 108 of file pluginpage.h.


The documentation for this class was generated from the following files:
  • pluginpage.h
  • pluginpage.cpp
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Feb 20 2023 00:00:00 by doxygen 1.9.6 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

KUtils

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

kdelibs-4.14.38 API Reference

Skip menu "kdelibs-4.14.38 API Reference"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDEWebKit
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • KPty
  • Kross
  • KUnitConversion
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
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