Author: fmueller
Date: Mon Jan 9 04:09:06 2012
New Revision: 9565
URL: http://svn.slimdevices.com/jive?rev=9565&view=rev
Log:
Bug: n/a
Description: Add brightness sensitivity setting to allow experiments with the
new LiteOn ambient light sensor.
Modified:
branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/SqueezeboxBabyApplet.lua
branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/SqueezeboxBabyMeta.lua
branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/strings.txt
Modified:
branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/SqueezeboxBabyApplet.lua
URL:
http://svn.slimdevices.com/jive/branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/SqueezeboxBabyApplet.lua?rev=9565&r1=9564&r2=9565&view=diff
==============================================================================
---
branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/SqueezeboxBabyApplet.lua
(original)
+++
branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/SqueezeboxBabyApplet.lua
Mon Jan 9 04:09:06 2012
@@ -121,10 +121,15 @@
local AMBIENT_RAMPSTEPS = 4
local STATIC_AMBIENT_MIN = 90000
+local SENS_BRIGHTNESS_LEVEL_MAX = 36
+local SENS_BRIGHTNESS_LEVEL_INIT = 36
+local SENS_BRIGHTNESS_LEVEL_FACTOR = STATIC_AMBIENT_MIN /
SENS_BRIGHTNESS_LEVEL_MAX
local brightCur = -1
local brightTarget = -1
local brightMin = MIN_BRIGHTNESS_LEVEL_INIT
+local brightSens = STATIC_AMBIENT_MIN
+local brightLast = -1
local brightReadRateDivider = 1
@@ -309,6 +314,10 @@
settings.brightness = settings.brightness or MAX_BRIGHTNESS_LEVEL
-- Value of minimal brightness (auto) slider
settings.brightnessMinimal = settings.brightnessMinimal or
(MIN_BRIGHTNESS_LEVEL_INIT)
+
+ -- Value of sensitivity brightness (auto) slider
+ settings.brightnessSensitivity = settings.brightnessSensitivity or
(SENS_BRIGHTNESS_LEVEL_INIT)
+
-- Value of brightness control
settings.brightnessControl = settings.brightnessControl or "automatic"
@@ -325,6 +334,8 @@
brightCur = MAX_BRIGHTNESS_LEVEL
brightTarget = MAX_BRIGHTNESS_LEVEL
brightMin = settings.brightnessMinimal
+ brightSens = settings.brightnessSensitivity *
SENS_BRIGHTNESS_LEVEL_FACTOR
+ brightLast = MAX_BRIGHTNESS_LEVEL
brightReadRateDivider = 1
self.brightPrev = self:getBrightness()
@@ -432,9 +443,11 @@
if( MAX_SMOOTHING_VALUES < #luxSmooth ) then
table.remove(luxSmooth, 1)
end
- end
-
- local ambient = self:getSmoothedLux(luxSmooth)
+
+ brightLast = self:getSmoothedLux(luxSmooth)
+ end
+
+ local ambient = brightLast
--[[
log:info("Ambient: " .. tostring(ambient))
@@ -443,13 +456,14 @@
]]--
-- switch around ambient value (darker is higher)
- ambient = STATIC_AMBIENT_MIN - ambient
+ ambient = brightSens - ambient
+
if ambient < 0 then
ambient = 0
end
--log:info("AmbientFixed: " .. tostring(ambient))
- brightTarget = (MAX_BRIGHTNESS_LEVEL / STATIC_AMBIENT_MIN) * ambient
+ brightTarget = (MAX_BRIGHTNESS_LEVEL / brightSens) * ambient
self:doBrightnessRamping(brightTarget);
@@ -1028,6 +1042,68 @@
sysWrite(self, "alarm_time", wakeup)
end
+
+
+-- Sensitivity brightness slider (Auto)
+function settingsSensBrightnessShow (self, menuItem)
+ local window = Window("text_list", self:string("BSP_BRIGHTNESS_SENS"),
squeezeboxjiveTitleStyle)
+
+ local settings = self:getSettings()
+ local level = settings.brightnessSensitivity
+
+-- DEBUG only - remove
+ local status = Label("text", brightSens)
+
+ local slider = Slider("slider", 1, SENS_BRIGHTNESS_LEVEL_MAX, level,
+ function(slider, value, done)
+-- log:info("Value: " .. value)
+
+ -- Set to automatic when changing minimal brightness
+ settings.brightnessControl = "automatic"
+
+ -- Prepare setting to store later
+ settings.brightnessSensitivity = value
+ -- Update sens value for timer loop
+ brightSens = value * SENS_BRIGHTNESS_LEVEL_FACTOR
+
+-- DEBUG only - remove
+ status:setValue(brightSens)
+
+ -- done is true for 'go' and 'play' but we do not want
to leave
+ if done then
+ window:playSound("BUMP")
+ window:bumpRight()
+ end
+ end)
+
+ window:addWidget(Textarea("help_text",
self:string("BSP_BRIGHTNESS_SENS_ADJUST_HELP")))
+
+-- DEBUG only - remove
+ window:addWidget(status)
+
+ window:addWidget(Group("sliderGroup", {
+ min = Icon("button_slider_min"),
+ slider = slider,
+ max = Icon("button_slider_max"),
+ }))
+
+ -- If we are here already, eat this event to avoid piling up this
screen over and over
+ window:addActionListener("go_brightness", self,
+ function()
+ return EVENT_CONSUME
+ end)
+
+ window:addListener(EVENT_WINDOW_POP,
+ function()
+ brightSens = settings.brightnessSensitivity *
SENS_BRIGHTNESS_LEVEL_FACTOR
+ self:storeSettings()
+ end
+ )
+
+ window:show()
+ return window
+end
+
-- Minimal brightness slider (Auto)
function settingsMinBrightnessShow (self, menuItem)
Modified:
branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/SqueezeboxBabyMeta.lua
URL:
http://svn.slimdevices.com/jive/branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/SqueezeboxBabyMeta.lua?rev=9565&r1=9564&r2=9565&view=diff
==============================================================================
---
branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/SqueezeboxBabyMeta.lua
(original)
+++
branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/SqueezeboxBabyMeta.lua
Mon Jan 9 04:09:06 2012
@@ -82,9 +82,10 @@
jiveMain:setDefaultSkin("QVGAlandscapeSkin")
-- settings
- jiveMain:addItem(meta:menuItem('brightnessSetting',
'settingsBrightness', "BSP_BRIGHTNESS_MANUAL", function(applet, ...)
applet:settingsBrightnessShow(...) end, _, _, "hm_settingsBrightness"))
- jiveMain:addItem(meta:menuItem('minBrightnessSetting',
'settingsBrightness', "BSP_BRIGHTNESS_MIN", function(applet, ...)
applet:settingsMinBrightnessShow(...) end))
- jiveMain:addItem(meta:menuItem('brightnessSettingControl',
'settingsBrightness', "BSP_BRIGHTNESS_CTRL", function(applet, ...)
applet:settingsBrightnessControlShow(...) end, _, _, "hm_settingsBrightness"))
+ jiveMain:addItem(meta:menuItem('sensBrightnessSetting',
'settingsBrightness', "BSP_BRIGHTNESS_SENS", function(applet, ...)
applet:settingsSensBrightnessShow(...) end, 40))
+ jiveMain:addItem(meta:menuItem('brightnessSetting',
'settingsBrightness', "BSP_BRIGHTNESS_MANUAL", function(applet, ...)
applet:settingsBrightnessShow(...) end, 20, _, "hm_settingsBrightness"))
+ jiveMain:addItem(meta:menuItem('minBrightnessSetting',
'settingsBrightness', "BSP_BRIGHTNESS_MIN", function(applet, ...)
applet:settingsMinBrightnessShow(...) end, 30))
+ jiveMain:addItem(meta:menuItem('brightnessSettingControl',
'settingsBrightness', "BSP_BRIGHTNESS_CTRL", function(applet, ...)
applet:settingsBrightnessControlShow(...) end, 10, _, "hm_settingsBrightness"))
-- services
meta:registerService("getBrightness")
Modified:
branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/strings.txt
URL:
http://svn.slimdevices.com/jive/branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/strings.txt?rev=9565&r1=9564&r2=9565&view=diff
==============================================================================
---
branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/strings.txt
(original)
+++
branches/MP2/squeezeplay/src/squeezeplay_baby/share/applets/SqueezeboxBaby/strings.txt
Mon Jan 9 04:09:06 2012
@@ -153,6 +153,12 @@
RU ÐÑполÑзÑйÑе колеÑико длÑ
ÑегÑлиÑовки ÑÑкоÑÑи.
SV Justera ljusstyrkan med rullningshjulet.
+BSP_BRIGHTNESS_SENS
+ EN Sensitivity (Auto)
+
+BSP_BRIGHTNESS_SENS_ADJUST_HELP
+ EN Use the wheel to adjust brightness sensitivity.
+
GOODBYE
CS Nashledanou
DA Farvel
_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/jive-checkins