widgets (example config files)¶
Machine config examples¶
Here are some example machine-wide config files that show real-world examples of how these configs are used.
#config_version=5
modes:
- mode1
displays:
default:
width: 800
height: 600
widgets:
widget1:
type: text
text: widget1
color: ffff00
font_size: 100
y: top-40%
widget2:
- type: text
text: widget2
y: 50
color: ff0000
font_size: 100
widget3:
- type: text
text: widget3.1
color: ff0000
font_size: 100
- type: text
text: widget3.2
color: 00ff66
font_size: 100
- type: text
text: widget3.3
color: ff00ff
font_size: 100
widget4:
- type: text
text: widget4.1
y: 300
z: 1
color: ff0000
font_size: 100
- type: text
text: widget4.2
z: 1000
y: 250
color: ffff00
font_size: 100
- type: text
text: widget4.3
y: 200
color: 00ff00
font_size: 100
- type: text
text: widget4.4
z: 1
y: 150
color: 00ffff
font_size: 100
- type: text
text: widget4.5
z: 1000
y: 100
color: 0000ff
font_size: 100
- type: text
text: widget4.6
color: ff00ff
font_size: 100
y: 50
- type: text
text: widget4.7
y: 0
color: 888888
font_size: 100
widget5:
type: text
text: widget5
z: 200
y: 150
font_size: 100
widget6:
type: text
text: widget6
z: 100
color: 774303
font_size: 100
widget7:
type: text
text: EXPIRES 1S (player|test)
color: orange
font_size: 100
expire: 1s
animations:
test_event:
- property: rotation
value: 360
duration: .5s
widget8:
type: text
text: WIDGET 8
color: orange
font_size: 100
box11:
- type: text
text: box11
box12:
- type: text
text: box12
box13:
- type: text
text: box13
box14:
- type: text
text: box14
widget9:
- type: text
text: named_widget9
key: widget9_key
widget10:
type: text
text: (text)
widget_bezier:
- type: bezier
points: 400, 300, 100, 100, 400, 0
color: red
thickness: 5
animations:
add_to_slide:
- property: color, points
value: 0, 1, 0, 1, 200, 200, 50, 100, 100, 250
duration: 2s
- property: rotation
value: -300
duration: 2s
timing: with_previous
- property: color
value: 0, 0, 1, 1
duration: 1s
- property: color
value: 1, 1, 0, 1
duration: 1s
widget_ellipse:
- type: ellipse
width: 200
height: 100
angle_end: 0
color: magenta
opacity: 0.5
animations:
add_to_slide:
- property: pos
value: 100, 100
relative: true
duration: 2s
- property: rotation
value: 360
duration: 2s
timing: with_previous
widget_quad:
- type: quad
points: 300, 100, 350, 200, 500, 150, 450, 50
color: cornflowerblue
animations:
add_to_slide:
- property: points
value: 50, -50, -50, 50, 50, -50, -50, 50
duration: 1.5
relative: true
- property: rotation, scale
value: -720, -0.9
relative: true
duration: 1.5s
timing: with_previous
- property: points
value: -50, 50, 50, -50, -50, 50, 50, -50
duration: 1.5
relative: true
- property: rotation, scale
value: 720, 0.9
relative: true
duration: 1.5s
timing: with_previous
widget_rectangle:
- type: rectangle
x: 600
y: 300
width: 100
height: 200
color: gold
animations:
add_to_slide:
- property: rotation, scale, corner_radius
value: 540, 0.5, 50
duration: 1.5s
- property: scale
value: 0.5
duration: 1.0s
- property: rotation, scale, corner_radius
value: 0, 1.0, 0
duration: 1.5s
widget_line:
- type: line
points: 200, 50, 600, 50
thickness: 10
color: darkcyan
animations:
add_to_slide:
- property: rotation, scale
value: 360, 1.5
duration: 3s
widget_triangle:
- type: triangle
points: 100, 450, 100, 550, 200, 450
color: lawngreen
animations:
add_to_slide:
- property: rotation, scale
value: -900, 1.5
duration: 3s
easing: in_quint
widget_points:
- type: points
points: 100, 450, 100, 550, 200, 450
pointsize: 2
color: deeppink
animations:
add_to_slide:
- property: rotation, scale, pointsize
value: 900, 1.5, 8
duration: 3s
easing: in_quint
widget_text:
- type: text
text: TEST
font_size: 50
bold: true
color: lightyellow
animations:
add_to_slide:
- property: rotation, scale
value: 45, 1.5
duration: 2s
easing: in_quint
- property: scale
value: 0.75
duration: 1s
easing: out_quint
widget_reusable:
- type: text
text: Reusable Widget
widget_placeholder_value1:
- type: text
text: Value One
widget_placeholder_value2:
- type: text
text: Value Two
widget_player:
add_widget1_to_current: widget1
add_widget2_to_current: widget2
add_widget2_to_slide1:
widget2:
slide: slide1
update_widget2:
widget2:
action: update
slide: slide1
remove_widget2:
widget2:
action: remove
add_widget6:
widget6:
widget_settings:
z: -1
remove_widget1_by_key:
widget1:
action: remove
key: widget1
remove_widget1:
widget1:
action: remove
add_widget7: widget7
add_widget8_expire:
widget8:
widget_settings:
expire: 1s
add_widget8_expire_parent:
widget8:
widget_settings:
expire: 1s
z: -1
add_widget8_custom_settings:
widget8:
widget_settings:
color: red
font_size: 70
x: right-10
anchor_x: right
add_widget8_opacity_50:
widget8:
widget_settings:
opacity: .5
text: 50% OPACITY
font_size: 50
widget1:
action: add
event_a:
widget1:
action: update
widget_settings:
text: A
color: red
event_s:
widget1:
action: update
widget_settings:
text: S
color: lime
event_d:
widget1:
action: update
widget_settings:
text: D
color: blue
widget_4up:
box14:
widget_settings:
x: 25
expire: 6s
box13:
widget_settings:
x: 105
expire: 6s
box12:
widget_settings:
x: 185
expire: 6s
box11:
widget_settings:
x: 265
expire: 6s
widget_4up_red:
box14:
widget_settings:
color: red
box13:
widget_settings:
color: red
box12:
widget_settings:
color: red
box11:
widget_settings:
color: red
widget_to_parent:
box11:
widget_settings:
z: -1
box12:
widget_settings:
z: 2
color: red
y: middle+2
show_christmas_slide_full:
widget2:
widget_settings:
expire: 5s
slide: slide1
key: xmas_intro_keyname
remove_christmas_full:
widget2:
action: remove
key: xmas_intro_keyname
show_widget9:
widget9:
key: wigdet9_wp_key
show_widget10:
widget10:
action: add
show_bezier_widget: widget_bezier
show_ellipse_widget: widget_ellipse
show_quad_widget: widget_quad
show_rectangle_widget: widget_rectangle
show_line_widget: widget_line
show_triangle_widget: widget_triangle
show_points_widget: widget_points
show_text_widget: widget_text
slide_player:
show_slide_1:
slide_1:
- type: text
text: WIDGET WITH KEY
key: widget1
color: red
y: 33%
- type: text
text: WIDGET NO KEY
color: red
y: 66%
show_slide_1_with_expire:
slide_1:
- type: text
text: WIDGET EXPIRE 1s
expire: 1s
color: red
y: 33%
- type: text
text: WIDGET NO EXPIRE
color: red
y: 66%
show_slide_2:
slide_2:
- type: text
text: TEST UPDATING EXISTING WIDGET SETTINGS
y: bottom
anchor_y: bottom
show_slide_3:
slide_3:
widgets:
- type: text
text: WIDGET REPLACEMENT
y: 25%
show_slide_with_widgets:
slide_1:
- type: text
text: widget4.1
y: 300
z: 1
color: ff0000
font_size: 100
- type: text
text: widget4.2
z: 1000
y: 250
color: ffff00
font_size: 100
- type: text
text: widget4.3
y: 200
color: 00ff00
font_size: 100
- type: text
text: widget4.4
z: 1
y: 150
color: 00ffff
font_size: 100
- type: text
text: widget4.5
z: 1000
y: 100
color: 0000ff
font_size: 100
- type: text
text: widget4.6
color: ff00ff
font_size: 100
y: 50
- type: text
text: widget4.7
y: 0
color: 888888
font_size: 100
show_slide_with_lots_of_widgets: slide_with_lots_of_widgets
show_new_slide:
new_slide2:
widgets:
- type: text
text: NEW SLIDE
y: 0
anchor_y: bottom
slides:
slide_with_lots_of_widgets:
- type: text
text: widget4.1
y: 300
z: 1
color: ff0000
font_size: 100
- type: text
text: widget4.2
z: 1000
y: 250
color: ffff00
font_size: 100
- type: text
text: widget4.3
y: 200
color: 00ff00
font_size: 100
- type: text
text: widget4.4
z: 1
y: 150
color: 00ffff
font_size: 100
- type: text
text: widget4.5
z: 1000
y: 100
color: 0000ff
font_size: 100
- type: text
text: widget4.6
color: ff00ff
font_size: 100
y: 50
- type: text
text: widget4.7
y: 0
color: 888888
font_size: 100
Mode config examples¶
Here are some example mode config files that go along with the machine-wide config above.
#config_version=5
mode:
priority: 500
widget_player:
mode1_add_widgets: widget2
mode1_add_widget6:
widget6:
widget_settings:
z: -1
mode1_add_widget_with_key:
widget2:
key: newton_crosby
mode1_update_widget2:
widget2:
action: update
key: newton_crosby
widget_settings:
text: UPDATED TEXT
show_widget_with_placeholder: widget_with_placeholder
widgets:
widget_with_placeholder:
- type: text
text: Placeholder widget
- widget: widget_placeholder_(value)
slide_player:
show_slide_with_named_widget: slide_with_named_widget
slides:
slide_with_named_widget:
- type: text
text: One Use Widget
- widget: widget_reusable