diff --git a/src/widgets/atcoreinstancewidget.cpp b/src/widgets/atcoreinstancewidget.cpp --- a/src/widgets/atcoreinstancewidget.cpp +++ b/src/widgets/atcoreinstancewidget.cpp @@ -18,7 +18,9 @@ #include "atcoreinstancewidget.h" #include "ui_atcoreinstancewidget.h" +#include #include +#include #include #include #include @@ -54,26 +56,31 @@ { m_toolBar = new QToolBar(); - auto lb = new QAction; - lb->setIcon(QIcon::fromTheme("go-home", QIcon(QString(":/%1/home").arg(m_theme)))); + auto homeMenu = new QMenu(); - lb->setDisabled(true); - m_toolBar->addAction(lb); - - auto homeAll = new QAction("All"); + auto homeAll = new QAction(QIcon::fromTheme("go-home", QIcon(QString(":/%1/home").arg(m_theme))), i18n("Home All")); + homeAll->setToolTip(i18n("Home All")); connect(homeAll, &QAction::triggered, [this]{ m_core.home(); }); - m_toolBar->addAction(homeAll); + homeMenu->addAction(homeAll); - for(auto homes : std::map{{"X", AtCore::X}, {"Y", AtCore::Y}, {"Z", AtCore::Z}}) { + for(auto homes : std::map{{i18n("Home X"), AtCore::X}, {i18n("Home Y"), AtCore::Y}, {i18n("Home Z"), AtCore::Z}}) { auto home = new QAction(homes.first); + home->setIcon(QIcon::fromTheme("go-home", QIcon(QString(":/%1/home").arg(m_theme)))); connect(home, &QAction::triggered, [this, homes] { m_core.home(homes.second); }); - m_toolBar->addAction(home); + homeMenu->addAction(home); } + auto homeBtn = new QPushButton(); + homeBtn->setIcon(QIcon::fromTheme("go-home", QIcon(QString(":/%1/home").arg(m_theme)))); + homeBtn->setIconSize(QSize(32,32)); + homeBtn->setMenu(homeMenu); + + m_toolBar->addWidget(homeBtn); + m_toolBar->addSeparator(); auto *axis = new QAction("Axis");