kdatatool.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
#ifndef KDATATOOL_H
00022
#define KDATATOOL_H
00023
00024
#include <qobject.h>
00025
#include <qvaluelist.h>
00026
00027
#include <kaction.h>
00028
#include <kservice.h>
00029
#include <kdemacros.h>
00030
00031
class KDataTool;
00032
class QPixmap;
00033
class QStringList;
00034
class KInstance;
00035
00036
00037
00038
00048 class KDataToolInfo
00049 {
00050
public:
00054
KDataToolInfo();
00060
KDataToolInfo(
const KService::Ptr&
service,
KInstance*
instance );
00064
KDataToolInfo(
const KDataToolInfo& info );
00068
KDataToolInfo& operator= (
const KDataToolInfo& info );
00069
00076
QString dataType()
const;
00088
QStringList mimeTypes()
const;
00089
00094
bool isReadOnly()
const;
00095
00101
QPixmap icon()
const KDE_DEPRECATED;
00107
QPixmap miniIcon()
const KDE_DEPRECATED;
00112
QString iconName()
const;
00126
QStringList userCommands()
const;
00138
QStringList commands()
const;
00139
00146
KDataTool*
createTool(
QObject* parent = 0,
const char* name = 0 )
const;
00147
00152
KService::Ptr service()
const;
00153
00158 KInstance*
instance()
const {
return m_instance; }
00159
00165
bool isValid() const;
00166
00175 static
QValueList<
KDataToolInfo> query( const
QString& datatype, const
QString& mimetype,
KInstance * instance );
00176
00177 private:
00178
KService::Ptr m_service;
00179
KInstance* m_instance;
00180 private:
00181 class KDataToolInfoPrivate* d;
00182 };
00183
00184
00195 class
KDataToolAction : public
KAction
00196 {
00197 Q_OBJECT
00198
public:
00208
KDataToolAction(
const QString & text,
const KDataToolInfo & info,
const QString & command,
QObject * parent = 0,
const char * name = 0);
00209
00220
static QPtrList<KAction> dataToolActionList(
const QValueList<KDataToolInfo> & tools,
const QObject *receiver,
const char* slot );
00221
00222 signals:
00228
void toolActivated(
const KDataToolInfo & info,
const QString & command );
00229
00230
protected:
00231
virtual void slotActivated();
00232
00233
private:
00234
QString m_command;
00235
KDataToolInfo m_info;
00236
protected:
00237
virtual void virtual_hook(
int id,
void* data );
00238
private:
00239
class KDataToolActionPrivate* d;
00240
00241 };
00242
00254 class KDataTool :
public QObject
00255 {
00256 Q_OBJECT
00257
public:
00264
KDataTool(
QObject* parent = 0,
const char* name = 0 );
00265
00269
void setInstance(
KInstance* instance ) { m_instance = instance; }
00270
00276
KInstance*
instance()
const;
00277
00291
virtual bool run(
const QString& command,
void* data,
const QString& datatype,
const QString& mimetype) = 0;
00292
00293
private:
00294
KInstance * m_instance;
00295
protected:
00296
virtual void virtual_hook(
int id,
void* data );
00297
private:
00298
class KDataToolPrivate;
00299 KDataToolPrivate * d;
00300 };
00301
00302
#endif
This file is part of the documentation for kio Library Version 3.2.3.