diff options
author | David Schulz <david.schulz@qt.io> | 2019-01-31 08:46:23 +0100 |
---|---|---|
committer | David Schulz <david.schulz@qt.io> | 2019-02-04 09:43:11 +0000 |
commit | eac1b6059c1abd667457b7a3a6d9f78c49139c30 (patch) | |
tree | d6944f3b8b289ad3636ea5afcd04dfb6826e91d4 /src/plugins/languageclient/languageclientsettings.h | |
parent | f7e1354ae563ae6c475ee2e18764127e58073d2b (diff) | |
download | qt-creator-eac1b6059c1abd667457b7a3a6d9f78c49139c30.tar.gz |
LSP: separate communication interface and client logic
Change-Id: I7d35fa634287b5f858c4a87aa10f99bf18d1ad07
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Diffstat (limited to 'src/plugins/languageclient/languageclientsettings.h')
-rw-r--r-- | src/plugins/languageclient/languageclientsettings.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/plugins/languageclient/languageclientsettings.h b/src/plugins/languageclient/languageclientsettings.h index 54877412a7..1b229788a6 100644 --- a/src/plugins/languageclient/languageclientsettings.h +++ b/src/plugins/languageclient/languageclientsettings.h @@ -44,6 +44,7 @@ namespace LanguageClient { constexpr char noLanguageFilter[] = "No Filter"; class BaseClient; +class BaseClientInterface; struct LanguageFilter { @@ -73,11 +74,13 @@ public: virtual BaseSettings *copy() const { return new BaseSettings(*this); } virtual bool needsRestart() const; virtual bool isValid() const ; - virtual BaseClient *createClient() const; + BaseClient *createClient() const; virtual QVariantMap toMap() const; virtual void fromMap(const QVariantMap &map); protected: + virtual BaseClientInterface *createInterface() const { return nullptr; } + BaseSettings(const BaseSettings &other) = default; BaseSettings(BaseSettings &&other) = default; BaseSettings &operator=(const BaseSettings &other) = default; @@ -105,11 +108,12 @@ public: BaseSettings *copy() const override { return new StdIOSettings(*this); } bool needsRestart() const override; bool isValid() const override; - BaseClient *createClient() const override; QVariantMap toMap() const override; void fromMap(const QVariantMap &map) override; protected: + BaseClientInterface *createInterface() const override; + StdIOSettings(const StdIOSettings &other) = default; StdIOSettings(StdIOSettings &&other) = default; StdIOSettings &operator=(const StdIOSettings &other) = default; |