Theme Editor: Added (I think) all of the tags to the device configuration window
[kugel-rb.git] / uisimulator / common / backlight-sim.c
blobf5da77a7828529a8c2be139cded9a14ccf9bca56
1 /***************************************************************************
2 * __________ __ ___.
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 * \/ \/ \/ \/ \/
8 * $Id$
10 * Copyright (C) 2009 by Thomas Martitz
12 * This program is free software; you can redistribute it and/or
13 * modify it under the terms of the GNU General Public License
14 * as published by the Free Software Foundation; either version 2
15 * of the License, or (at your option) any later version.
17 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
18 * KIND, either express or implied.
20 ****************************************************************************/
22 #include <stdbool.h>
23 #include "config.h"
24 #include "backlight.h"
25 #include "lcd.h"
27 #ifdef HAVE_LCD_SLEEP
28 extern void lcd_awake(void);
29 #endif
30 /* in uisimulator/sdl/lcd-bitmap.c and lcd-charcell.c */
31 extern void sim_backlight(int value);
33 bool _backlight_init(void)
35 return true;
39 #ifdef HAVE_BACKLIGHT_BRIGHTNESS
41 static inline int normalize_backlight(int val)
43 /* normalize to xx% brightness for sdl */
44 return ((val - MIN_BRIGHTNESS_SETTING + 1) * 100)/MAX_BRIGHTNESS_SETTING;
47 void _backlight_set_brightness(int val)
49 sim_backlight(normalize_backlight(val));
52 #endif /* HAVE_BACKLIGHT_BRIGHTNESS */
55 void _backlight_on(void)
57 #if defined(HAVE_LCD_ENABLE)
58 lcd_enable(true);
59 #elif defined(HAVE_LCD_SLEEP)
60 lcd_awake();
61 #endif
62 #if (CONFIG_BACKLIGHT_FADING != BACKLIGHT_FADING_SW_SETTING)
63 /* if we set the brightness to the settings value, then fading up
64 * is glitchy */
65 #ifdef HAVE_BACKLIGHT_BRIGHTNESS
66 sim_backlight(normalize_backlight(backlight_brightness));
67 #else
68 sim_backlight(100);
69 #endif
71 #endif
74 void _backlight_off(void)
76 sim_backlight(0);
77 #ifdef HAVE_LCD_ENABLE
78 lcd_enable(false);
79 #endif
83 #ifdef HAVE_BUTTON_LIGHT
84 void _buttonlight_on(void)
88 void _buttonlight_off(void)
92 #ifdef HAVE_BUTTONLIGHT_BRIGHTNESS
93 void _buttonlight_set_brightness(int val)
95 (void)val;
97 #endif /* HAVE_BUTTONLIGHT_BRIGHTNESS */
98 #endif /* HAVE_BUTTON_LIGHT */
100 #ifdef HAVE_REMOTE_LCD
101 void _remote_backlight_on(void)
103 sim_remote_backlight(100);
106 void _remote_backlight_off(void)
108 sim_remote_backlight(0);
110 #endif /* HAVE_REMOTE_LCD */