Git: Aspectify settings

Change-Id: I87dfeba360967cc77cc230811bcd9f67b3ea6e38
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
hjk
2021-03-16 06:00:25 +01:00
parent f2c34e51e9
commit aa69415ac7
19 changed files with 379 additions and 529 deletions

View File

@@ -58,10 +58,12 @@ class VCSBASE_EXPORT VcsBaseClientImpl : public QObject
Q_OBJECT
public:
explicit VcsBaseClientImpl(VcsBaseClientSettings *settings);
explicit VcsBaseClientImpl(VcsBaseClientSettings *settings,
VcsBaseSettings *baseSettings = nullptr);
~VcsBaseClientImpl() override = default;
VcsBaseClientSettings &settings() const;
VcsBaseClientSettings &settings() const; // FIXME: Phase out.
VcsBaseSettings &baseSettings() const; // FIXME: Rename into settings() when the original is gone.
virtual Utils::FilePath vcsBinary() const;
int vcsTimeoutS() const;
@@ -128,8 +130,9 @@ protected:
private:
void saveSettings();
VcsBaseClientSettings *m_clientSettings;
VcsBaseClientSettings *m_clientSettings; // "old" style.
VcsBaseClientSettings m_defaultSettings;
VcsBaseSettings *m_baseSettings = nullptr; // Aspect based.
};
class VCSBASE_EXPORT VcsBaseClient : public VcsBaseClientImpl