mirror of
https://github.com/lubosz/overte.git
synced 2025-08-07 19:41:20 +02:00
Merge branch 'master' of https://github.com/highfidelity/hifi into orange
This commit is contained in:
commit
5335dcb236
4 changed files with 37 additions and 36 deletions
|
@ -18,6 +18,7 @@
|
||||||
#include <UUID.h>
|
#include <UUID.h>
|
||||||
|
|
||||||
#include "DiscoverabilityManager.h"
|
#include "DiscoverabilityManager.h"
|
||||||
|
#include "Menu.h"
|
||||||
|
|
||||||
const Discoverability::Mode DEFAULT_DISCOVERABILITY_MODE = Discoverability::All;
|
const Discoverability::Mode DEFAULT_DISCOVERABILITY_MODE = Discoverability::All;
|
||||||
|
|
||||||
|
@ -96,4 +97,32 @@ void DiscoverabilityManager::setDiscoverabilityMode(Discoverability::Mode discov
|
||||||
|
|
||||||
emit discoverabilityModeChanged(discoverabilityMode);
|
emit discoverabilityModeChanged(discoverabilityMode);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DiscoverabilityManager::setVisibility() {
|
||||||
|
Menu* menu = Menu::getInstance();
|
||||||
|
|
||||||
|
if (menu->isOptionChecked(MenuOption::VisibleToEveryone)) {
|
||||||
|
this->setDiscoverabilityMode(Discoverability::All);
|
||||||
|
} else if (menu->isOptionChecked(MenuOption::VisibleToFriends)) {
|
||||||
|
this->setDiscoverabilityMode(Discoverability::Friends);
|
||||||
|
} else if (menu->isOptionChecked(MenuOption::VisibleToNoOne)) {
|
||||||
|
this->setDiscoverabilityMode(Discoverability::None);
|
||||||
|
} else {
|
||||||
|
qDebug() << "ERROR DiscoverabilityManager::setVisibility() called with unrecognized value.";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void DiscoverabilityManager::visibilityChanged(Discoverability::Mode discoverabilityMode) {
|
||||||
|
Menu* menu = Menu::getInstance();
|
||||||
|
|
||||||
|
if (discoverabilityMode == Discoverability::All) {
|
||||||
|
menu->setIsOptionChecked(MenuOption::VisibleToEveryone, true);
|
||||||
|
} else if (discoverabilityMode == Discoverability::Friends) {
|
||||||
|
menu->setIsOptionChecked(MenuOption::VisibleToFriends, true);
|
||||||
|
} else if (discoverabilityMode == Discoverability::None) {
|
||||||
|
menu->setIsOptionChecked(MenuOption::VisibleToNoOne, true);
|
||||||
|
} else {
|
||||||
|
qDebug() << "ERROR DiscoverabilityManager::visibilityChanged() called with unrecognized value.";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -36,6 +36,9 @@ public slots:
|
||||||
Discoverability::Mode getDiscoverabilityMode() { return static_cast<Discoverability::Mode>(_mode.get()); }
|
Discoverability::Mode getDiscoverabilityMode() { return static_cast<Discoverability::Mode>(_mode.get()); }
|
||||||
void setDiscoverabilityMode(Discoverability::Mode discoverabilityMode);
|
void setDiscoverabilityMode(Discoverability::Mode discoverabilityMode);
|
||||||
|
|
||||||
|
void setVisibility();
|
||||||
|
void visibilityChanged(Discoverability::Mode discoverabilityMode);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void discoverabilityModeChanged(Discoverability::Mode discoverabilityMode);
|
void discoverabilityModeChanged(Discoverability::Mode discoverabilityMode);
|
||||||
|
|
||||||
|
|
|
@ -163,21 +163,21 @@ Menu::Menu() {
|
||||||
|
|
||||||
QAction* visibleToEveryone = addCheckableActionToQMenuAndActionHash(visibilityMenu, MenuOption::VisibleToEveryone,
|
QAction* visibleToEveryone = addCheckableActionToQMenuAndActionHash(visibilityMenu, MenuOption::VisibleToEveryone,
|
||||||
0, discoverabilityManager->getDiscoverabilityMode() == Discoverability::All,
|
0, discoverabilityManager->getDiscoverabilityMode() == Discoverability::All,
|
||||||
this, SLOT(setVisibility()));
|
discoverabilityManager.data(), SLOT(setVisibility()));
|
||||||
visibilityGroup->addAction(visibleToEveryone);
|
visibilityGroup->addAction(visibleToEveryone);
|
||||||
|
|
||||||
QAction* visibleToFriends = addCheckableActionToQMenuAndActionHash(visibilityMenu, MenuOption::VisibleToFriends,
|
QAction* visibleToFriends = addCheckableActionToQMenuAndActionHash(visibilityMenu, MenuOption::VisibleToFriends,
|
||||||
0, discoverabilityManager->getDiscoverabilityMode() == Discoverability::Friends,
|
0, discoverabilityManager->getDiscoverabilityMode() == Discoverability::Friends,
|
||||||
this, SLOT(setVisibility()));
|
discoverabilityManager.data(), SLOT(setVisibility()));
|
||||||
visibilityGroup->addAction(visibleToFriends);
|
visibilityGroup->addAction(visibleToFriends);
|
||||||
|
|
||||||
QAction* visibleToNoOne = addCheckableActionToQMenuAndActionHash(visibilityMenu, MenuOption::VisibleToNoOne,
|
QAction* visibleToNoOne = addCheckableActionToQMenuAndActionHash(visibilityMenu, MenuOption::VisibleToNoOne,
|
||||||
0, discoverabilityManager->getDiscoverabilityMode() == Discoverability::None,
|
0, discoverabilityManager->getDiscoverabilityMode() == Discoverability::None,
|
||||||
this, SLOT(setVisibility()));
|
discoverabilityManager.data(), SLOT(setVisibility()));
|
||||||
visibilityGroup->addAction(visibleToNoOne);
|
visibilityGroup->addAction(visibleToNoOne);
|
||||||
|
|
||||||
connect(discoverabilityManager.data(), &DiscoverabilityManager::discoverabilityModeChanged,
|
connect(discoverabilityManager.data(), &DiscoverabilityManager::discoverabilityModeChanged,
|
||||||
this, &Menu::visibilityChanged);
|
discoverabilityManager.data(), &DiscoverabilityManager::visibilityChanged);
|
||||||
}
|
}
|
||||||
|
|
||||||
addActionToQMenuAndActionHash(toolsMenu,
|
addActionToQMenuAndActionHash(toolsMenu,
|
||||||
|
@ -963,29 +963,3 @@ bool Menu::menuItemExists(const QString& menu, const QString& menuitem) {
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
|
|
||||||
void Menu::setVisibility() {
|
|
||||||
auto discoverabilityManager = DependencyManager::get<DiscoverabilityManager>();
|
|
||||||
|
|
||||||
if (Menu::getInstance()->isOptionChecked(MenuOption::VisibleToEveryone)) {
|
|
||||||
discoverabilityManager->setDiscoverabilityMode(Discoverability::All);
|
|
||||||
} else if (Menu::getInstance()->isOptionChecked(MenuOption::VisibleToFriends)) {
|
|
||||||
discoverabilityManager->setDiscoverabilityMode(Discoverability::Friends);
|
|
||||||
} else if (Menu::getInstance()->isOptionChecked(MenuOption::VisibleToNoOne)) {
|
|
||||||
discoverabilityManager->setDiscoverabilityMode(Discoverability::None);
|
|
||||||
} else {
|
|
||||||
qCDebug(interfaceapp) << "ERROR Menu::setVisibility() called with unrecognized value.";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void Menu::visibilityChanged(Discoverability::Mode discoverabilityMode) {
|
|
||||||
if (discoverabilityMode == Discoverability::All) {
|
|
||||||
setIsOptionChecked(MenuOption::VisibleToEveryone, true);
|
|
||||||
} else if (discoverabilityMode == Discoverability::Friends) {
|
|
||||||
setIsOptionChecked(MenuOption::VisibleToFriends, true);
|
|
||||||
} else if (discoverabilityMode == Discoverability::None) {
|
|
||||||
setIsOptionChecked(MenuOption::VisibleToNoOne, true);
|
|
||||||
} else {
|
|
||||||
qCDebug(interfaceapp) << "ERROR Menu::visibilityChanged() called with unrecognized value.";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
@ -66,9 +66,6 @@ public slots:
|
||||||
bool isOptionChecked(const QString& menuOption) const;
|
bool isOptionChecked(const QString& menuOption) const;
|
||||||
void setIsOptionChecked(const QString& menuOption, bool isChecked);
|
void setIsOptionChecked(const QString& menuOption, bool isChecked);
|
||||||
|
|
||||||
private slots:
|
|
||||||
void setVisibility();
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static Menu* _instance;
|
static Menu* _instance;
|
||||||
Menu();
|
Menu();
|
||||||
|
@ -99,8 +96,6 @@ private:
|
||||||
int findPositionOfMenuItem(QMenu* menu, const QString& searchMenuItem);
|
int findPositionOfMenuItem(QMenu* menu, const QString& searchMenuItem);
|
||||||
int positionBeforeSeparatorIfNeeded(QMenu* menu, int requestedPosition);
|
int positionBeforeSeparatorIfNeeded(QMenu* menu, int requestedPosition);
|
||||||
|
|
||||||
void visibilityChanged(Discoverability::Mode discoverabilityMode);
|
|
||||||
|
|
||||||
QHash<QString, QAction*> _actionHash;
|
QHash<QString, QAction*> _actionHash;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue