in annotation editor, including base infrastructure in
VCSBaseEditor. Pass signals of VCSBaseEditor to opaque
VCSBaseEditable (IEditor) for convenience.
Task-number: QTCREATORBUG-503
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.
and ApplicationRunConfiguration to LocalApplicationRunConfiguration,
preparing remote debugging. Change the interface canRun() to be const,
run() to create() (since it does not run anything), use references
to the QSharedPointer<Foo>. Introduce d-Pointer and remove
unneeded headers from ProjectExplorerPlugin and add missing includes
everywhere.
enum ExtraSelectionKind {
CurrentLineSelection,
ParenthesesMatchingSelection,
CodeWarningsSelection,
CodeSemanticsSelection,
OtherSelection,
NExtraSelectionKinds
};
void setExtraSelections(ExtraSelectionKind kind, const QList<QTextEdit::ExtraSelection> &selections);
QList<QTextEdit::ExtraSelection> extraSelections(ExtraSelectionKind kind) const;
This is mainly for the benefit of the cppmodelmanager.