diff options
author | jkobus <jaroslaw.kobus@digia.com> | 2014-07-04 13:55:51 +0200 |
---|---|---|
committer | Jarek Kobus <jaroslaw.kobus@digia.com> | 2014-07-07 10:34:11 +0200 |
commit | 91e42710697944375780708b2e8637b2f57608ac (patch) | |
tree | a01f7236821adde8c3d108e2a441fee056e98fdb /src/plugins/diffeditor/diffeditorcontroller.cpp | |
parent | cb7963bc18297251bd44480ca9392d16e20e17f8 (diff) | |
download | qt-creator-91e42710697944375780708b2e8637b2f57608ac.tar.gz |
Hide reload button for diff editor when there is no reloader
Refactor code a bit. Now DiffEditorController has a pointer
to DiffEditorReloader.
Change-Id: I224579127f112923bc665cd59717b0c4d833981b
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Diffstat (limited to 'src/plugins/diffeditor/diffeditorcontroller.cpp')
-rw-r--r-- | src/plugins/diffeditor/diffeditorcontroller.cpp | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/src/plugins/diffeditor/diffeditorcontroller.cpp b/src/plugins/diffeditor/diffeditorcontroller.cpp index 1d9d76448f..f1ee5fe1fc 100644 --- a/src/plugins/diffeditor/diffeditorcontroller.cpp +++ b/src/plugins/diffeditor/diffeditorcontroller.cpp @@ -29,6 +29,7 @@ #include "diffeditorconstants.h" #include "diffeditorcontroller.h" +#include "diffeditorreloader.h" #include <coreplugin/icore.h> @@ -44,7 +45,8 @@ DiffEditorController::DiffEditorController(QObject *parent) : QObject(parent), m_descriptionEnabled(false), m_contextLinesNumber(3), - m_ignoreWhitespace(true) + m_ignoreWhitespace(true), + m_reloader(0) { QSettings *s = Core::ICore::settings(); s->beginGroup(QLatin1String(settingsGroupC)); @@ -124,6 +126,27 @@ QString DiffEditorController::makePatch(int diffFileIndex, lastChunk && fileData.lastChunkAtTheEndOfFile); } +DiffEditorReloader *DiffEditorController::reloader() const +{ + return m_reloader; +} + +void DiffEditorController::setReloader(DiffEditorReloader *reloader) +{ + if (m_reloader == reloader) + return; // nothing changes + + if (m_reloader) + m_reloader->setDiffEditorController(0); + + m_reloader = reloader; + + if (m_reloader) + m_reloader->setDiffEditorController(this); + + reloaderChanged(m_reloader); +} + void DiffEditorController::clear() { clear(tr("No difference")); @@ -238,7 +261,8 @@ void DiffEditorController::setIgnoreWhitespace(bool ignore) void DiffEditorController::requestReload() { - emit reloadRequested(); + if (m_reloader) + m_reloader->requestReload(); } void DiffEditorController::requestChunkActions(QMenu *menu, |