# ---------------------------------------- # # --- PEARL Display (PX-1184, 320x240) --- # # ---------------------------------------- # Display Pearl_standard { driver 'DPF' port 'usb0' font '16x34' size '320x240' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness', 1) } Display Pearl_user01 { driver 'DPF' port 'usb0' font '20x48' size '320x240' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness', 1) } Display Pearl_user02 { driver 'DPF' port 'usb0' font '10x16' size '320x240' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness', 1) } Display Pearl_user03 { driver 'DPF' port 'usb0' font '16x34' size '320x240' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness', 1) } Display Pearl_user04 { driver 'DPF' port 'usb0' font '16x34' size '320x240' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness', 1) } Display Pearl_radio { driver 'DPF' port 'usb0' font '16x34' size '320x240' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness', 1) } Display Pearl_standby { driver 'DPF' port 'usb0' font '16x30' size '320x240' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness_standby', 1) } # --------------------------------------------------------------------------- # # --- general widgets (partly postfixed with _layout) --- # Widget Pearl_LOGO { class 'Image' file file::readline('/tmp/lcd/logo', 1) update 5000 reload 1 center 1 inverted 0 scale 150 } Widget Pearl_EVENT { class 'Text' expression file::readline('/tmp/lcd/event', 1) align 'PC' width 20 update 250 speed 325 foreground 'ee9a49' } Widget Pearl_EVENT_user01 { class 'Text' expression file::readline('/tmp/lcd/event', 1) align 'PC' width 16 update 250 speed 325 foreground 'ee9a49' } Widget Pearl_EVENT_user02 { class 'Text' expression file::readline('/tmp/lcd/event', 1) align 'PC' width 32 update 250 speed 325 foreground 'ee9a49' } Widget Pearl_EVENT_user03 { class 'Text' expression file::readline('/tmp/lcd/event', 1) align 'PC' width 20 update 250 speed 325 } Widget Pearl_EVENT_user04 { class 'Text' expression file::readline('/tmp/lcd/event', 1) align 'PC' width 20 update 250 speed 325 } Widget Pearl_PROGRESS { class 'Bar' expression 0 expression2 file::readline('/tmp/lcd/progress', 1) min 0 max 100 length 18 update 2600 foreground '0000ff' barcolor0 '00000000' } Widget Pearl_PROGRESS_user01 { class 'Bar' expression 0 expression2 file::readline('/tmp/lcd/progress', 1) min 0 max 100 length 18 update 2600 foreground '0000ff' barcolor0 '00000000' } Widget Pearl_PROGRESS_user02 { class 'Bar' expression 0 expression2 file::readline('/tmp/lcd/progress', 1) min 0 max 100 length 18 update 2600 foreground '0000ff' barcolor0 '00000000' } Widget Pearl_PROGRESS_user03 { class 'Bar' expression 0 expression2 file::readline('/tmp/lcd/progress', 1) min 0 max 100 length 18 update 2600 foreground '0000ff' barcolor0 '00000000' } Widget Pearl_PROGRESS_user04 { class 'Bar' expression 0 expression2 file::readline('/tmp/lcd/progress', 1) min 0 max 100 length 18 update 2600 foreground '0000ff' barcolor0 '00000000' } Widget Pearl_DURATION { class 'Text' expression file::readline('/tmp/lcd/duration', 1) align 'R' width 13 update 500 foreground 'ee9a49' } Widget Pearl_DURATION_user01 { class 'Text' expression file::readline('/tmp/lcd/duration', 1) align 'R' width 13 update 500 foreground 'ee9a49' } Widget Pearl_DURATION_user02 { class 'Text' expression file::readline('/tmp/lcd/duration', 1) align 'R' width 13 update 500 foreground 'ee9a49' } Widget Pearl_DURATION_user03 { class 'Text' expression file::readline('/tmp/lcd/duration', 1) align 'R' width 13 update 500 foreground 'ee9a49' } Widget Pearl_DURATION_user04 { class 'Text' expression file::readline('/tmp/lcd/duration', 1) align 'R' width 13 update 500 foreground 'ee9a49' } Widget Pearl_VOLUME { class 'Bar' expression file::readline('/tmp/lcd/volume', 1) expression2 0 min 0 max 100 length 10 update 1000 barcolor1 '00000000' } Widget Pearl_VOLUME_user01 { class 'Bar' expression file::readline('/tmp/lcd/volume', 1) expression2 0 min 0 max 100 length 10 update 1000 barcolor1 '00000000' } Widget Pearl_VOLUME_user02 { class 'Bar' expression file::readline('/tmp/lcd/volume', 1) expression2 0 min 0 max 100 length 10 update 1000 barcolor1 '00000000' } Widget Pearl_VOLUME_user03 { class 'Bar' expression file::readline('/tmp/lcd/volume', 1) expression2 0 min 0 max 100 length 10 update 1000 barcolor1 '00000000' } Widget Pearl_VOLUME_user04 { class 'Bar' expression file::readline('/tmp/lcd/volume', 1) expression2 0 min 0 max 100 length 10 update 1000 barcolor1 '00000000' } Widget Pearl_TIME { class 'Text' expression strftime('%H:%M', time()) align 'L' width 5 update 5000 foreground '808080' } Widget Pearl_TIME_user01 { class 'Text' expression strftime('%H:%M', time()) align 'L' width 5 update 5000 foreground '808080' } Widget Pearl_TIME_user02 { class 'Text' expression strftime('%H:%M', time()) align 'L' width 5 update 5000 foreground '808080' } Widget Pearl_TIME_user03 { class 'Text' expression strftime('%H:%M', time()) align 'L' width 5 update 5000 } Widget Pearl_TIME_user04 { class 'Text' expression strftime('%H:%M', time()) align 'L' width 5 update 5000 } # --- system-info --- # Widget Pearl_CPU { class 'Text' prefix 'CPU: ' expression proc_stat::cpu('busy', 500) postfix '%' precision 1 align 'R' width 11 update 1000 foreground '808080' } Widget Pearl_CPU_BAR { class 'Bar' expression proc_stat::cpu('busy', 500) min 0 max 100 length 17 style 'H' update 500 foreground '808080' } Widget Pearl_RAM { class 'Text' prefix 'RAM: ' expression 100 - ((meminfo('MemFree') * 100) / meminfo('MemTotal')) postfix '%' precision 1 align 'R' width 11 update 1000 foreground '808080' } Widget Pearl_MTD { class 'Text' prefix 'MTD: ' expression 100 - (statfs('/', 'bfree') * 100) / statfs('/', 'blocks') postfix '%' precision 1 align 'R' width 11 update 1000 foreground '808080' } # --- the clocks for standby-mode --- # # --- the digital clock --- # Widget Pearl_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 scale 117 } Widget Pearl_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 scale 117 } Widget Pearl_DP { class 'Image' file file::exist(FCLOCK) == 1 ? ICONS . 'blank.png' : ICONS . 'clock/digital/dp.png' update 0 scale 117 } Widget Pearl_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 scale 117 } Widget Pearl_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 scale 117 } # --- the analog clock --- # Widget Pearl_DIAL_A { class 'image' file file::exist(FCLOCK) == 0 ? ICONS . 'blank.png' : ICONS . 'clock/analog/dial.png' update 0 scale 160 } Widget Pearl_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 scale 150 } Widget Pearl_MIN_A { class 'image' file file::exist(FCLOCK) == 0 ? ICONS . 'blank.png' : ICONS . 'clock/analog/m' . strftime('%M', time()) . '.png' update 10000 reload 2 scale 150 } # --------------------------------------------------------------------------- # Layout Pearl_standard { layer 0 { row04.col01 'Pearl_EVENT' row05.col02 'Pearl_PROGRESS' row07 { col07 'Pearl_DURATION' col02 'Pearl_TIME' } } layer 1 { x001.y001 'Pearl_LOGO' } } Layout Pearl_user01 { layer 0 { row04.col01 'Pearl_EVENT_user01' row05.col01 'Pearl_PROGRESS_user01' } layer 1 { x001.y001 'Pearl_LOGO' } } Layout Pearl_user02 { layer 0 { row08.col01 'Pearl_EVENT_user02' row10.col02 'Pearl_PROGRESS_user02' row12 { col02 'Pearl_CPU' col15 'Pearl_CPU_BAR' } row13.col02 'Pearl_RAM' row14 { col02 'Pearl_MTD' col27 'Pearl_TIME' } } layer 1 { x001.y001 'Pearl_LOGO' } } Layout Pearl_user03 { layer 0 { row01.col04 'Pearl_PROGRESS_user03' row05.col01 'Pearl_EVENT_user03' row07 { col04 'Pearl_VOLUME_user03' col15 'Pearl_TIME_user03' } } layer 1 { x030.y001 'Pearl_LOGO' } } Layout Pearl_user04 { layer 0 { row04.col01 'Pearl_EVENT' row05.col02 'Pearl_PROGRESS' row07 { col07 'Pearl_DURATION' col02 'Pearl_TIME' } } layer 1 { x001.y001 'Pearl_LOGO' } } Layout Pearl_radio { layer 0 { row04.col01 'Pearl_EVENT' row05.col02 'Pearl_PROGRESS' row07 { col07 'Pearl_DURATION' col02 'Pearl_TIME' } } layer 1 { x001.y001 'Pearl_LOGO' } } Layout Pearl_standby { layer 0 { x010.y050 'Pearl_MIN_A' X074.Y010 'Pearl_HOUR1_' X074.Y080 'Pearl_HOUR_1' X074.Y143 'Pearl_DP' X074.Y170 'Pearl_MIN1_' X074.Y240 'Pearl_MIN_1' } layer 1 { x010.y050 'Pearl_HOUR_A' } layer 2 { x001.y42 'Pearl_DIAL_A' } } # --------------------------------- # # --- SAMSUNG SPF-87H (800x480) --- # # --------------------------------- # Display Samsung_standard { driver 'SamsungSPF' model 'SPF-AUTO' port 'usb0' font '20x40' size '800x480' basecolor 'dddddd' foreground 'ffffff' background '00000000' orientation 1 backlight file::readline('/tmp/lcd/brightness', 1) } Display Samsung_user01 { driver 'SamsungSPF' model 'SPF-AUTO' port 'usb0' font '20x40' size '800x480' basecolor 'dddddd' foreground 'ffffff' background '00000000' orientation 1 backlight file::readline('/tmp/lcd/brightness', 1) } Display Samsung_user02 { driver 'SamsungSPF' model 'SPF-AUTO' port 'usb0' font '20x40' size '800x480' basecolor 'dddddd' foreground 'ffffff' background '00000000' orientation 1 backlight file::readline('/tmp/lcd/brightness', 1) } Display Samsung_user03 { driver 'SamsungSPF' model 'SPF-AUTO' port 'usb0' font '20x40' size '800x480' basecolor 'dddddd' foreground 'ffffff' background '00000000' orientation 1 backlight file::readline('/tmp/lcd/brightness', 1) } Display Samsung_user04 { driver 'SamsungSPF' model 'SPF-AUTO' port 'usb0' font '20x40' size '800x480' basecolor 'dddddd' foreground 'ffffff' background '00000000' orientation 1 backlight file::readline('/tmp/lcd/brightness', 1) } Display Samsung_radio { driver 'SamsungSPF' model 'SPF-AUTO' port 'usb0' font '20x40' size '800x480' basecolor 'dddddd' foreground 'ffffff' background '00000000' orientation 1 backlight file::readline('/tmp/lcd/brightness', 1) } Display Samsung_standby { driver 'SamsungSPF' model 'SPF-AUTO' port 'usb0' font '20x40' size '800x480' basecolor '000000' foreground 'ffffff' background '00000000' orientation 1 backlight file::readline('/tmp/lcd/brightness_standby', 1) } # --------------------------------------------------------------------------- # Widget Samsung_STANDBY { class 'Image' file ICONS . '1x1_black.png' reload 0 update 0 inverted 0 width 1600 height 960 } Widget Samsung_BACKGROUND { class 'Image' file ICONS . '1x1_black.png' reload 0 inverted 0 width 1600 height 960 update 10000 } Widget Samsung_TUNER { class 'Image' file SYSICONS . 'tuner_' . file::readline('/tmp/lcd/tuner', 1) .'.png' update 10000 reload 1 inverted 0 scale 225 } Widget Samsung_REC { class 'Image' file file::readline('/tmp/lcd/mode_rec_icon', 1) update 10000 reload 1 inverted 0 scale 225 } Widget Samsung_ECM { class 'Image' file strstr(file::readline('/tmp/lcd/mode_ecm', 1), 'on') == 0 ? ICONS . 'crypted.png' : ICONS . 'open.png' update 10000 reload 1 scale 50 } Widget Samsung_LOGO { class 'Image' file file::readline('/tmp/lcd/logo', 1) update 5000 reload 1 inverted 0 scale 250 } Widget Samsung_START { class 'Truetype' font file::readline('/tmp/lcd/font', 1) fcolor 'dddddd' size 0 width 130 height 40 align 'L' expression file::readline('/tmp/lcd/start', 1) update 5000 reload 1 } Widget Samsung_START_user02 { class 'Truetype' font file::readline('/tmp/lcd/font', 1) fcolor file::readline('/tmp/lcd/fgcolor', 1) size 0 width 130 height 40 align 'L' expression file::readline('/tmp/lcd/start', 1) update 5000 reload 1 } Widget Samsung_END { class 'Truetype' font file::readline('/tmp/lcd/font', 1) fcolor 'dddddd' size 0 height 40 width 130 align 'R' expression file::readline('/tmp/lcd/end', 1) update 5000 reload 1 } Widget Samsung_END_user02 { class 'Truetype' font file::readline('/tmp/lcd/font', 1) fcolor file::readline('/tmp/lcd/fgcolor', 1) size 0 height 40 width 130 align 'R' expression file::readline('/tmp/lcd/end', 1) update 5000 reload 1 } Widget Samsung_TTF-CHANNEL { class 'Truetype' expression file::readline('/tmp/lcd/service', 1) font file::readline('/tmp/lcd/font', 1) fcolor 'dddddd' update 5000 reload 1 inverted 0 size 0 width 770 height 40 align 'M' } Widget Samsung_TTF-CHANNEL_user02 { class 'Truetype' expression file::readline('/tmp/lcd/service', 1) font file::readline('/tmp/lcd/font', 1) fcolor file::readline('/tmp/lcd/fgcolor', 1) update 5000 reload 1 inverted 0 size 0 width 770 height 40 align 'M' } Widget Samsung_TTF-EPG-NOW { class 'Truetype' expression file::readline('/tmp/lcd/event', 1) font file::readline('/tmp/lcd/font', 1) fcolor 'dddddd' update 5000 reload 1 inverted 0 size 0 width 770 height 80 align 'M' } Widget Samsung_TTF-EPG-NOW_user02 { class 'Truetype' expression file::readline('/tmp/lcd/event', 1) font file::readline('/tmp/lcd/font', 1) fcolor file::readline('/tmp/lcd/fgcolor', 1) update 5000 reload 1 inverted 0 size 0 width 770 height 80 align 'M' } Widget Samsung_TTF-EPG-NEXT { class 'Truetype' expression file::readline('/tmp/lcd/event', 2) font file::readline('/tmp/lcd/font', 1) fcolor 'dddddd' update 5000 reload 1 inverted 0 size 0 width 770 height 40 align 'M' } Widget Samsung_TTF-EPG-NEXT_user02 { class 'Truetype' expression file::readline('/tmp/lcd/event', 2) font file::readline('/tmp/lcd/font', 1) fcolor file::readline('/tmp/lcd/fgcolor', 1) update 5000 reload 1 inverted 0 size 0 width 770 height 40 align 'M' } Widget Samsung_EPGBAR { class 'Bar' expression file::readline('/tmp/lcd/progress', 1) min 0 max 100 length 26 background '000000' foreground '0000dd' style 'H' } Widget Samsung_EPGBAR_user02 { class 'Bar' expression file::readline('/tmp/lcd/progress', 1) min 0 max 100 length 26 background '000000' foreground '0000cc' style 'H' } # --- the analog clock --- # Widget Samsung_DIAL_A { class 'image' file file::exist(FCLOCK) == 0 ? ICONS . 'blank.png' : ICONS . 'clock/analog/dial.png' update 0 scale 300 } Widget Samsung_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 scale 290 } Widget Samsung_MIN_A { class 'image' file file::exist(FCLOCK) == 0 ? ICONS . 'blank.png' : ICONS . 'clock/analog/m' . strftime('%M', time()) . '.png' update 10000 reload 1 scale 290 } # --- the digital clock --- # Widget Samsung_HOUR1_ { class 'image' file ICONS . 'clock/digital/' . substr(strftime('%H', time()), 0, 1) . '.png' update 10000 reload 1 scale 100 } Widget Samsung_HOUR_1 { class 'image' file ICONS . 'clock/digital/' . substr(strftime('%H', time()), 1) . '.png' update 10000 reload 1 scale 100 } Widget Samsung_DP { class 'Image' file ICONS . 'clock/digital/dp.png' update 0 scale 100 } Widget Samsung_MIN1_ { class 'image' file ICONS . 'clock/digital/' . substr(strftime('%M', time()), 0, 1) . '.png' update 10000 reload 1 scale 100 } Widget Samsung_MIN_1 { class 'image' file ICONS . 'clock/digital/' . substr(strftime('%M', time()), 1) . '.png' update 10000 reload 1 scale 100 } Widget Samsung_STANDBY_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 scale 280 } Widget Samsung_STANDBY_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 scale 280 } Widget Samsung_STANDBY_DP { class 'Image' file file::exist(FCLOCK) == 1 ? ICONS . 'blank.png' : ICONS . 'clock/digital/dp.png' update 0 scale 280 } Widget Samsung_STANDBY_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 scale 280 } Widget Samsung_STANDBY_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 scale 280 } # --------------------------------------------------------------------------- # Layout Samsung_standard { Layer 0 { X15.Y15 'Samsung_HOUR1_' X15.Y75 'Samsung_HOUR_1' X15.Y135 'Samsung_DP' X15.Y165 'Samsung_MIN1_' X15.Y225 'Samsung_MIN_1' X15.Y300 'Samsung_LOGO' X250.Y15 'Samsung_TTF-EPG-NOW' X340.Y15 'Samsung_TTF-CHANNEL' X390.Y15 'Samsung_TTF-EPG-NEXT' X440.Y1 'Samsung_START' X440.Y670 'Samsung_END' } Layer 1 { Row12.Col08 'Samsung_EPGBAR' } Layer 2 { X1.Y1 'Samsung_BACKGROUND' } } Layout Samsung_user01 { Layer 0 { X15.Y15 'Samsung_HOUR1_' X15.Y75 'Samsung_HOUR_1' X15.Y135 'Samsung_DP' X15.Y165 'Samsung_MIN1_' X15.Y225 'Samsung_MIN_1' X15.Y300 'Samsung_LOGO' X125.Y60 'Samsung_TUNER' X125.Y110 'Samsung_REC' X125.Y190 'Samsung_ECM' X250.Y15 'Samsung_TTF-EPG-NOW' X340.Y15 'Samsung_TTF-CHANNEL' X390.Y15 'Samsung_TTF-EPG-NEXT' X440.Y1 'Samsung_START' X440.Y670 'Samsung_END' } Layer 1 { Row12.Col08 'Samsung_EPGBAR' } Layer 2 { X1.Y1 'Samsung_BACKGROUND' } } Layout Samsung_user02 { Layer 0 { X15.Y15 'Samsung_HOUR1_' X15.Y75 'Samsung_HOUR_1' X15.Y135 'Samsung_DP' X15.Y165 'Samsung_MIN1_' X15.Y225 'Samsung_MIN_1' X15.Y300 'Samsung_LOGO' X250.Y15 'Samsung_TTF-EPG-NOW_user02' X340.Y15 'Samsung_TTF-CHANNEL_user02' X390.Y15 'Samsung_TTF-EPG-NEXT_user02' X440.Y1 'Samsung_START_user02' X440.Y670 'Samsung_END_user02' } Layer 1 { Row12.Col08 'Samsung_EPGBAR_user02' } } Layout Samsung_user03 { Layer 0 { X15.Y15 'Samsung_HOUR1_' X15.Y75 'Samsung_HOUR_1' X15.Y135 'Samsung_DP' X15.Y165 'Samsung_MIN1_' X15.Y225 'Samsung_MIN_1' X15.Y300 'Samsung_LOGO' X125.Y60 'Samsung_TUNER' X125.Y110 'Samsung_REC' X125.Y190 'Samsung_ECM' X250.Y15 'Samsung_TTF-EPG-NOW_user02' X340.Y15 'Samsung_TTF-CHANNEL_user02' X390.Y15 'Samsung_TTF-EPG-NEXT_user02' X440.Y1 'Samsung_START_user02' X440.Y670 'Samsung_END_user02' } Layer 1 { Row12.Col08 'Samsung_EPGBAR_user02' } } Layout Samsung_user04 { Layer 0 { X15.Y15 'Samsung_HOUR1_' X15.Y75 'Samsung_HOUR_1' X15.Y135 'Samsung_DP' X15.Y165 'Samsung_MIN1_' X15.Y225 'Samsung_MIN_1' X15.Y300 'Samsung_LOGO' X250.Y15 'Samsung_TTF-EPG-NOW' X340.Y15 'Samsung_TTF-CHANNEL' X390.Y15 'Samsung_TTF-EPG-NEXT' X440.Y1 'Samsung_START' X440.Y670 'Samsung_END' } Layer 1 { Row12.Col08 'Samsung_EPGBAR' } Layer 2 { X1.Y1 'Samsung_BACKGROUND' } } Layout Samsung_radio { Layer 0 { X15.Y15 'Samsung_HOUR1_' X15.Y75 'Samsung_HOUR_1' X15.Y135 'Samsung_DP' X15.Y165 'Samsung_MIN1_' X15.Y225 'Samsung_MIN_1' X15.Y300 'Samsung_LOGO' X250.Y15 'Samsung_TTF-EPG-NOW' X340.Y15 'Samsung_TTF-CHANNEL' X390.Y15 'Samsung_TTF-EPG-NEXT' X440.Y1 'Samsung_START' X440.Y670 'Samsung_END' } Layer 1 { Row12.Col08 'Samsung_EPGBAR' } Layer 2 { X1.Y1 'Samsung_BACKGROUND' } } Layout Samsung_standby { layer 0 { x024.y190 'Samsung_MIN_A' X125.Y020 'Samsung_STANDBY_HOUR1_' X125.Y188 'Samsung_STANDBY_HOUR_1' X125.Y355 'Samsung_STANDBY_DP' X125.Y439 'Samsung_STANDBY_MIN1_' X125.Y607 'Samsung_STANDBY_MIN_1' } layer 1 { x024.y190 'Samsung_HOUR_A' } layer 2 { x001.y001 'Samsung_STANDBY' x015.y182 'Samsung_DIAL_A' } } # --------------------------------------------- # # --- VU SOLO 4K Internal Display (480x320) --- # # --------------------------------------------- # Display VUSolo4K_standard { driver 'vusolo4k' port '/dev/dbox/oled0' font '24x42' size '480x320' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness', 1) } Display VUSolo4K_user01 { driver 'vusolo4k' port '/dev/dbox/oled0' font '28x56' size '480x320' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness', 1) } Display VUSolo4K_user02 { driver 'vusolo4k' port '/dev/dbox/oled0' font '18x24' size '480x320' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness', 1) } Display VUSolo4K_user03 { driver 'vusolo4k' port '/dev/dbox/oled0' font '24x42' size '480x320' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness', 1) } Display VUSolo4K_user04 { driver 'vusolo4k' port '/dev/dbox/oled0' font '24x42' size '480x320' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness', 1) } Display VUSolo4K_radio { driver 'vusolo4k' port '/dev/dbox/oled0' font '24x42' size '480x320' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness', 1) } Display VUSolo4K_standby { driver 'vusolo4k' port '/dev/dbox/oled0' font '24x38' size '480x320' basecolor '000000' foreground 'ffffff' background '00000000' backlight file::readline('/tmp/lcd/brightness_standby', 1) } # --------------------------------------------------------------------------- # # --- general widgets (partly postfixed with _layout) --- # Widget VUSolo4K_LOGO { class 'Image' file file::readline('/tmp/lcd/logo', 1) update 5000 reload 1 center 1 inverted 0 scale 180 } Widget VUSolo4K_EVENT { class 'Text' expression file::readline('/tmp/lcd/event', 1) align 'PC' width 20 update 250 speed 325 foreground 'ee9a49' } Widget VUSolo4K_EVENT_user01 { class 'Text' expression file::readline('/tmp/lcd/event', 1) align 'PC' width 16 update 250 speed 325 foreground 'ee9a49' } Widget VUSolo4K_EVENT_user02 { class 'Text' expression file::readline('/tmp/lcd/event', 1) align 'PC' width 32 update 250 speed 325 foreground 'ee9a49' } Widget VUSolo4K_EVENT_user03 { class 'Text' expression file::readline('/tmp/lcd/event', 1) align 'PC' width 20 update 250 speed 325 } Widget VUSolo4K_EVENT_user04 { class 'Text' expression file::readline('/tmp/lcd/event', 1) align 'PC' width 20 update 250 speed 325 } Widget VUSolo4K_PROGRESS { class 'Bar' expression 0 expression2 file::readline('/tmp/lcd/progress', 1) min 0 max 100 length 18 update 2600 foreground '0000ff' barcolor0 '00000000' } Widget VUSolo4K_PROGRESS_user01 { class 'Bar' expression 0 expression2 file::readline('/tmp/lcd/progress', 1) min 0 max 100 length 18 update 2600 foreground '0000ff' barcolor0 '00000000' } Widget VUSolo4K_PROGRESS_user02 { class 'Bar' expression 0 expression2 file::readline('/tmp/lcd/progress', 1) min 0 max 100 length 18 update 2600 foreground '0000ff' barcolor0 '00000000' } Widget VUSolo4K_PROGRESS_user03 { class 'Bar' expression 0 expression2 file::readline('/tmp/lcd/progress', 1) min 0 max 100 length 18 update 2600 foreground '0000ff' barcolor0 '00000000' } Widget VUSolo4K_PROGRESS_user04 { class 'Bar' expression 0 expression2 file::readline('/tmp/lcd/progress', 1) min 0 max 100 length 18 update 2600 foreground '0000ff' barcolor0 '00000000' } Widget VUSolo4K_DURATION { class 'Text' expression file::readline('/tmp/lcd/duration', 1) align 'R' width 13 update 500 foreground 'ee9a49' } Widget VUSolo4K_DURATION_user01 { class 'Text' expression file::readline('/tmp/lcd/duration', 1) align 'R' width 13 update 500 foreground 'ee9a49' } Widget VUSolo4K_DURATION_user02 { class 'Text' expression file::readline('/tmp/lcd/duration', 1) align 'R' width 13 update 500 foreground 'ee9a49' } Widget VUSolo4K_DURATION_user03 { class 'Text' expression file::readline('/tmp/lcd/duration', 1) align 'R' width 13 update 500 foreground 'ee9a49' } Widget VUSolo4K_DURATION_user04 { class 'Text' expression file::readline('/tmp/lcd/duration', 1) align 'R' width 13 update 500 foreground 'ee9a49' } Widget VUSolo4K_VOLUME { class 'Bar' expression file::readline('/tmp/lcd/volume', 1) expression2 0 min 0 max 100 length 10 update 1000 barcolor1 '00000000' } Widget VUSolo4K_VOLUME_user01 { class 'Bar' expression file::readline('/tmp/lcd/volume', 1) expression2 0 min 0 max 100 length 10 update 1000 barcolor1 '00000000' } Widget VUSolo4K_VOLUME_user02 { class 'Bar' expression file::readline('/tmp/lcd/volume', 1) expression2 0 min 0 max 100 length 10 update 1000 barcolor1 '00000000' } Widget VUSolo4K_VOLUME_user03 { class 'Bar' expression file::readline('/tmp/lcd/volume', 1) expression2 0 min 0 max 100 length 10 update 1000 barcolor1 '00000000' } Widget VUSolo4K_VOLUME_user04 { class 'Bar' expression file::readline('/tmp/lcd/volume', 1) expression2 0 min 0 max 100 length 10 update 1000 barcolor1 '00000000' } Widget VUSolo4K_TIME { class 'Text' expression strftime('%H:%M', time()) align 'L' width 5 update 5000 foreground '808080' } Widget VUSolo4K_TIME_user01 { class 'Text' expression strftime('%H:%M', time()) align 'L' width 5 update 5000 foreground '808080' } Widget VUSolo4K_TIME_user02 { class 'Text' expression strftime('%H:%M', time()) align 'L' width 5 update 5000 foreground '808080' } Widget VUSolo4K_TIME_user03 { class 'Text' expression strftime('%H:%M', time()) align 'L' width 5 update 5000 } Widget VUSolo4K_TIME_user04 { class 'Text' expression strftime('%H:%M', time()) align 'L' width 5 update 5000 } # --- system-info --- # Widget VUSolo4K_CPU { class 'Text' prefix 'CPU: ' expression proc_stat::cpu('busy', 500) postfix '%' precision 1 align 'R' width 11 update 1000 foreground '808080' } Widget VUSolo4K_CPU_BAR { class 'Bar' expression proc_stat::cpu('busy', 500) min 0 max 100 length 17 style 'H' update 500 foreground '808080' } Widget VUSolo4K_RAM { class 'Text' prefix 'RAM: ' expression 100 - ((meminfo('MemFree') * 100) / meminfo('MemTotal')) postfix '%' precision 1 align 'R' width 11 update 1000 foreground '808080' } Widget VUSolo4K_MTD { class 'Text' prefix 'MTD: ' expression 100 - (statfs('/', 'bfree') * 100) / statfs('/', 'blocks') postfix '%' precision 1 align 'R' width 11 update 1000 foreground '808080' } # --- the clocks for standby-mode --- # # --- the digital clock --- # Widget VUSolo4K_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 scale 117 } Widget VUSolo4K_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 scale 117 } Widget VUSolo4K_DP { class 'Image' file file::exist(FCLOCK) == 1 ? ICONS . 'blank.png' : ICONS . 'clock/digital/dp.png' update 0 scale 117 } Widget VUSolo4K_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 scale 117 } Widget VUSolo4K_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 scale 117 } # --- the analog clock --- # Widget VUSolo4K_DIAL_A { class 'image' file file::exist(FCLOCK) == 0 ? ICONS . 'blank.png' : ICONS . 'clock/analog/dial.png' update 0 scale 210 } Widget VUSolo4K_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 scale 200 } Widget VUSolo4K_MIN_A { class 'image' file file::exist(FCLOCK) == 0 ? ICONS . 'blank.png' : ICONS . 'clock/analog/m' . strftime('%M', time()) . '.png' update 10000 reload 2 scale 200 } # --------------------------------------------------------------------------- # Layout VUSolo4K_standard { layer 0 { row04.col01 'VUSolo4K_EVENT' row05.col02 'VUSolo4K_PROGRESS' row07 { col07 'VUSolo4K_DURATION' col02 'VUSolo4K_TIME' } } layer 1 { x001.y001 'VUSolo4K_LOGO' } } Layout VUSolo4K_user01 { layer 0 { row04.col01 'VUSolo4K_EVENT_user01' row05.col01 'VUSolo4K_PROGRESS_user01' } layer 1 { x001.y001 'VUSolo4K_LOGO' } } Layout VUSolo4K_user02 { layer 0 { row08.col01 'VUSolo4K_EVENT_user02' row10.col02 'VUSolo4K_PROGRESS_user02' row12 { col02 'VUSolo4K_CPU' col15 'VUSolo4K_CPU_BAR' } row13.col02 'VUSolo4K_RAM' row14 { col02 'VUSolo4K_MTD' col27 'VUSolo4K_TIME' } } layer 1 { x001.y001 'VUSolo4K_LOGO' } } Layout VUSolo4K_user03 { layer 0 { row01.col04 'VUSolo4K_PROGRESS_user03' row05.col01 'VUSolo4K_EVENT_user03' row07 { col04 'VUSolo4K_VOLUME_user03' col15 'VUSolo4K_TIME_user03' } } layer 1 { x030.y001 'VUSolo4K_LOGO' } } Layout VUSolo4K_user04 { layer 0 { row04.col01 'VUSolo4K_EVENT' row05.col02 'VUSolo4K_PROGRESS' row07 { col07 'VUSolo4K_DURATION' col02 'VUSolo4K_TIME' } } layer 1 { x001.y001 'VUSolo4K_LOGO' } } Layout VUSolo4K_radio { layer 0 { row04.col01 'VUSolo4K_EVENT' row05.col02 'VUSolo4K_PROGRESS' row07 { col07 'VUSolo4K_DURATION' col02 'VUSolo4K_TIME' } } layer 1 { x001.y001 'VUSolo4K_LOGO' } } Layout VUSolo4K_standby { layer 0 { x010.y090 'VUSolo4K_MIN_A' X074.Y010 'VUSolo4K_HOUR1_' X074.Y080 'VUSolo4K_HOUR_1' X074.Y143 'VUSolo4K_DP' X074.Y170 'VUSolo4K_MIN1_' X074.Y240 'VUSolo4K_MIN_1' } layer 1 { x010.y090 'VUSolo4K_HOUR_A' } layer 2 { x001.y82 'VUSolo4K_DIAL_A' } } # ------------------------ # # --- General Settings --- # # ------------------------ # Variables { ICONS '/var/tuxbox/lcd/icons/' SYSICONS '/usr/share/tuxbox/neutrino/icons/' FCLOCK '/var/etc/.lcd-clock_a' } Display file::readline('/tmp/lcd/layout', 1) Layout file::readline('/tmp/lcd/layout', 1)