diff options
author | Eike Ziller <eike.ziller@qt.io> | 2018-04-30 13:55:36 +0200 |
---|---|---|
committer | Eike Ziller <eike.ziller@qt.io> | 2018-05-02 07:10:13 +0000 |
commit | 80b9f047f6b3cb39d95b6636fb18fffa7cbf7dbb (patch) | |
tree | 71a121421dfc2aa0c0e6faf17a3ffbabc44519e0 /src/plugins/bookmarks | |
parent | c1097cbe7ff29e50f3b3ab6077c8514950f8892a (diff) |
Add previous and next buttons to bookmarks pane tool bar
Task-number: QTCREATORBUG-9859
Change-Id: I2555fc89cd893681ee17b272def053f1e42e9368
Reviewed-by: David Schulz <david.schulz@qt.io>
Diffstat (limited to 'src/plugins/bookmarks')
-rw-r--r-- | src/plugins/bookmarks/bookmarkmanager.cpp | 20 | ||||
-rw-r--r-- | src/plugins/bookmarks/bookmarkmanager.h | 2 | ||||
-rw-r--r-- | src/plugins/bookmarks/bookmarksplugin.cpp | 5 |
3 files changed, 26 insertions, 1 deletions
diff --git a/src/plugins/bookmarks/bookmarkmanager.cpp b/src/plugins/bookmarks/bookmarkmanager.cpp index 7397cd96d4..deb19a80f8 100644 --- a/src/plugins/bookmarks/bookmarkmanager.cpp +++ b/src/plugins/bookmarks/bookmarkmanager.cpp @@ -57,6 +57,7 @@ #include <QMenu> #include <QPainter> #include <QSpinBox> +#include <QToolButton> Q_DECLARE_METATYPE(Bookmarks::Internal::Bookmark*) @@ -241,6 +242,20 @@ BookmarkView::~BookmarkView() ICore::removeContextObject(m_bookmarkContext); } +QList<QToolButton *> BookmarkView::createToolBarWidgets() const +{ + Command *prevCmd = ActionManager::command(Constants::BOOKMARKS_PREV_ACTION); + Command *nextCmd = ActionManager::command(Constants::BOOKMARKS_NEXT_ACTION); + QTC_ASSERT(prevCmd && nextCmd, return {}); + auto prevButton = new QToolButton; + prevButton->setToolButtonStyle(Qt::ToolButtonIconOnly); + prevButton->setDefaultAction(prevCmd->action()); + auto nextButton = new QToolButton; + nextButton->setToolButtonStyle(Qt::ToolButtonIconOnly); + nextButton->setDefaultAction(nextCmd->action()); + return {prevButton, nextButton}; +} + void BookmarkView::contextMenuEvent(QContextMenuEvent *event) { QMenu menu; @@ -804,7 +819,10 @@ BookmarkViewFactory::BookmarkViewFactory(BookmarkManager *bm) NavigationView BookmarkViewFactory::createWidget() { - return NavigationView(new BookmarkView(m_manager)); + auto view = new BookmarkView(m_manager); + auto navview = NavigationView(view); + navview.dockToolBarWidgets = view->createToolBarWidgets(); + return navview; } } // namespace Internal diff --git a/src/plugins/bookmarks/bookmarkmanager.h b/src/plugins/bookmarks/bookmarkmanager.h index 7de5b60d77..0a87614f47 100644 --- a/src/plugins/bookmarks/bookmarkmanager.h +++ b/src/plugins/bookmarks/bookmarkmanager.h @@ -128,6 +128,8 @@ public: explicit BookmarkView(BookmarkManager *manager); ~BookmarkView(); + QList<QToolButton *> createToolBarWidgets() const; + public slots: void gotoBookmark(const QModelIndex &index); diff --git a/src/plugins/bookmarks/bookmarksplugin.cpp b/src/plugins/bookmarks/bookmarksplugin.cpp index 8ddd17bcfc..513af772ce 100644 --- a/src/plugins/bookmarks/bookmarksplugin.cpp +++ b/src/plugins/bookmarks/bookmarksplugin.cpp @@ -42,6 +42,7 @@ #include <texteditor/texteditorconstants.h> #include <utils/fileutils.h> +#include <utils/utilsicons.h> #include <QMenu> @@ -113,12 +114,16 @@ BookmarksPluginRunData::BookmarksPluginRunData() mbm->addSeparator(); // Previous + m_prevAction.setIcon(Utils::Icons::PREV_TOOLBAR.icon()); + m_prevAction.setIconVisibleInMenu(false); cmd = ActionManager::registerAction(&m_prevAction, BOOKMARKS_PREV_ACTION, editorManagerContext); cmd->setDefaultKeySequence(QKeySequence(useMacShortcuts ? BookmarksPlugin::tr("Meta+,") : BookmarksPlugin::tr("Ctrl+,"))); mbm->addAction(cmd); // Next + m_nextAction.setIcon(Utils::Icons::NEXT_TOOLBAR.icon()); + m_nextAction.setIconVisibleInMenu(false); cmd = ActionManager::registerAction(&m_nextAction, BOOKMARKS_NEXT_ACTION, editorManagerContext); cmd->setDefaultKeySequence(QKeySequence(useMacShortcuts ? BookmarksPlugin::tr("Meta+.") : BookmarksPlugin::tr("Ctrl+."))); |