Jump to content

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

From KDE Community Wiki
Notmart (talk | contribs)
No edit summary
Notmart (talk | contribs)
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
New class in QML bindings: ServiceOperationStatus {
=New class in QML bindings=
Needed to access wether an operation is enable or not (like in the nowPlaying service
  ServiceOperationStatus {
     property bool enabled
     property bool enabled
     property Service service
     property Service service
     property string operation
     property string operation
}
}


=Class API=
{| 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;"
as
 
! Status  
! Status  
! Action  
! Action  
! Method  
! Method  


{{FeatureTodo|Remove| static Service *access(const QUrl &url, QObject *parent);}}
{{FeatureDone|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;}}
{{FeatureDone|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); }}
{{FeatureDone|Rename|Q_INVOKABLE KConfigGroup operationDescription(const QString &operationName); -> QVariantMap operationDescription(const QString &operationName); }}
{{FeatureTodo|Rename|Q_INVOKABLE ServiceJob *startOperationCall(const KConfigGroup->QVariantMap &description, QObject *parent = 0);}}
{{FeatureDone|Rename|Q_INVOKABLE ServiceJob *startOperationCall(const KConfigGroup->QVariantMap &description, QObject *parent );}}
{{FeatureDone|Keep | Q_INVOKABLE bool isOperationEnabled(const QString &operation) const;}}
{{FeatureDone|Keep | Q_INVOKABLE bool isOperationEnabled(const QString &operation) const;}}
{{FeatureDone|Keep | Q_INVOKABLE QString name() const;}}
{{FeatureDone|Keep | Q_INVOKABLE QString name() const;}}
{{FeatureTodo|Remove| Q_INVOKABLE void associateItem(QQuickItem->QObject *item, const QString &operation);}}
{{FeatureDone|Remove| Q_INVOKABLE void associateItem(QQuickItem->QObject *item, const QString &operation);}}
{{FeatureTodo|Remove| Q_INVOKABLE void disassociateItem(QQuickItem *widget);}}
{{FeatureDone|Remove| Q_INVOKABLE void disassociateItem(QQuickItem *widget);}}
{{FeatureTodo|Remove| Q_INVOKABLE QHash<QString, QVariant> parametersFromDescription(const KConfigGroup &description);}}
{{FeatureDone|Remove| Q_INVOKABLE QHash<QString, QVariant> parametersFromDescription(const KConfigGroup &description);}}


{{FeatureTodo|Remove| SIGNAL void operationsChanged();}}
{{FeatureDone|Remove| SIGNAL void operationsChanged();}}
{{FeatureDone|Keep |SIGNAL void serviceReady(Plasma::Service *service);}}
{{FeatureDone|Keep |SIGNAL void serviceReady(Plasma::Service *service);}}
{{FeatureTodo|Add |SIGNAL void operationEnabled(const QString &operation, bool enabled);}}
{{FeatureDone|Add |SIGNAL void operationEnabledChanged(const QString &operation, bool enabled);}}


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


{{FeatureDone|Keep | protected virtual void registerOperationsScheme();}}
{{FeatureDone|Keep | protected virtual void registerOperationsScheme();}}
Line 37: Line 40:
{{FeatureTodo|Multithread | protected void setOperationEnabled(const QString &operation, bool enable); -> use a QRunnable here}}
{{FeatureTodo|Multithread | protected void setOperationEnabled(const QString &operation, bool enable); -> use a QRunnable here}}


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

Latest revision as of 17:04, 2 May 2013

New class in QML bindings

Needed to access wether an operation is enable or not (like in the nowPlaying service

 ServiceOperationStatus {
   property bool enabled
   property Service service
   property string operation
}

Class API

Status Action Method
DONE Remove static Service *access(const QUrl &url, QObject *parent);
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;
DONE Rename Q_INVOKABLE KConfigGroup operationDescription(const QString &operationName); -> QVariantMap operationDescription(const QString &operationName);
DONE Rename Q_INVOKABLE ServiceJob *startOperationCall(const KConfigGroup->QVariantMap &description, QObject *parent );
DONE Keep Q_INVOKABLE bool isOperationEnabled(const QString &operation) const;
DONE Keep Q_INVOKABLE QString name() const;
DONE Remove Q_INVOKABLE void associateItem(QQuickItem->QObject *item, const QString &operation);
DONE Remove Q_INVOKABLE void disassociateItem(QQuickItem *widget);
DONE Remove Q_INVOKABLE QHash<QString, QVariant> parametersFromDescription(const KConfigGroup &description);


DONE Remove SIGNAL void operationsChanged();
DONE Keep SIGNAL void serviceReady(Plasma::Service *service);
DONE Add SIGNAL void operationEnabledChanged(const QString &operation, bool enabled);


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


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}}}>


DONE Remove private  Q_PRIVATE_SLOT(d, void associatedWidgetDestroyed(QObject *))
DONE Remove private  Q_PRIVATE_SLOT(d, void associatedItemDestroyed(QObject *))