diff options
author | Eike Ziller <eike.ziller@theqtcompany.com> | 2015-06-04 15:21:02 +0200 |
---|---|---|
committer | Eike Ziller <eike.ziller@theqtcompany.com> | 2015-06-10 15:32:55 +0000 |
commit | fef9d7ff94ec497016d7a7120f8b60fde65ce8bf (patch) | |
tree | 4e16765dfc78d9ebb101d1b745acdcd3c8d64352 /src/plugins/vcsbase | |
parent | be0aa40520d8a133b1f975de8750b5b8e25da2be (diff) |
Editor manager: Abort with a single message if file is not readable.
We show a dialog that offers opening a file in a different editor type
if opening a file fails, but we should not do that if opening the file
fails because it is not readable.
With this change, documents now specify if they failed to open a file
because reading failed, or because they could not handle the file
contents.
Task-number: QTCREATORBUG-14495
Change-Id: I5d4b7cfa74b87ef21b9b55bc30b3ebe2f8238dfa
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Diffstat (limited to 'src/plugins/vcsbase')
-rw-r--r-- | src/plugins/vcsbase/submiteditorfile.cpp | 11 | ||||
-rw-r--r-- | src/plugins/vcsbase/submiteditorfile.h | 2 |
2 files changed, 7 insertions, 6 deletions
diff --git a/src/plugins/vcsbase/submiteditorfile.cpp b/src/plugins/vcsbase/submiteditorfile.cpp index 0346b0a198..2aa4ea907c 100644 --- a/src/plugins/vcsbase/submiteditorfile.cpp +++ b/src/plugins/vcsbase/submiteditorfile.cpp @@ -57,22 +57,23 @@ SubmitEditorFile::SubmitEditorFile(const VcsBaseSubmitEditorParameters *paramete setTemporary(true); } -bool SubmitEditorFile::open(QString *errorString, const QString &fileName, const QString &realFileName) +Core::IDocument::OpenResult SubmitEditorFile::open(QString *errorString, const QString &fileName, + const QString &realFileName) { if (fileName.isEmpty()) - return false; + return OpenResult::ReadError; FileReader reader; if (!reader.fetch(realFileName, QIODevice::Text, errorString)) - return false; + return OpenResult::ReadError; const QString text = QString::fromLocal8Bit(reader.data()); if (!m_editor->setFileContents(text.toUtf8())) - return false; + return OpenResult::CannotHandle; setFilePath(FileName::fromString(fileName)); setModified(fileName != realFileName); - return true; + return OpenResult::Success; } bool SubmitEditorFile::setContents(const QByteArray &contents) diff --git a/src/plugins/vcsbase/submiteditorfile.h b/src/plugins/vcsbase/submiteditorfile.h index 152f2bd689..f370df20b2 100644 --- a/src/plugins/vcsbase/submiteditorfile.h +++ b/src/plugins/vcsbase/submiteditorfile.h @@ -47,7 +47,7 @@ public: explicit SubmitEditorFile(const VcsBaseSubmitEditorParameters *parameters, VcsBaseSubmitEditor *parent = 0); - bool open(QString *errorString, const QString &fileName, const QString &realFileName); + OpenResult open(QString *errorString, const QString &fileName, const QString &realFileName); bool setContents(const QByteArray &contents); QString defaultPath() const { return QString(); } QString suggestedFileName() const { return QString(); } |