Image Widget

This widget is available on graphic displays only!

The image widget allows you to place a individual image on your display. At the moment only PNG files are supported, but with full color and transparency!

The definition of a image widget looks like this:

Widget myImage {
    class    'Image'
    file     <string>
    update   <number>
    reload   <0|1>
    visible  <0|1>
    inverted <0|1>

filepath to the PNG file
updateupdate interval (msec), use 0 (zero) for static images
reloadexpression controlling image reloading on update
visibleexpression controlling the visibility (for blinking effects)
invertedexpression controlling the inversion (for displays that draw white pixels on dark background)

The image widget is not placed on a row/column basis, but with true pixel resolution. Therefore the layout section looks a bit different:

Layout TestImage {
    Row1 {
	Col1  'OS'
    Layer 2 {
	X1.Y1 'ImageTest'

Note that using an extra layer for images may be very useful!

Widget ImageTest {
    class 'Image'
    file '/home/michi/avatar.png'
    update 1000
    visible 1
    inverted 0

Layout Avatar {
    X1.Y1 'ImageTest'

When the reload property evaluates to zero, the image file will not be reloaded at image update, so only the visible and inverted properties will change the display. If you want to reload the image every time (maybe because the image may change), set the reload property to 1.

You can specify an expression for visible, which will be evaluated every time the image is updated (every update msec). If the expression evaluates to 0 (zero), the image is invisible, and will be replaced by blank (transparent) pixels. If the result is not zero, the image will be displayed. This is useful for blinking effects, or activity display.

  • widget_image.txt
  • Last modified: 2020/07/17 18:33
  • (external edit)