diff options
author | Christian Kandeler <christian.kandeler@nokia.com> | 2011-09-26 16:03:07 +0200 |
---|---|---|
committer | Christian Kandeler <christian.kandeler@nokia.com> | 2011-09-26 16:40:18 +0200 |
commit | eb6cee45e17c4ed69d7671860c353b44213b21a0 (patch) | |
tree | 40dfbfc643e2a43936d190e79066ccb129f918d8 /src/plugins/remotelinux/remotelinuxcustomcommanddeploymentstep.h | |
parent | 5c746546f5c8fa0b1605afe034afcd2d619cf06e (diff) |
RemoteLinux: Make custom command deployment step extensible.
Also fix typo in service class name.
Change-Id: Icd664d77b43fc63a59a94575529b1a1c272b500c
Reviewed-on: http://codereview.qt-project.org/5549
Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
Diffstat (limited to 'src/plugins/remotelinux/remotelinuxcustomcommanddeploymentstep.h')
-rw-r--r-- | src/plugins/remotelinux/remotelinuxcustomcommanddeploymentstep.h | 45 |
1 files changed, 34 insertions, 11 deletions
diff --git a/src/plugins/remotelinux/remotelinuxcustomcommanddeploymentstep.h b/src/plugins/remotelinux/remotelinuxcustomcommanddeploymentstep.h index 43250146db..0c38c1a486 100644 --- a/src/plugins/remotelinux/remotelinuxcustomcommanddeploymentstep.h +++ b/src/plugins/remotelinux/remotelinuxcustomcommanddeploymentstep.h @@ -33,21 +33,21 @@ #define REMOTELINUXCUSTOMCOMMANDDEPLOYMENTSTEP_H #include "abstractremotelinuxdeploystep.h" +#include "remotelinuxcustomcommanddeployservice.h" namespace RemoteLinux { namespace Internal { -class RemoteLinuxCustomCommandDeploymentStepPrivate; +class AbstractRemoteLinuxCustomCommandDeploymentStepPrivate; +class GenericRemoteLinuxCustomCommandDeploymentStepPrivate; } // namespace Internal -class REMOTELINUX_EXPORT RemoteLinuxCustomCommandDeploymentStep + +class REMOTELINUX_EXPORT AbstractRemoteLinuxCustomCommandDeploymentStep : public AbstractRemoteLinuxDeployStep { Q_OBJECT public: - RemoteLinuxCustomCommandDeploymentStep(ProjectExplorer::BuildStepList *bsl); - RemoteLinuxCustomCommandDeploymentStep(ProjectExplorer::BuildStepList *bsl, - RemoteLinuxCustomCommandDeploymentStep *other); - ~RemoteLinuxCustomCommandDeploymentStep(); + ~AbstractRemoteLinuxCustomCommandDeploymentStep(); bool fromMap(const QVariantMap &map); QVariantMap toMap() const; @@ -55,19 +55,42 @@ public: void setCommandLine(const QString &commandLine); QString commandLine() const; - static QString stepId(); - static QString stepDisplayName(); - protected: + AbstractRemoteLinuxCustomCommandDeploymentStep(ProjectExplorer::BuildStepList *bsl, + const QString &id); + AbstractRemoteLinuxCustomCommandDeploymentStep(ProjectExplorer::BuildStepList *bsl, + AbstractRemoteLinuxCustomCommandDeploymentStep *other); + bool isDeploymentPossible(QString *whyNot = 0) const; private: void ctor(); - AbstractRemoteLinuxDeployService *deployService() const; + RemoteLinuxCustomCommandDeployService *deployService() const = 0; ProjectExplorer::BuildStepConfigWidget *createConfigWidget(); - Internal::RemoteLinuxCustomCommandDeploymentStepPrivate *d; + Internal::AbstractRemoteLinuxCustomCommandDeploymentStepPrivate *d; +}; + + +class REMOTELINUX_EXPORT GenericRemoteLinuxCustomCommandDeploymentStep + : public AbstractRemoteLinuxCustomCommandDeploymentStep +{ + Q_OBJECT +public: + GenericRemoteLinuxCustomCommandDeploymentStep(ProjectExplorer::BuildStepList *bsl); + GenericRemoteLinuxCustomCommandDeploymentStep(ProjectExplorer::BuildStepList *bsl, + GenericRemoteLinuxCustomCommandDeploymentStep *other); + ~GenericRemoteLinuxCustomCommandDeploymentStep(); + + static QString stepId(); + static QString stepDisplayName(); + +private: + RemoteLinuxCustomCommandDeployService *deployService() const; + void ctor(); + + Internal::GenericRemoteLinuxCustomCommandDeploymentStepPrivate *d; }; } // namespace RemoteLinux |