Plasma/libplasma2/API Review/Service: Difference between revisions

From KDE Community Wiki
(Created page with "{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable" |- style="background: ...")
 
No edit summary
Line 1: Line 1:
New class in QML bindings: ServiceOperationStatus {
   property bool enabled
   property Service service
   property string operation
}
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"
{| cellspacing="0" cellpadding="5" border="1" style="border: 1px solid gray; border-collapse: collapse; text-align: left; width: 100%;" class="sortable"
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"
|- style="background: rgb(236, 236, 236) none repeat scroll 0% 0%; -moz-background-clip: border; -moz-background-origin: padding; -moz-background-inline-policy: continuous; white-space: nowrap;"
Line 6: Line 12:
! Method  
! Method  


{{FeatureTodo|Remove| static Service *access(const QUrl &url, QObject *parent = 0);}}
{{FeatureTodo|Remove| static Service *access(const QUrl &url, QObject *parent);}}
{{FeatureTodo|Remove| Q_INVOKABLE void setDestination(const QString &destination);}}
{{FeatureTodo|Remove| Q_INVOKABLE void setDestination(const QString &destination);}}
{{FeatureTodo|Remove| Q_INVOKABLE QString destination() const;}}
{{FeatureTodo|Remove| Q_INVOKABLE QString destination() const;}}
{{FeatureTodo|Keep | Q_INVOKABLE QStringList operationNames() const;}}
{{FeatureDone|Keep | Q_INVOKABLE QStringList operationNames() const;}}
{{FeatureTodo|Rename|Q_INVOKABLE KConfigGroup operationDescription(const QString &operationName); -> QVariantMap operationDescription(const QString &operationName); }}
{{FeatureTodo|Rename|Q_INVOKABLE KConfigGroup operationDescription(const QString &operationName); -> QVariantMap operationDescription(const QString &operationName); }}
Q_INVOKABLE ServiceJob *startOperationCall(const KConfigGroup->QVariantMap &description, QObject *parent = 0);
{{FeatureTodo|Rename|Q_INVOKABLE ServiceJob *startOperationCall(const KConfigGroup->QVariantMap &description, QObject *parent = 0);}}
   Q_INVOKABLE bool isOperationEnabled(const QString &operation) const;
{{FeatureDone|Keep | Q_INVOKABLE bool isOperationEnabled(const QString &operation) const;}}
   Q_INVOKABLE QString name() const;
{{FeatureDone|Keep | Q_INVOKABLE QString name() const;}}
   Q_INVOKABLE void associateItem(QQuickItem->QObject *item, const QString &operation);
{{FeatureTodo|Remove| Q_INVOKABLE void associateItem(QQuickItem->QObject *item, const QString &operation);}}
   Q_INVOKABLE void disassociateItem(QQuickItem *widget);
{{FeatureTodo|Remove| Q_INVOKABLE void disassociateItem(QQuickItem *widget);}}
   Q_INVOKABLE QHash<QString, QVariant> parametersFromDescription(const KConfigGroup &description);
{{FeatureTodo|Remove| Q_INVOKABLE QHash<QString, QVariant> parametersFromDescription(const KConfigGroup &description);}}
 
Q_SIGNALS:
   void operationsChanged();
   void serviceReady(Plasma::Service *service);
   void operationEnabled(const QString &operation, bool enabled);


New class in QML bindings: ServiceOperationStatus {
{{FeatureTodo|Remove| SIGNAL void operationsChanged();}}
   property bool enabled
{{FeatureDone|Keep |SIGNAL void serviceReady(Plasma::Service *service);}}
   property Service service
{{FeatureTodo|Add |SIGNAL void operationEnabled(const QString &operation, bool enabled);}}
   property string operation
}


protected:
{{FeatureDone|Keep | protected explicit Service(QObject *parent = 0);}}
   explicit Service(QObject *parent = 0);
{{FeatureTodo|Remove| protected Service(QObject *parent, const QVariantList &args);}}
   Service(QObject *parent, const QVariantList &args);
{{FeatureTodo|Parameters |protected virtual ServiceJob *createJob(const QString &operation, QHash<QString, QVariant> ->QVariantMap &parameters)}}
   virtual ServiceJob *createJob(const QString &operation,
                                 QHash<QString, QVariant> ->QVariantMap &parameters) = 0;


   virtual void registerOperationsScheme();
{{FeatureDone|Keep | protected virtual void registerOperationsScheme();}}
   void setOperationsScheme(QIODevice *xml);
{{FeatureDone|Keep | protected void setOperationsScheme(QIODevice *xml);}}
   void setName(const QString &name);
{{FeatureDone|Keep | protected void setName(const QString &name);}}
   void setOperationEnabled(const QString &operation, bool enable);
{{FeatureTodo|Multithread | protected void setOperationEnabled(const QString &operation, bool enable); -> use a QRunnable here}}
use a QRunnable here


private:
{{FeatureTodo|Remove| private  Q_PRIVATE_SLOT(d, void associatedWidgetDestroyed(QObject *))}}
   Q_PRIVATE_SLOT(d, void associatedWidgetDestroyed(QObject *))
{{FeatureTodo|Remove| private  Q_PRIVATE_SLOT(d, void associatedItemDestroyed(QObject *))}}
   Q_PRIVATE_SLOT(d, void associatedItemDestroyed(QObject *))
|}
|}

