mirror of
https://github.com/overte-org/overte.git
synced 2025-06-15 19:39:16 +02:00
add support for persisting the mono preview mode option
This commit is contained in:
parent
ff3c934c6c
commit
d77d102384
5 changed files with 25 additions and 2 deletions
|
@ -184,3 +184,13 @@ void PluginContainerProxy::releaseOverlayTexture(uint32_t texture) {
|
||||||
// FIXME implement present thread compositing
|
// FIXME implement present thread compositing
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// settings interface
|
||||||
|
bool PluginContainerProxy::getBoolSetting(const QString& settingName, bool defaultValue) {
|
||||||
|
Setting::Handle<bool> settingValue(settingName, defaultValue);
|
||||||
|
return settingValue.get();
|
||||||
|
}
|
||||||
|
|
||||||
|
void PluginContainerProxy::setBoolSetting(const QString& settingName, bool value) {
|
||||||
|
Setting::Handle<bool> settingValue(settingName, value);
|
||||||
|
return settingValue.set(value);
|
||||||
|
}
|
||||||
|
|
|
@ -33,6 +33,10 @@ class PluginContainerProxy : public QObject, PluginContainer {
|
||||||
virtual bool isForeground() override;
|
virtual bool isForeground() override;
|
||||||
virtual const DisplayPlugin* getActiveDisplayPlugin() const override;
|
virtual const DisplayPlugin* getActiveDisplayPlugin() const override;
|
||||||
|
|
||||||
|
/// settings interface
|
||||||
|
virtual bool getBoolSetting(const QString& settingName, bool defaultValue) override;
|
||||||
|
virtual void setBoolSetting(const QString& settingName, bool value) override;
|
||||||
|
|
||||||
QRect _savedGeometry{ 10, 120, 800, 600 };
|
QRect _savedGeometry{ 10, 120, 800, 600 };
|
||||||
std::map<QString, QActionGroup*> _exclusiveGroups;
|
std::map<QString, QActionGroup*> _exclusiveGroups;
|
||||||
|
|
||||||
|
|
|
@ -47,6 +47,10 @@ public:
|
||||||
virtual bool isForeground() = 0;
|
virtual bool isForeground() = 0;
|
||||||
virtual const DisplayPlugin* getActiveDisplayPlugin() const = 0;
|
virtual const DisplayPlugin* getActiveDisplayPlugin() const = 0;
|
||||||
|
|
||||||
|
/// settings interface
|
||||||
|
virtual bool getBoolSetting(const QString& settingName, bool defaultValue) = 0;
|
||||||
|
virtual void setBoolSetting(const QString& settingName, bool value) = 0;
|
||||||
|
|
||||||
QVector<QPair<QString, QString>>& currentDisplayActions() {
|
QVector<QPair<QString, QString>>& currentDisplayActions() {
|
||||||
return _currentDisplayPluginActions;
|
return _currentDisplayPluginActions;
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,6 @@
|
||||||
// FIXME get rid of this
|
// FIXME get rid of this
|
||||||
#include <gl/Config.h>
|
#include <gl/Config.h>
|
||||||
#include <plugins/PluginContainer.h>
|
#include <plugins/PluginContainer.h>
|
||||||
|
|
||||||
#include "OculusHelpers.h"
|
#include "OculusHelpers.h"
|
||||||
|
|
||||||
|
|
||||||
|
@ -140,12 +139,16 @@ const QString OculusDisplayPlugin::NAME("Oculus Rift");
|
||||||
|
|
||||||
static const QString MONO_PREVIEW = "Mono Preview";
|
static const QString MONO_PREVIEW = "Mono Preview";
|
||||||
static const QString FRAMERATE = DisplayPlugin::MENU_PATH() + ">Framerate";
|
static const QString FRAMERATE = DisplayPlugin::MENU_PATH() + ">Framerate";
|
||||||
|
static const bool DEFAULT_MONO_VIEW = true;
|
||||||
|
|
||||||
void OculusDisplayPlugin::activate() {
|
void OculusDisplayPlugin::activate() {
|
||||||
|
_monoPreview = _container->getBoolSetting("monoPreview", DEFAULT_MONO_VIEW);
|
||||||
|
|
||||||
_container->addMenuItem(PluginType::DISPLAY_PLUGIN, MENU_PATH(), MONO_PREVIEW,
|
_container->addMenuItem(PluginType::DISPLAY_PLUGIN, MENU_PATH(), MONO_PREVIEW,
|
||||||
[this](bool clicked) {
|
[this](bool clicked) {
|
||||||
_monoPreview = clicked;
|
_monoPreview = clicked;
|
||||||
}, true, true);
|
_container->setBoolSetting("monoPreview", _monoPreview);
|
||||||
|
}, true, _monoPreview);
|
||||||
_container->removeMenu(FRAMERATE);
|
_container->removeMenu(FRAMERATE);
|
||||||
OculusBaseDisplayPlugin::activate();
|
OculusBaseDisplayPlugin::activate();
|
||||||
}
|
}
|
||||||
|
|
|
@ -99,6 +99,8 @@ public:
|
||||||
virtual QOpenGLContext* getPrimaryContext() override { return nullptr; }
|
virtual QOpenGLContext* getPrimaryContext() override { return nullptr; }
|
||||||
virtual bool isForeground() override { return true; }
|
virtual bool isForeground() override { return true; }
|
||||||
virtual const DisplayPlugin* getActiveDisplayPlugin() const override { return nullptr; }
|
virtual const DisplayPlugin* getActiveDisplayPlugin() const override { return nullptr; }
|
||||||
|
virtual bool getBoolSetting(const QString& settingName, bool defaultValue) override { return defaultValue; }
|
||||||
|
virtual void setBoolSetting(const QString& settingName, bool value) override { }
|
||||||
};
|
};
|
||||||
|
|
||||||
class MyControllerScriptingInterface : public controller::ScriptingInterface {
|
class MyControllerScriptingInterface : public controller::ScriptingInterface {
|
||||||
|
|
Loading…
Reference in a new issue