mirror of
https://github.com/overte-org/overte.git
synced 2025-04-08 08:14:48 +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
|
||||
}
|
||||
|
||||
/// 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 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 };
|
||||
std::map<QString, QActionGroup*> _exclusiveGroups;
|
||||
|
||||
|
|
|
@ -47,6 +47,10 @@ public:
|
|||
virtual bool isForeground() = 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() {
|
||||
return _currentDisplayPluginActions;
|
||||
}
|
||||
|
|
|
@ -12,7 +12,6 @@
|
|||
// FIXME get rid of this
|
||||
#include <gl/Config.h>
|
||||
#include <plugins/PluginContainer.h>
|
||||
|
||||
#include "OculusHelpers.h"
|
||||
|
||||
|
||||
|
@ -140,12 +139,16 @@ const QString OculusDisplayPlugin::NAME("Oculus Rift");
|
|||
|
||||
static const QString MONO_PREVIEW = "Mono Preview";
|
||||
static const QString FRAMERATE = DisplayPlugin::MENU_PATH() + ">Framerate";
|
||||
static const bool DEFAULT_MONO_VIEW = true;
|
||||
|
||||
void OculusDisplayPlugin::activate() {
|
||||
_monoPreview = _container->getBoolSetting("monoPreview", DEFAULT_MONO_VIEW);
|
||||
|
||||
_container->addMenuItem(PluginType::DISPLAY_PLUGIN, MENU_PATH(), MONO_PREVIEW,
|
||||
[this](bool clicked) {
|
||||
_monoPreview = clicked;
|
||||
}, true, true);
|
||||
_container->setBoolSetting("monoPreview", _monoPreview);
|
||||
}, true, _monoPreview);
|
||||
_container->removeMenu(FRAMERATE);
|
||||
OculusBaseDisplayPlugin::activate();
|
||||
}
|
||||
|
|
|
@ -99,6 +99,8 @@ public:
|
|||
virtual QOpenGLContext* getPrimaryContext() override { return nullptr; }
|
||||
virtual bool isForeground() override { return true; }
|
||||
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 {
|
||||
|
|
Loading…
Reference in a new issue