VCS: Introduce Base class for VCS plugins, use in git.
Fixes: - Cannot diff a file that does not belong to a project - Cannot commit when a temporary diff/log view is open due to the current file pointing to a temporary directory - git's project-related actions not passing the correct relative path. Implementation: - Centralize code to listen for Qt Creator's relevant state changes in VCSBasePlugin, dispatching the changes to the instances affected. (avoiding multiple invocations of searches/QFileInfo on current). - Do the same for the corelistener catching closing SubmitEditors. - Introduce VCSBasePluginState representing the relevant state (current file/project). - Call git with working directory set and relative arguments - Remove setEnabled/isEnabled() logic of IVersionControl - Pass toplevel from VCSManager to avoid duplicate searches.
Showing
- src/plugins/coreplugin/iversioncontrol.h 0 additions, 7 deletionssrc/plugins/coreplugin/iversioncontrol.h
- src/plugins/coreplugin/vcsmanager.cpp 42 additions, 38 deletionssrc/plugins/coreplugin/vcsmanager.cpp
- src/plugins/coreplugin/vcsmanager.h 21 additions, 16 deletionssrc/plugins/coreplugin/vcsmanager.h
- src/plugins/cvs/cvscontrol.cpp 0 additions, 13 deletionssrc/plugins/cvs/cvscontrol.cpp
- src/plugins/cvs/cvscontrol.h 0 additions, 6 deletionssrc/plugins/cvs/cvscontrol.h
- src/plugins/cvs/cvsplugin.cpp 21 additions, 30 deletionssrc/plugins/cvs/cvsplugin.cpp
- src/plugins/cvs/cvsplugin.h 12 additions, 27 deletionssrc/plugins/cvs/cvsplugin.h
- src/plugins/git/changeselectiondialog.cpp 20 additions, 1 deletionsrc/plugins/git/changeselectiondialog.cpp
- src/plugins/git/changeselectiondialog.h 6 additions, 5 deletionssrc/plugins/git/changeselectiondialog.h
- src/plugins/git/gitclient.cpp 12 additions, 24 deletionssrc/plugins/git/gitclient.cpp
- src/plugins/git/gitclient.h 1 addition, 1 deletionsrc/plugins/git/gitclient.h
- src/plugins/git/gitplugin.cpp 109 additions, 210 deletionssrc/plugins/git/gitplugin.cpp
- src/plugins/git/gitplugin.h 11 additions, 28 deletionssrc/plugins/git/gitplugin.h
- src/plugins/git/gitversioncontrol.cpp 0 additions, 13 deletionssrc/plugins/git/gitversioncontrol.cpp
- src/plugins/git/gitversioncontrol.h 0 additions, 3 deletionssrc/plugins/git/gitversioncontrol.h
- src/plugins/perforce/perforceplugin.cpp 28 additions, 52 deletionssrc/plugins/perforce/perforceplugin.cpp
- src/plugins/perforce/perforceplugin.h 8 additions, 21 deletionssrc/plugins/perforce/perforceplugin.h
- src/plugins/perforce/perforceversioncontrol.cpp 1 addition, 14 deletionssrc/plugins/perforce/perforceversioncontrol.cpp
- src/plugins/perforce/perforceversioncontrol.h 0 additions, 6 deletionssrc/plugins/perforce/perforceversioncontrol.h
- src/plugins/projectexplorer/projectexplorer.cpp 0 additions, 7 deletionssrc/plugins/projectexplorer/projectexplorer.cpp
Loading
Please register or sign in to comment