Revision as of 11:34, 29 April 2013

New class in QML bindings: ServiceOperationStatus {

   property bool enabled
   property Service service
   property string operation

}

as
Status Action Method
TO DO Remove static Service *access(const QUrl &url, QObject *parent); <{{{3}}}>
TO DO Remove Q_INVOKABLE void setDestination(const QString &destination); <{{{3}}}>
TO DO Remove Q_INVOKABLE QString destination() const; <{{{3}}}>
DONE Keep Q_INVOKABLE QStringList operationNames() const;
TO DO Rename Q_INVOKABLE KConfigGroup operationDescription(const QString &operationName); -> QVariantMap operationDescription(const QString &operationName); <{{{3}}}>
TO DO Rename {{{2}}} <{{{3}}}>
DONE Keep Q_INVOKABLE bool isOperationEnabled(const QString &operation) const;
DONE Keep Q_INVOKABLE QString name() const;
TO DO Remove Q_INVOKABLE void associateItem(QQuickItem->QObject *item, const QString &operation); <{{{3}}}>
TO DO Remove Q_INVOKABLE void disassociateItem(QQuickItem *widget); <{{{3}}}>
TO DO Remove Q_INVOKABLE QHash<QString, QVariant> parametersFromDescription(const KConfigGroup &description); <{{{3}}}>


TO DO Remove SIGNAL void operationsChanged(); <{{{3}}}>
DONE Keep SIGNAL void serviceReady(Plasma::Service *service);
TO DO Add SIGNAL void operationEnabled(const QString &operation, bool enabled); <{{{3}}}>


DONE Keep {{{2}}}
TO DO Remove protected Service(QObject *parent, const QVariantList &args); <{{{3}}}>
TO DO Parameters protected virtual ServiceJob *createJob(const QString &operation, QHash<QString, QVariant> ->QVariantMap &parameters) <{{{3}}}>


DONE Keep protected virtual void registerOperationsScheme();
DONE Keep protected void setOperationsScheme(QIODevice *xml);
DONE Keep protected void setName(const QString &name);
TO DO Multithread protected void setOperationEnabled(const QString &operation, bool enable); -> use a QRunnable here <{{{3}}}>


TO DO Remove private  Q_PRIVATE_SLOT(d, void associatedWidgetDestroyed(QObject *)) <{{{3}}}>
TO DO Remove private  Q_PRIVATE_SLOT(d, void associatedItemDestroyed(QObject *)) <{{{3}}}>