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

interfaces

KScriptClientInterface Class Reference

This class is used for allowing feedback to the main system. More...

#include <scriptclientinterface.h>

Inheritance diagram for KScriptClientInterface:

Inheritance graph
[legend]

List of all members.


Public Types

enum  Result { ResultSuccess, ResultFailure, ResultContinue, ResultBreak }

Public Member Functions

virtual void done (KScriptClientInterface::Result result, const QVariant &returned)=0
virtual void error (const QString &msg)=0
virtual void output (const QString &msg)=0
virtual void progress (int percent)=0
virtual void warning (const QString &msg)=0

Detailed Description

This class is used for allowing feedback to the main system.

Author:
Ian Reinhart Geiser <geiseri@kde.org>
To implement KScript in your application you would use this class to interface with the scripting engine. There are currently a few implementations of script managers around but developers can implement their own custom interfaces with this class.
    class MyScript : public QObject, public KScriptClientInterface {
    Q_OBJECT
    public:

    MyScript(QObject *parent)
    {
        // Create your @ref KScriptInterface here.
        m_interface = KParts::ComponentFactory::createInstanceFromQuery<KScriptInterface>( 
            "KScriptRunner/KScriptRunner", "([X-KDE-Script-Runner] == 'bash/shell')", this );
    }

    virtual ~KScriptAction()
    {
        delete m_interface;
    }

    signals:
    void error ( const QString &msg );
    void warning ( const QString &msg );
    void output ( const QString &msg );
    void progress ( int percent );
    void done ( KScriptClientInterface::Result result, const QVariant &returned );

    public slots:
    void activate(const QVariant &args)
    {
        m_interface->run(parent(), args);
    }

    private:

    KScriptInterface *m_interface;
    };
Things to note about this example are that it only handles a single script type and instance. You may wish to extend this.

Definition at line 73 of file scriptclientinterface.h.


Member Enumeration Documentation

enum KScriptClientInterface::Result

Enumerator:
ResultSuccess 
ResultFailure 
ResultContinue 
ResultBreak 

Definition at line 76 of file scriptclientinterface.h.


Member Function Documentation

virtual void KScriptClientInterface::done ( KScriptClientInterface::Result  result,
const QVariant &  returned 
) [pure virtual]

This function will allow feedback on completion of the script.

It turns the result as a KScriptInteface::Result, and a return value as a QVariant For script clients its best to implement this as a signal so feedback can be sent to the main application.

Implemented in KScriptManager.

virtual void KScriptClientInterface::error ( const QString &  msg  )  [pure virtual]

This function will allow the main application of any errors that have occurred during processing of the script.

For script clients its best to implement this as a signal so feedback can be sent to the main application.

Implemented in KScriptManager.

virtual void KScriptClientInterface::output ( const QString &  msg  )  [pure virtual]

This function will allow the main application of any normal output that has occurred during the processing of the script.

For script clients its best to implement this as a signal so feedback can be sent to the main application.

Implemented in KScriptManager.

virtual void KScriptClientInterface::progress ( int  percent  )  [pure virtual]

This function will allow feedback to any progress bars in the main application as to how far along the script is.

This is very useful when a script is processing files or doing some long operation that is of a known duration.] For script clients its best to implement this as a signal so feedback can be sent to the main application.

Implemented in KScriptManager.

virtual void KScriptClientInterface::warning ( const QString &  msg  )  [pure virtual]

This function will allow the main application of any warnings that have occurred during the processing of the script.

For script clients its best to implement this as a signal so feedback can be sent to the main application.

Implemented in KScriptManager.


The documentation for this class was generated from the following file:
  • scriptclientinterface.h

interfaces

Skip menu "interfaces"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members

API Reference

Skip menu "API Reference"
  • dcop
  • DNSSD
  • interfaces
  • Kate
  • kconf_update
  • KDECore
  • KDED
  • kdefx
  • KDEsu
  • kdeui
  • KDocTools
  • KHTML
  • KImgIO
  • KInit
  • kio
  • kioslave
  • KJS
  • KNewStuff
  • KParts
  • KUtils
Generated for API Reference by doxygen 1.5.9
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