diff options
author | hjk <[email protected]> | 2024-02-07 08:36:03 +0100 |
---|---|---|
committer | hjk <[email protected]> | 2024-02-07 08:03:26 +0000 |
commit | a39d38d1875f956961c2f2b6afb0979799fbce11 (patch) | |
tree | 84b1fa5b180e71441f77af33ae55a90629c2e677 /src | |
parent | 7da257e6c21a9ad52a7f70801ac1facd6a84fcf5 (diff) |
Vcs: Merge basevcssubmiteditorfactory.* into vcsbasesubmiteditor.*
Not worth a separate translation unit anymore.
Change-Id: I579c81c811cd84d89fd39755dca2fbeffae017de
Reviewed-by: Orgad Shaneh <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/bazaar/bazaarplugin.cpp | 1 | ||||
-rw-r--r-- | src/plugins/clearcase/clearcaseplugin.cpp | 1 | ||||
-rw-r--r-- | src/plugins/cvs/cvsplugin.cpp | 1 | ||||
-rw-r--r-- | src/plugins/fossil/fossilplugin.cpp | 1 | ||||
-rw-r--r-- | src/plugins/git/gitplugin.cpp | 1 | ||||
-rw-r--r-- | src/plugins/mercurial/mercurialplugin.cpp | 1 | ||||
-rw-r--r-- | src/plugins/perforce/perforceplugin.cpp | 1 | ||||
-rw-r--r-- | src/plugins/subversion/subversionplugin.cpp | 1 | ||||
-rw-r--r-- | src/plugins/vcsbase/CMakeLists.txt | 1 | ||||
-rw-r--r-- | src/plugins/vcsbase/basevcssubmiteditorfactory.cpp | 78 | ||||
-rw-r--r-- | src/plugins/vcsbase/basevcssubmiteditorfactory.h | 17 | ||||
-rw-r--r-- | src/plugins/vcsbase/vcsbase.qbs | 2 | ||||
-rw-r--r-- | src/plugins/vcsbase/vcsbasesubmiteditor.cpp | 77 | ||||
-rw-r--r-- | src/plugins/vcsbase/vcsbasesubmiteditor.h | 4 |
14 files changed, 74 insertions, 113 deletions
diff --git a/src/plugins/bazaar/bazaarplugin.cpp b/src/plugins/bazaar/bazaarplugin.cpp index fdd289fa0f2..f482438ac43 100644 --- a/src/plugins/bazaar/bazaarplugin.cpp +++ b/src/plugins/bazaar/bazaarplugin.cpp @@ -31,7 +31,6 @@ #include <utils/layoutbuilder.h> #include <vcsbase/basevcseditorfactory.h> -#include <vcsbase/basevcssubmiteditorfactory.h> #include <vcsbase/vcsbaseclient.h> #include <vcsbase/vcsbaseconstants.h> #include <vcsbase/vcsbaseeditor.h> diff --git a/src/plugins/clearcase/clearcaseplugin.cpp b/src/plugins/clearcase/clearcaseplugin.cpp index 063b4ab63d8..6caa34c8d2f 100644 --- a/src/plugins/clearcase/clearcaseplugin.cpp +++ b/src/plugins/clearcase/clearcaseplugin.cpp @@ -40,7 +40,6 @@ #include <utils/temporarydirectory.h> #include <vcsbase/basevcseditorfactory.h> -#include <vcsbase/basevcssubmiteditorfactory.h> #include <vcsbase/vcsbaseeditor.h> #include <vcsbase/vcsoutputwindow.h> #include <vcsbase/vcsbasesubmiteditor.h> diff --git a/src/plugins/cvs/cvsplugin.cpp b/src/plugins/cvs/cvsplugin.cpp index 658796e7e95..f8724b22070 100644 --- a/src/plugins/cvs/cvsplugin.cpp +++ b/src/plugins/cvs/cvsplugin.cpp @@ -8,7 +8,6 @@ #include "cvsutils.h" #include <vcsbase/basevcseditorfactory.h> -#include <vcsbase/basevcssubmiteditorfactory.h> #include <vcsbase/vcsbaseclient.h> #include <vcsbase/vcsbaseclientsettings.h> #include <vcsbase/vcsbaseconstants.h> diff --git a/src/plugins/fossil/fossilplugin.cpp b/src/plugins/fossil/fossilplugin.cpp index 41eeb35bf01..ffe07765cfa 100644 --- a/src/plugins/fossil/fossilplugin.cpp +++ b/src/plugins/fossil/fossilplugin.cpp @@ -34,7 +34,6 @@ #include <utils/qtcassert.h> #include <vcsbase/basevcseditorfactory.h> -#include <vcsbase/basevcssubmiteditorfactory.h> #include <vcsbase/vcsbaseclient.h> #include <vcsbase/vcsbaseeditor.h> #include <vcsbase/vcsbaseplugin.h> diff --git a/src/plugins/git/gitplugin.cpp b/src/plugins/git/gitplugin.cpp index c1c620b4e75..7c635c4faea 100644 --- a/src/plugins/git/gitplugin.cpp +++ b/src/plugins/git/gitplugin.cpp @@ -53,7 +53,6 @@ #include <utils/utilsicons.h> #include <vcsbase/basevcseditorfactory.h> -#include <vcsbase/basevcssubmiteditorfactory.h> #include <vcsbase/cleandialog.h> #include <vcsbase/submitfilemodel.h> #include <vcsbase/vcsbaseconstants.h> diff --git a/src/plugins/mercurial/mercurialplugin.cpp b/src/plugins/mercurial/mercurialplugin.cpp index e22b59ece04..8bc0782135c 100644 --- a/src/plugins/mercurial/mercurialplugin.cpp +++ b/src/plugins/mercurial/mercurialplugin.cpp @@ -29,7 +29,6 @@ #include <utils/qtcassert.h> #include <vcsbase/basevcseditorfactory.h> -#include <vcsbase/basevcssubmiteditorfactory.h> #include <vcsbase/vcsbaseconstants.h> #include <vcsbase/vcsbaseeditor.h> #include <vcsbase/vcscommand.h> diff --git a/src/plugins/perforce/perforceplugin.cpp b/src/plugins/perforce/perforceplugin.cpp index 940026ee701..5bc6823600a 100644 --- a/src/plugins/perforce/perforceplugin.cpp +++ b/src/plugins/perforce/perforceplugin.cpp @@ -34,7 +34,6 @@ #include <utils/temporarydirectory.h> #include <vcsbase/basevcseditorfactory.h> -#include <vcsbase/basevcssubmiteditorfactory.h> #include <vcsbase/vcsbaseconstants.h> #include <vcsbase/vcsbaseeditorconfig.h> #include <vcsbase/vcsbaseeditor.h> diff --git a/src/plugins/subversion/subversionplugin.cpp b/src/plugins/subversion/subversionplugin.cpp index 349ffbbb12f..61a34e012ca 100644 --- a/src/plugins/subversion/subversionplugin.cpp +++ b/src/plugins/subversion/subversionplugin.cpp @@ -34,7 +34,6 @@ #include <utils/stringutils.h> #include <vcsbase/basevcseditorfactory.h> -#include <vcsbase/basevcssubmiteditorfactory.h> #include <vcsbase/vcsbaseeditor.h> #include <vcsbase/vcsbaseconstants.h> #include <vcsbase/vcsbaseplugin.h> diff --git a/src/plugins/vcsbase/CMakeLists.txt b/src/plugins/vcsbase/CMakeLists.txt index 04ff2241621..7d52d106d9d 100644 --- a/src/plugins/vcsbase/CMakeLists.txt +++ b/src/plugins/vcsbase/CMakeLists.txt @@ -5,7 +5,6 @@ add_qtc_plugin(VcsBase SOURCES baseannotationhighlighter.cpp baseannotationhighlighter.h basevcseditorfactory.cpp basevcseditorfactory.h - basevcssubmiteditorfactory.cpp basevcssubmiteditorfactory.h cleandialog.cpp cleandialog.h commonvcssettings.cpp commonvcssettings.h diffandloghighlighter.cpp diffandloghighlighter.h diff --git a/src/plugins/vcsbase/basevcssubmiteditorfactory.cpp b/src/plugins/vcsbase/basevcssubmiteditorfactory.cpp deleted file mode 100644 index 4ff874d8a1d..00000000000 --- a/src/plugins/vcsbase/basevcssubmiteditorfactory.cpp +++ /dev/null @@ -1,78 +0,0 @@ -// Copyright (C) 2016 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 - -#include "basevcssubmiteditorfactory.h" - -#include "vcsbaseplugin.h" -#include "vcsbasetr.h" -#include "vcsbasesubmiteditor.h" - -#include <coreplugin/actionmanager/actionmanager.h> -#include <coreplugin/editormanager/ieditorfactory.h> - -#include <utils/qtcassert.h> - -using namespace Core; - -namespace VcsBase { - -const char SUBMIT[] = "Vcs.Submit"; -const char DIFF_SELECTED[] = "Vcs.DiffSelectedFiles"; - -class VcsSubmitEditorFactory final : public IEditorFactory -{ -public: - VcsSubmitEditorFactory(VersionControlBase *versionControl, - const VcsBaseSubmitEditorParameters ¶meters) - { - QAction *submitAction = nullptr; - QAction *diffAction = nullptr; - QAction *undoAction = nullptr; - QAction *redoAction = nullptr; - - const Context context(parameters.id); - - ActionBuilder(versionControl, Core::Constants::UNDO) - .setText(Tr::tr("&Undo")) - .setContext(context) - .bindContextAction(&undoAction); - - ActionBuilder(versionControl, Core::Constants::REDO) - .setText(Tr::tr("&Redo")) - .setContext(context) - .bindContextAction(&redoAction); - - ActionBuilder(versionControl, SUBMIT) - .setText(versionControl->commitDisplayName()) - .setIcon(VcsBaseSubmitEditor::submitIcon()) - .setContext(context) - .bindContextAction(&submitAction) - .setCommandAttribute(Command::CA_UpdateText) - .addOnTriggered(versionControl, &VersionControlBase::commitFromEditor); - - ActionBuilder(versionControl, DIFF_SELECTED) - .setText(Tr::tr("Diff &Selected Files")) - .setIcon(VcsBaseSubmitEditor::diffIcon()) - .setContext(context) - .bindContextAction(&diffAction); - - setId(parameters.id); - setDisplayName(QLatin1String(parameters.displayName)); - addMimeType(QLatin1String(parameters.mimeType)); - setEditorCreator([parameters, submitAction, diffAction, undoAction, redoAction] { - VcsBaseSubmitEditor *editor = parameters.editorCreator(); - editor->setParameters(parameters); - editor->registerActions(undoAction, redoAction, submitAction, diffAction); - return editor; - }); - } -}; - -void setupVcsSubmitEditor(VersionControlBase *versionControl, - const VcsBaseSubmitEditorParameters ¶meters) -{ - auto factory = new VcsSubmitEditorFactory(versionControl, parameters); - QObject::connect(versionControl, &QObject::destroyed, [factory] { delete factory; }); -} - -} // namespace VcsBase diff --git a/src/plugins/vcsbase/basevcssubmiteditorfactory.h b/src/plugins/vcsbase/basevcssubmiteditorfactory.h deleted file mode 100644 index 83fc3cf123c..00000000000 --- a/src/plugins/vcsbase/basevcssubmiteditorfactory.h +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright (C) 2016 The Qt Company Ltd. -// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 - -#pragma once - -#include "vcsbase_global.h" - -namespace VcsBase { - -class VcsBaseSubmitEditorParameters; -class VersionControlBase; - -VCSBASE_EXPORT void setupVcsSubmitEditor( - VersionControlBase *versionControl, - const VcsBaseSubmitEditorParameters ¶meters); - -} // namespace VcsBase diff --git a/src/plugins/vcsbase/vcsbase.qbs b/src/plugins/vcsbase/vcsbase.qbs index 7cf0a8fe487..b981e575a3d 100644 --- a/src/plugins/vcsbase/vcsbase.qbs +++ b/src/plugins/vcsbase/vcsbase.qbs @@ -23,8 +23,6 @@ QtcPlugin { "baseannotationhighlighter.h", "basevcseditorfactory.cpp", "basevcseditorfactory.h", - "basevcssubmiteditorfactory.cpp", - "basevcssubmiteditorfactory.h", "cleandialog.cpp", "cleandialog.h", "commonvcssettings.cpp", diff --git a/src/plugins/vcsbase/vcsbasesubmiteditor.cpp b/src/plugins/vcsbase/vcsbasesubmiteditor.cpp index 7eb3673a4ef..79dcddc3f95 100644 --- a/src/plugins/vcsbase/vcsbasesubmiteditor.cpp +++ b/src/plugins/vcsbase/vcsbasesubmiteditor.cpp @@ -16,13 +16,21 @@ #include <aggregation/aggregate.h> +#include <coreplugin/actionmanager/actionmanager.h> +#include <coreplugin/editormanager/editormanager.h> +#include <coreplugin/editormanager/ieditorfactory.h> #include <coreplugin/find/basetextfind.h> #include <coreplugin/icore.h> -#include <coreplugin/editormanager/editormanager.h> #include <extensionsystem/invoker.h> #include <extensionsystem/pluginmanager.h> +#include <projectexplorer/project.h> +#include <projectexplorer/projectmanager.h> + +#include <texteditor/fontsettings.h> +#include <texteditor/texteditorsettings.h> + #include <utils/algorithm.h> #include <utils/checkablemessagebox.h> #include <utils/completingtextedit.h> @@ -33,12 +41,6 @@ #include <utils/temporarydirectory.h> #include <utils/theme/theme.h> -#include <texteditor/fontsettings.h> -#include <texteditor/texteditorsettings.h> - -#include <projectexplorer/project.h> -#include <projectexplorer/projectmanager.h> - #include <QAction> #include <QApplication> #include <QCompleter> @@ -598,4 +600,65 @@ void VcsBaseSubmitEditor::filterUntrackedFilesOfProject(const FilePath &reposito } } +// Factories + +const char SUBMIT[] = "Vcs.Submit"; +const char DIFF_SELECTED[] = "Vcs.DiffSelectedFiles"; + +class VcsSubmitEditorFactory final : public IEditorFactory +{ +public: + VcsSubmitEditorFactory(VersionControlBase *versionControl, + const VcsBaseSubmitEditorParameters ¶meters) + { + QAction *submitAction = nullptr; + QAction *diffAction = nullptr; + QAction *undoAction = nullptr; + QAction *redoAction = nullptr; + + const Context context(parameters.id); + + ActionBuilder(versionControl, Core::Constants::UNDO) + .setText(Tr::tr("&Undo")) + .setContext(context) + .bindContextAction(&undoAction); + + ActionBuilder(versionControl, Core::Constants::REDO) + .setText(Tr::tr("&Redo")) + .setContext(context) + .bindContextAction(&redoAction); + + ActionBuilder(versionControl, SUBMIT) + .setText(versionControl->commitDisplayName()) + .setIcon(VcsBaseSubmitEditor::submitIcon()) + .setContext(context) + .bindContextAction(&submitAction) + .setCommandAttribute(Command::CA_UpdateText) + .addOnTriggered(versionControl, &VersionControlBase::commitFromEditor); + + ActionBuilder(versionControl, DIFF_SELECTED) + .setText(Tr::tr("Diff &Selected Files")) + .setIcon(VcsBaseSubmitEditor::diffIcon()) + .setContext(context) + .bindContextAction(&diffAction); + + setId(parameters.id); + setDisplayName(QLatin1String(parameters.displayName)); + addMimeType(QLatin1String(parameters.mimeType)); + setEditorCreator([parameters, submitAction, diffAction, undoAction, redoAction] { + VcsBaseSubmitEditor *editor = parameters.editorCreator(); + editor->setParameters(parameters); + editor->registerActions(undoAction, redoAction, submitAction, diffAction); + return editor; + }); + } +}; + +void setupVcsSubmitEditor(VersionControlBase *versionControl, + const VcsBaseSubmitEditorParameters ¶meters) +{ + auto factory = new VcsSubmitEditorFactory(versionControl, parameters); + QObject::connect(versionControl, &QObject::destroyed, [factory] { delete factory; }); +} + } // namespace VcsBase diff --git a/src/plugins/vcsbase/vcsbasesubmiteditor.h b/src/plugins/vcsbase/vcsbasesubmiteditor.h index 82dda898413..204ab9b6af5 100644 --- a/src/plugins/vcsbase/vcsbasesubmiteditor.h +++ b/src/plugins/vcsbase/vcsbasesubmiteditor.h @@ -127,4 +127,8 @@ private: friend class Internal::SubmitEditorFile; // for the file contents }; +VCSBASE_EXPORT void setupVcsSubmitEditor( + VersionControlBase *versionControl, + const VcsBaseSubmitEditorParameters ¶meters); + } // namespace VcsBase |