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

Reply via email to