Author: titmuss
Date: Fri Apr 11 15:28:59 2008
New Revision: 2223
URL: http://svn.slimdevices.com?rev=2223&root=Jive&view=rev
Log:
Bug: 5548
Description:
Allow the option to disable the startup sound, and set the sound effects volume
correctly
before the startup sound is played.
To do this the startup sound is no longer played in Framework:init(), instead
the sounds
are loaded and played from SetupSoundEffectsMeta. To keep the splash screen and
startup
sound in sync the splash screen is loaded slightly later and AppletManager
forces the
SetupSoundEffects applet to be loaded first.
Modified:
7.0/trunk/squeezeplay/src/squeezeplay/share/applets/DefaultSkin/DefaultSkinApplet.lua
7.0/trunk/squeezeplay/src/squeezeplay/share/applets/SetupSoundEffects/SetupSoundEffectsApplet.lua
7.0/trunk/squeezeplay/src/squeezeplay/share/applets/SetupSoundEffects/SetupSoundEffectsMeta.lua
7.0/trunk/squeezeplay/src/squeezeplay/share/jive/AppletManager.lua
7.0/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework.c
Modified:
7.0/trunk/squeezeplay/src/squeezeplay/share/applets/DefaultSkin/DefaultSkinApplet.lua
URL:
http://svn.slimdevices.com/7.0/trunk/squeezeplay/src/squeezeplay/share/applets/DefaultSkin/DefaultSkinApplet.lua?rev=2223&root=Jive&r1=2222&r2=2223&view=diff
==============================================================================
---
7.0/trunk/squeezeplay/src/squeezeplay/share/applets/DefaultSkin/DefaultSkinApplet.lua
(original)
+++
7.0/trunk/squeezeplay/src/squeezeplay/share/applets/DefaultSkin/DefaultSkinApplet.lua
Fri Apr 11 15:28:59 2008
@@ -67,7 +67,6 @@
-- Define useful variables for this skin
local imgpath = "applets/DefaultSkin/images/"
-local sndpath = "applets/DefaultSkin/sounds/"
local fontpath = "fonts/"
-- define a local function to make it easier to create icons.
@@ -104,17 +103,6 @@
-- The meta arranges for this to be called to skin Jive.
function skin(self, s)
local screenWidth, screenHeight = Framework:getScreenSize()
-
- -- Sounds
- Framework:loadSound("BUMP", sndpath .. "bump.wav", 1)
- Framework:loadSound("CLICK", sndpath .. "click.wav", 0)
- Framework:loadSound("JUMP", sndpath .. "jump.wav", 0)
- Framework:loadSound("WINDOWSHOW", sndpath .. "pushleft.wav", 1)
- Framework:loadSound("WINDOWHIDE", sndpath .. "pushright.wav", 1)
- Framework:loadSound("SELECT", sndpath .. "select.wav", 0)
- Framework:loadSound("PLAYBACK", sndpath .. "select.wav", 0)
- Framework:loadSound("DOCKING", sndpath .. "docking.wav", 1)
- Framework:loadSound("SHUTDOWN", sndpath .. "shutdown.wav", 1)
-- Images and Tiles
local iconBackground =
Modified:
7.0/trunk/squeezeplay/src/squeezeplay/share/applets/SetupSoundEffects/SetupSoundEffectsApplet.lua
URL:
http://svn.slimdevices.com/7.0/trunk/squeezeplay/src/squeezeplay/share/applets/SetupSoundEffects/SetupSoundEffectsApplet.lua?rev=2223&root=Jive&r1=2222&r2=2223&view=diff
==============================================================================
---
7.0/trunk/squeezeplay/src/squeezeplay/share/applets/SetupSoundEffects/SetupSoundEffectsApplet.lua
(original)
+++
7.0/trunk/squeezeplay/src/squeezeplay/share/applets/SetupSoundEffects/SetupSoundEffectsApplet.lua
Fri Apr 11 15:28:59 2008
@@ -68,6 +68,10 @@
SOUND_CHARGING = {
"DOCKING"
},
+ SOUND_NONE = {
+ "STARTUP",
+ "SHUTDOWN"
+ },
}
@@ -141,12 +145,14 @@
allButtons[button] = v
- -- insert suitable entry for Choice menu
- menu:addItem({
- text = self:string(k),
- icon = button,
- weight = 10
- })
+ if k ~= "SOUND_NONE" then
+ -- insert suitable entry for Choice menu
+ menu:addItem({
+ text = self:string(k),
+ icon = button,
+ weight = 10
+ })
+ end
end
offButton:setSelected(not effectsEnabled)
Modified:
7.0/trunk/squeezeplay/src/squeezeplay/share/applets/SetupSoundEffects/SetupSoundEffectsMeta.lua
URL:
http://svn.slimdevices.com/7.0/trunk/squeezeplay/src/squeezeplay/share/applets/SetupSoundEffects/SetupSoundEffectsMeta.lua?rev=2223&root=Jive&r1=2222&r2=2223&view=diff
==============================================================================
---
7.0/trunk/squeezeplay/src/squeezeplay/share/applets/SetupSoundEffects/SetupSoundEffectsMeta.lua
(original)
+++
7.0/trunk/squeezeplay/src/squeezeplay/share/applets/SetupSoundEffects/SetupSoundEffectsMeta.lua
Fri Apr 11 15:28:59 2008
@@ -52,6 +52,24 @@
end
end
+ local sndpath = "applets/DefaultSkin/sounds/"
+
+ -- The startup sound needs to be played with the minimum
+ -- delay, load and play it first
+ Framework:loadSound("STARTUP", "jive/splash.wav", 1)
+ Framework:playSound("STARTUP")
+
+ -- Load sounds
+ Framework:loadSound("BUMP", sndpath .. "bump.wav", 1)
+ Framework:loadSound("CLICK", sndpath .. "click.wav", 0)
+ Framework:loadSound("JUMP", sndpath .. "jump.wav", 0)
+ Framework:loadSound("WINDOWSHOW", sndpath .. "pushleft.wav", 1)
+ Framework:loadSound("WINDOWHIDE", sndpath .. "pushright.wav", 1)
+ Framework:loadSound("SELECT", sndpath .. "select.wav", 0)
+ Framework:loadSound("PLAYBACK", sndpath .. "select.wav", 0)
+ Framework:loadSound("DOCKING", sndpath .. "docking.wav", 1)
+ Framework:loadSound("SHUTDOWN", sndpath .. "shutdown.wav", 1)
+
-- add a menu to load us
jiveMain:addItem(meta:menuItem('appletSetupSoundEffects',
'advancedSettings', "SOUND_EFFECTS", function(applet, ...)
applet:settingsShow(...) end))
end
Modified: 7.0/trunk/squeezeplay/src/squeezeplay/share/jive/AppletManager.lua
URL:
http://svn.slimdevices.com/7.0/trunk/squeezeplay/src/squeezeplay/share/jive/AppletManager.lua?rev=2223&root=Jive&r1=2222&r2=2223&view=diff
==============================================================================
--- 7.0/trunk/squeezeplay/src/squeezeplay/share/jive/AppletManager.lua
(original)
+++ 7.0/trunk/squeezeplay/src/squeezeplay/share/jive/AppletManager.lua Fri Apr
11 15:28:59 2008
@@ -276,6 +276,14 @@
log:debug("AppletManager:loadApplets")
_findApplets()
+
+ -- load the sound effects applet first so the startup
+ -- sound is played without delay.
+ -- FIXME make the startup order of applet configurable
+ local soundEffectsEntry = _appletsDb["SetupSoundEffects"]
+ _loadMeta(soundEffectsEntry)
+ _evalMeta(soundEffectsEntry)
+
_loadMetas()
_evalMetas()
end
Modified: 7.0/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework.c
URL:
http://svn.slimdevices.com/7.0/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework.c?rev=2223&root=Jive&r1=2222&r2=2223&view=diff
==============================================================================
--- 7.0/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework.c (original)
+++ 7.0/trunk/squeezeplay/src/squeezeplay/src/ui/jive_framework.c Fri Apr 11
15:28:59 2008
@@ -146,6 +146,18 @@
exit(-1);
}
+// SDL_ShowCursor (SDL_DISABLE);
+ SDL_EnableKeyRepeat (100, 100);
+
+ tolua_pushusertype(L, srf, "Surface");
+ lua_setfield(L, -2, "surface");
+
+ /* init audio */
+ jiveL_init_audio(L);
+
+ /* background image */
+ jive_background = jive_tile_fill_color(0x000000FF);
+
/* show splash screen */
splash = jive_surface_load_image("jive/splash.png");
if (splash) {
@@ -153,35 +165,6 @@
jive_surface_blit(splash, srf, (screen_w - splash_w) / 2,
(screen_h - splash_h) / 2);
jive_surface_flip(srf);
}
-
-// SDL_ShowCursor (SDL_DISABLE);
- SDL_EnableKeyRepeat (100, 100);
-
- tolua_pushusertype(L, srf, "Surface");
- lua_setfield(L, -2, "surface");
-
- /* init audio */
- jiveL_init_audio(L);
-
- /* play startup sound */
- lua_getglobal(L, "jive");
- lua_getfield(L, -1, "ui");
- lua_getfield(L, -1, "Audio");
- lua_getfield(L, -1, "loadSound");
- lua_pushvalue(L, -2);
- lua_pushstring(L, "jive/splash.wav");
- lua_pushnumber(L, 1);
- lua_call(L, 3, 1);
-
- if (!lua_isnil(L, -1)) {
- lua_getfield(L, -1, "play");
- lua_pushvalue(L, -2);
- lua_call(L, 1, 0);
- }
- lua_pop(L, 1);
-
- /* background image */
- jive_background = jive_tile_fill_color(0x000000FF);
/* jive.ui.style = {} */
lua_getglobal(L, "jive");
_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/cgi-bin/mailman/listinfo/jive-checkins