KAbstractFileItemActionPlugin Class Reference
from PyKDE4.kio import *
Inherits: QObject
Detailed Description
Base class for KFileItemAction plugins.
Please try to use servicemenus first, if you simply need to add actions to the popup menu for one or more mimetypes.
However if you need some dynamic logic, like "only show this item if two files are selected", or "show a submenu with a variable number of actions", then you have to implement a KAbstractFileItemActionPlugin subclass.
As always plugins need to be exported via the K_EXPORT_PLUGIN macro like so:
K_PLUGIN_FACTORY(MyActionPluginFactory, registerPlugin<MyActionPlugin>();) K_EXPORT_PLUGIN(MyActionPluginFactory("myactionplugin"))
A desktop file is necessary to register the plugin with the KDE plugin system:
[Desktop Entry] Encoding=UTF-8 Type=Service Name=My fancy action plugin X-KDE-Library=myactionplugin ServiceTypes=KFileItemAction/Plugin MimeType=some/mimetype;
Note the KFileItemAction/Plugin service type which is used by KFileItemActions.addServicePluginActionsTo() to load all available plugins and the MimeType field which specifies for which types of file items the setup() method should be called.
As with all KDE plugins one needs to install the plugin as a module. In cmake terms this looks roughly as follows:
kde4_add_plugin(myactionplugin myactionplugin.cpp) target_link_libraries(myactionplugin ${KDE4_KIO_LIBS}) install(TARGETS myactionplugin DESTINATION ${PLUGIN_INSTALL_DIR}) install(FILES myactionplugin.desktop DESTINATION ${SERVICES_INSTALL_DIR})
- Since:
- 4.6.1
Methods | |
__init__ (self, QObject parent) | |
[QAction] | actions (self, KFileItemListProperties fileItemInfos, QWidget parentWidget) |
Method Documentation
__init__ | ( | self, | ||
QObject | parent | |||
) |
[QAction] actions | ( | self, | ||
KFileItemListProperties | fileItemInfos, | |||
QWidget | parentWidget | |||
) |
- Abstract method:
- This method is abstract and can be overridden but not called directly.
Implement the actions method in the plugin in order to create actions.
- Parameters:
-
fileItemInfos The information about the selected file items. (Which file items, their common mimetype, etc.) parentWidget A parent widget for error messages or the like.
- Returns:
- List of actions, that should added to e. g. the popup menu. It is recommended to use the KAbstractFileItemActionPlugin as parent of the actions.