You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

646 lines
12 KiB

7 years ago
# --------------------------------------------------------------------------- #
Display standard {
driver 'DPF'
port 'usb0'
font '16x34'
size '320x240'
basecolor '000000'
foreground 'ffffff'
background '00000000'
backlight 7
}
Display radio {
driver 'DPF'
port 'usb0'
font '16x34'
size '320x240'
basecolor '000000'
foreground 'ffffff'
background '00000000'
backlight 7
}
Display large {
driver 'DPF'
port 'usb0'
font '20x48'
size '320x240'
basecolor '000000'
foreground 'ffffff'
background '00000000'
backlight 7
}
Display small {
driver 'DPF'
port 'usb0'
font '10x16'
size '320x240'
basecolor '000000'
foreground 'ffffff'
background '00000000'
backlight 7
}
Display d-box2 {
driver 'DPF'
port 'usb0'
font '16x34'
size '320x240'
basecolor DBOX2COL
foreground DBOX2COL
background '00000000'
backlight 7
}
Display standby {
driver 'DPF'
port 'usb0'
font '16x30'
size '320x240'
basecolor '000000'
foreground 'ffffff'
background '00000000'
backlight 3
}
# --------------------------------------------------------------------------- #
# --- general widgets (partly postfixed with _layout) --- #
Widget LOGO {
class 'Image'
file file::exist('/tmp/lcd/menu') == 1 ? ICONS . 'menu.png' : file::readline('/tmp/lcd/logo', 1)
update 3300
visible file::exist('/tmp/lcd/menu') == 1 ? 1 : file::readline('/tmp/lcd/mode_logo', 1)
reload 1
center 55
scale 100
width 320
height 55
}
Widget SERVICE {
class 'Text'
expression file::exist('/tmp/lcd/menu') == 1 ? '' : (file::readline('/tmp/lcd/mode_logo', 1) == 1 ? '' : file::readline('/tmp/lcd/service', 1))
align 'PC'
width 20
update 3300
}
Widget SERVICE_large {
class 'Text'
expression file::exist('/tmp/lcd/menu') == 1 ? '' : (file::readline('/tmp/lcd/mode_logo', 1) == 1 ? '' : file::readline('/tmp/lcd/service', 1))
align 'PC'
width 16
update 3300
}
Widget SERVICE_small {
class 'Text'
expression file::exist('/tmp/lcd/menu') == 1 ? '' : (file::readline('/tmp/lcd/mode_logo', 1) == 1 ? '' : file::readline('/tmp/lcd/service', 1))
align 'PC'
width 32
update 3300
}
Widget SERVICE_d-box2 {
class 'Text'
#expression file::readline('/tmp/lcd/service', 1)
expression file::exist('/tmp/lcd/menu') == 1 ? '' : (file::readline('/tmp/lcd/mode_logo', 1) == 1 ? '' : file::readline('/tmp/lcd/service', 1))
align 'PC'
width 20
update 3300
}
Widget EVENT {
class 'Text'
expression file::exist('/tmp/lcd/menu') == 1 ? file::readline('/tmp/lcd/menu', 1) : file::readline('/tmp/lcd/event', 1)
align 'PC'
width 20
update 250
speed 325
foreground 'fd6d13'
7 years ago
}
Widget EVENT_large {
class 'Text'
expression file::exist('/tmp/lcd/menu') == 1 ? file::readline('/tmp/lcd/menu', 1) : file::readline('/tmp/lcd/event', 1)
align 'PC'
width 16
update 250
speed 325
foreground 'fd6d13'
7 years ago
}
Widget EVENT_small {
class 'Text'
expression file::exist('/tmp/lcd/menu') == 1 ? file::readline('/tmp/lcd/menu', 1) : file::readline('/tmp/lcd/event', 1)
align 'PC'
width 32
update 250
speed 325
foreground 'fd6d13'
7 years ago
}
Widget EVENT_d-box2 {
class 'Text'
expression file::exist('/tmp/lcd/menu') == 1 ? file::readline('/tmp/lcd/menu', 1) : file::readline('/tmp/lcd/event', 1)
align 'PC'
width 20
update 250
speed 325
}
Widget PROGRESS {
class 'Bar'
expression 0
expression2 file::exist('/tmp/lcd/menu') == 1 ? 0 : file::readline('/tmp/lcd/progress', 1)
min 0
max 100
length 18
update 2600
foreground 'fd6d13aa'
7 years ago
barcolor0 '00000000'
}
Widget PROGRESS_large {
class 'Bar'
expression file::exist('/tmp/lcd/menu') == 1 ? 0 : file::readline('/tmp/lcd/progress', 1)
min 0
max 100
length 14
update 2600
foreground '000000aa'
}
Widget PROGRESS_small {
class 'Bar'
expression file::exist('/tmp/lcd/menu') == 1 ? 0 : file::readline('/tmp/lcd/progress', 1)
min 0
max 100
length 30
update 2600
foreground 'fd6d13aa'
7 years ago
}
Widget PROGRESS_d-box2 {
class 'Bar'
expression 0
expression2 file::exist('/tmp/lcd/menu') == 1 ? 0 : file::readline('/tmp/lcd/progress', 1)
min 0
max 100
length 10
update 2600
barcolor0 '00000000'
}
Widget DURATION {
class 'Text'
expression file::exist('/tmp/lcd/menu') == 1 ? '' : file::readline('/tmp/lcd/duration', 1)
align 'R'
width 13
update 500
foreground 'fd6d13'
7 years ago
}
Widget VOLUME_d-box2 {
class 'Bar'
expression file::readline('/tmp/lcd/volume', 1)
expression2 0
min 0
max 100
length 10
update 1000
barcolor1 '00000000'
}
Widget TIME {
class 'Text'
expression strftime('%H:%M', time())
align 'L'
width 5
update 5000
foreground '9E9E9E'
7 years ago
}
Widget TIME_d-box2 {
class 'Text'
expression strftime('%H:%M', time())
align 'L'
width 5
update 5000
}
# --- system-info --- #
Widget CPU {
class 'Text'
prefix 'CPU: '
expression proc_stat::cpu('busy', 500)
postfix '%'
precision 1
align 'R'
width 11
update 1000
foreground '9E9E9E'
7 years ago
}
Widget CPU_BAR {
class 'Bar'
expression proc_stat::cpu('busy', 500)
min 0
max 100
length 17
style 'H'
update 500
foreground '9E9E9E'
7 years ago
}
Widget RAM {
class 'Text'
prefix 'RAM: '
expression 100 - ((meminfo('MemFree') * 100) / meminfo('MemTotal'))
postfix '%'
precision 1
align 'R'
width 11
update 1000
foreground '9E9E9E'
7 years ago
}
Widget MTD {
class 'Text'
prefix 'MTD: '
expression 100 - (statfs('/', 'bfree') * 100) / statfs('/', 'blocks')
postfix '%'
precision 1
align 'R'
width 11
update 1000
foreground '9E9E9E'
7 years ago
}
# --- general mode-icons --- #
Widget ICON_ECM {
class 'Image'
file ICONS . 'mode/ecm_' . file::readline('/tmp/lcd/mode_ecm', 1) . '.png'
update 10000
reload 1
}
Widget ICON_TIMER {
class 'Image'
file ICONS . 'mode/timer_' . file::readline('/tmp/lcd/mode_timer', 1) . '.png'
update 10000
reload 1
}
Widget ICON_REC {
class 'Image'
file ICONS . 'mode/rec_' . file::readline('/tmp/lcd/mode_rec', 1) . '.png'
update 10000
reload 1
}
Widget ICON_TS {
class 'Image'
file ICONS . 'mode/ts_' . file::readline('/tmp/lcd/mode_tshift', 1) . '.png'
update 10000
reload 1
}
# --- d-box2 mode-icons --- #
Widget ICON_ECM_d-box2 {
class 'Image'
file ICONS . 'mode/d-box2/ecm_' . file::readline('/tmp/lcd/mode_ecm', 1) . '.png'
update 10000
reload 1
}
Widget ICON_TIMER_d-box2 {
class 'Image'
file ICONS . 'mode/d-box2/timer_' . file::readline('/tmp/lcd/mode_timer', 1) . '.png'
update 10000
reload 1
}
Widget ICON_REC_d-box2 {
class 'Image'
file ICONS . 'mode/d-box2/rec_' . file::readline('/tmp/lcd/mode_rec', 1) . '.png'
update 10000
reload 1
}
Widget ICON_TS_d-box2 {
class 'Image'
file ICONS . 'mode/d-box2/ts_' . file::readline('/tmp/lcd/mode_tshift', 1) . '.png'
update 10000
reload 1
}
# --- the background --- #
Widget BACKGROUND {
class 'Image'
file ICONS . 'background/' . file::readline('/tmp/lcd/layout', 1) . '.png'
update 0
}
# --- the clocks for standby-mode --- #
# --- the digital clock --- #
Widget HOUR1_ {
class 'image'
file file::exist(FCLOCK) == 1 ? ICONS . 'blank.png' : ICONS . 'clock/digital/' . substr(strftime('%H', time()), 0, 1) . '.png'
update 10000
reload 1
}
Widget HOUR_1 {
class 'image'
file file::exist(FCLOCK) == 1 ? ICONS . 'blank.png' : ICONS . 'clock/digital/' . substr(strftime('%H', time()), 1) . '.png'
update 10000
reload 1
}
Widget DP {
class 'Image'
file file::exist(FCLOCK) == 1 ? ICONS . 'blank.png' : ICONS . 'clock/digital/dp.png'
update 0
}
Widget MIN1_ {
class 'image'
file file::exist(FCLOCK) == 1 ? ICONS . 'blank.png' : ICONS . 'clock/digital/' . substr(strftime('%M', time()), 0, 1) . '.png'
update 10000
reload 1
}
Widget MIN_1 {
class 'image'
file file::exist(FCLOCK) == 1 ? ICONS . 'blank.png' : ICONS . 'clock/digital/' . substr(strftime('%M', time()), 1) . '.png'
update 10000
reload 1
}
# --- the analog clock --- #
Widget DIAL_A {
class 'image'
file file::exist(FCLOCK) == 0 ? ICONS . 'blank.png' : ICONS . 'clock/analog/dial.png'
update 0
}
Widget HOUR_A {
class 'image'
file file::exist(FCLOCK) == 0 ? ICONS . 'blank.png' : ICONS . 'clock/analog/h' . ( ( (strftime('%I', time()) == 12 ? 0 : strftime('%I', time())) *5) + substr((strftime('%M', time()) / 12), 0, 1) ). '.png'
update 10000
reload 1
}
Widget MIN_A {
class 'image'
file file::exist(FCLOCK) == 0 ? ICONS . 'blank.png' : ICONS . 'clock/analog/m' . strftime('%M', time()) . '.png'
update 10000
reload 1
}
# --- the weather --- #
Widget EXEC_WEATHER-SCRIPT {
class 'Text'
expression exec('/share/lcd/scripts/weather', 900000) # 15 minutes
width 0
}
Widget ICON_WEATHER {
class 'Image'
file file::exist(FWEATHER) == 0 ? ICONS . 'weather/weather_off.png' : ICONS . 'weather/weather_on.png'
update 10000
reload 1
}
Widget WEATHERICON_CURRENT {
class 'image'
file file::exist(FWEATHER) == 0 ? ICONS . 'weather/0000.png' : ICONS . 'weather/' . file::readline('/tmp/lcd/weathericons', 1)
update 10000
reload 1
}
Widget WEATHERICON_LATER {
class 'image'
file file::exist(FWEATHER) == 0 ? ICONS . 'weather/0000.png' : ICONS . 'weather/' . file::readline('/tmp/lcd/weathericons', strftime('%H', time()) < 16 ? 2 : 3)
update 10000
reload 1
}
Widget TEMPERATURE_CURRENT {
class 'Text'
expression file::exist(FWEATHER) == 0 ? '' : file::readline('/tmp/lcd/temperatures', 1)
align 'L'
width 3
update 10000
}
Widget TEMPERATURE_LATER {
class 'Text'
expression file::exist(FWEATHER) == 0 ? '' : file::readline('/tmp/lcd/temperatures', strftime('%H', time()) < 16 ? 2 : 3)
align 'R'
width 3
update 10000
}
# --------------------------------------------------------------------------- #
Layout standard {
layer 0 {
row02.col01 'SERVICE'
row04.col01 'EVENT'
row05.col02 'PROGRESS'
row07 {
col07 'DURATION'
col02 'TIME'
}
}
layer 1 {
x008.y073 'ICON_ECM'
x008.y217 'ICON_TIMER'
x008.y258 'ICON_REC'
x008.y289 'ICON_TS'
x021.y001 'LOGO'
}
layer 2 {
x001.y001 'BACKGROUND'
}
}
Layout radio {
layer 0 {
row02.col01 'SERVICE'
row04.col01 'EVENT'
row05.col02 'PROGRESS'
row07 {
col07 'DURATION'
col02 'TIME'
}
}
layer 1 {
x008.y073 'ICON_ECM'
x008.y217 'ICON_TIMER'
x008.y258 'ICON_REC'
x008.y289 'ICON_TS'
x021.y001 'LOGO'
}
layer 2 {
x001.y001 'BACKGROUND'
}
}
Layout large {
layer 0 {
row02.col01 'SERVICE_large'
row04.col01 'EVENT_large'
row05.col02 'PROGRESS_large'
}
layer 1 {
x008.y073 'ICON_ECM'
x008.y217 'ICON_TIMER'
x008.y258 'ICON_REC'
x008.y289 'ICON_TS'
x044.y001 'LOGO'
}
layer 2 {
x001.y001 'BACKGROUND'
}
}
Layout small {
layer 0 {
row04.col01 'SERVICE_small'
row06.col01 'EVENT_small'
row08.col02 'PROGRESS_small'
row12 {
col02 'CPU'
col15 'CPU_BAR'
}
row13.col02 'RAM'
row14 {
col02 'MTD'
col27 'TIME'
}
}
layer 1 {
x008.y073 'ICON_ECM'
x008.y217 'ICON_TIMER'
x008.y258 'ICON_REC'
x008.y289 'ICON_TS'
x021.y001 'LOGO'
}
layer 2 {
x001.y001 'BACKGROUND'
}
}
Layout d-box2 {
layer 0 {
row01.col04 'PROGRESS_d-box2'
row03.col01 'SERVICE_d-box2'
row05.col01 'EVENT_d-box2'
row07 {
col04 'VOLUME_d-box2'
col15 'TIME_d-box2'
}
}
layer 1 {
x045.y073 'ICON_ECM_d-box2'
x045.y217 'ICON_TIMER_d-box2'
x045.y258 'ICON_REC_d-box2'
x045.y289 'ICON_TS_d-box2'
x060.y001 'LOGO'
}
layer 2 {
x001.y001 'BACKGROUND'
}
}
Layout standby {
layer 0 {
x020.y085 'MIN_A'
X034.Y025 'HOUR1_'
X034.Y085 'HOUR_1'
X034.Y145 'DP'
X034.Y175 'MIN1_'
X034.Y235 'MIN_1'
row01.col1 'EXEC_WEATHER-SCRIPT'
x225.y132 'ICON_WEATHER'
X168.Y017 'WEATHERICON_CURRENT'
X168.Y241 'WEATHERICON_LATER'
row07.col07 'TEMPERATURE_CURRENT'
row07.col12 'TEMPERATURE_LATER'
}
layer 1 {
x020.y085 'HOUR_A'
x008.y073 'ICON_ECM'
x008.y217 'ICON_TIMER'
x008.y258 'ICON_REC'
x008.y289 'ICON_TS'
}
layer 2 {
x020.y000 'DIAL_A'
x001.y001 'BACKGROUND'
}
}
# --------------------------------------------------------------------------- #
Variables {
ICONS '/share/lcd/icons/'
FWEATHER '/var/etc/.lcd-weather'
FCLOCK '/var/etc/.lcd-clock_a'
# color for layout "d-box2" {
#DBOX2COL 'F44336' # red
#DBOX2COL '4CAF50' # green
#DBOX2COL '3F51B5' # blue
DBOX2COL 'F5F5F5' # white
#DBOX2COL 'FFEB3B' # yellow
#DBOX2COL 'E91E63' # pink
7 years ago
# }
}
# --------------------------------------------------------------------------- #
Display file::readline('/tmp/lcd/layout', 1)
Layout file::readline('/tmp/lcd/layout', 1)
# --------------------------------------------------------------------------- #