aboutsummaryrefslogtreecommitdiff
path: root/engines/engine.h
diff options
context:
space:
mode:
authordhewg2011-03-19 17:51:02 +0100
committerdhewg2011-03-19 17:58:17 +0100
commit46e397fb25faf947085349ec4daec4cfdc2cd6a8 (patch)
tree196c8f24d439a40cfcfe0442bb04e86a67e2f250 /engines/engine.h
parent6650e69a3068e3b57e74f603a629c38359dbaaae (diff)
downloadscummvm-rg350-46e397fb25faf947085349ec4daec4cfdc2cd6a8.tar.gz
scummvm-rg350-46e397fb25faf947085349ec4daec4cfdc2cd6a8.tar.bz2
scummvm-rg350-46e397fb25faf947085349ec4daec4cfdc2cd6a8.zip
ENGINES: Mute kPlainSoundType in Engine::syncSoundSettings()
The "Mute all" option rarely muted all audio streams, since we have this abomination called kPlainSoundType (and there is no volume slider for this type). Both, not-really-muting, and adding yet another slider is a horrible user experience imho - especially on handheld ports. So mute this sound in the default implementation, and unmute it to the maximum volume. When an engines has a volume level settings for sounds it plays with this type, it should overwrite said member and set it there.
Diffstat (limited to 'engines/engine.h')
-rw-r--r--engines/engine.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/engines/engine.h b/engines/engine.h
index 508e9887ef..168a1dc2a0 100644
--- a/engines/engine.h
+++ b/engines/engine.h
@@ -163,6 +163,15 @@ public:
* Notify the engine that the sound settings in the config manager may have
* changed and that it hence should adjust any internal volume etc. values
* accordingly.
+ * The default implementation sets the volume levels of all mixer sound
+ * types according to the config entries of the active domain.
+ * When overwriting, call the default implementation first, then adjust the
+ * volumes further (if required).
+ *
+ * @note When setting volume levels, respect the "mute" config entry.
+ * @note The volume for the plain sound type is reset to the maximum
+ * volume. If the engine can associate its own value for this
+ * type, it needs to overwrite this member and set it accordingly.
* @todo find a better name for this
*/
virtual void syncSoundSettings();