History

check-in after menu experiments

https://highfidelity.fogbugz.com/f/cases/3714

Triplelexx committed 9 years ago

Commit 255e7811 parent 07e6b764 files · +58 −13Browse files

Showing the changes to interface/src/LocationBookmarks.cpp (1 of 4 files). Show all

Unified · Split

interface/src/LocationBookmarks.cpp+13−3
@@ -13,6 +13,7 @@ · 12 unmodified lines
1313 #include <QInputDialog>
1414 #include <QMessageBox>
1515 #include <QStandardPaths>
16+//#include <QQmlEngine>
1617
1718 #include <AddressManager.h>
1819 #include <Application.h>
@@ -42,13 +43,13 @@ void LocationBookmarks::setupMenus(Menu* menubar, MenuWrapper* menu) { · 23 unmodified lines
4243 QObject::connect(_deleteBookmarksAction, SIGNAL(triggered()), this, SLOT(deleteBookmark()), Qt::QueuedConnection);
4344
4445 Bookmarks::setupMenus(menubar, menu);
46+ Bookmarks::sortActions(menubar, _bookmarksMenu);
4547 }
4648
4749 void LocationBookmarks::setHomeLocation() {
4850 auto addressManager = DependencyManager::get<AddressManager>();
4951 QString bookmarkAddress = addressManager->currentAddress().toString();
5052 Bookmarks::addBookmark(HOME_BOOKMARK, bookmarkAddress);
51− Bookmarks::sortActions(_bookmarksMenu);
5253 }
5354
5455 void LocationBookmarks::teleportToBookmark() {
@@ -78,7 +79,16 @@ void LocationBookmarks::addBookmarkToMenu(Menu* menubar, const QString& name, co · 23 unmodified lines
7879 QAction* teleportAction = _bookmarksMenu->newAction();
7980 teleportAction->setData(address);
8081 connect(teleportAction, SIGNAL(triggered()), this, SLOT(teleportToBookmark()));
82+ if (!_isMenuSorted) {
83+ menubar->addActionToQMenuAndActionHash(_bookmarksMenu, teleportAction, name, 0, QAction::NoRole);
84+ } else {
85+ // TODO: this is aggressive but all other alternative have proved less fruitful so far.
86+ // having experimented with various pointer types, It is possible the issues are deeper routed in the MenuWrapper/Menu Qt/QML architecture
87+ // further research did not produce better results
8188
82− menubar->addActionToQMenuAndActionHash(_bookmarksMenu, teleportAction, name, 0, QAction::NoRole);
83− Bookmarks::sortActions(_bookmarksMenu);
89+ //menubar->addActionToQMenuAndActionHash(_bookmarksMenu, teleportAction, name, 0, QAction::NoRole,
90+ //Bookmarks::getMenuItemLocation(_bookmarksMenu->actions(), name));
91+ menubar->addActionToQMenuAndActionHash(_bookmarksMenu, teleportAction, name, 0, QAction::NoRole);
92+ Bookmarks::sortActions(menubar, _bookmarksMenu);
93+ }
8494 }