Add position to navigation history when navigating through outline

This commit is contained in:
Kai Koehne
2010-07-14 12:21:23 +02:00
parent 8a3c1cc0d4
commit 5aea93028f
3 changed files with 15 additions and 0 deletions

View File

@@ -50,6 +50,7 @@
#include <coreplugin/actionmanager/actionmanager.h>
#include <coreplugin/actionmanager/actioncontainer.h>
#include <coreplugin/actionmanager/command.h>
#include <coreplugin/editormanager/editormanager.h>
#include <coreplugin/icore.h>
#include <coreplugin/coreconstants.h>
#include <coreplugin/modemanager.h>
@@ -830,6 +831,10 @@ void QmlJSTextEditor::jumpToOutlineElement(int /*index*/)
QModelIndex index = m_outlineCombo->view()->currentIndex();
AST::SourceLocation location = index.data(QmlOutlineModel::SourceLocationRole).value<AST::SourceLocation>();
Core::EditorManager *editorManager = Core::EditorManager::instance();
editorManager->cutForwardNavigationHistory();
editorManager->addCurrentPositionToNavigationHistory();
QTextCursor cursor = textCursor();
cursor.setPosition(location.offset);
setTextCursor(cursor);

View File

@@ -2,6 +2,7 @@
#include "qmloutlinemodel.h"
#include <coreplugin/ifile.h>
#include <coreplugin/editormanager/editormanager.h>
#include <QtGui/QVBoxLayout>
#include <QDebug>
@@ -90,6 +91,10 @@ void QmlJSOutlineWidget::updateSelectionInText(const QItemSelection &selection)
QModelIndex index = selection.indexes().first();
AST::SourceLocation location = index.data(QmlOutlineModel::SourceLocationRole).value<AST::SourceLocation>();
Core::EditorManager *editorManager = Core::EditorManager::instance();
editorManager->cutForwardNavigationHistory();
editorManager->addCurrentPositionToNavigationHistory();
QTextCursor textCursor = m_editor.data()->textCursor();
m_blockCursorSync = true;
textCursor.setPosition(location.offset);