The approach is good. :) Just a few minor things I would change:
- When UpdateDivider=-1, the measure does update once when the skin is loaded, so you don't need to [!UpdateMeasure MeasureWallpaper].
- You do need to set DynamicVariables=1 on the Calc measure in order to set the wallpaper to a measure value.
Code: Select all
[Rainmeter]
[MeasureWallpaper]
Measure=Plugin
Plugin=QuotePlugin
PathName=[path to wallpaper folder]
FileFilter=*.bmp;*.gif;*.jpg;*.png;*.tiff
UpdateDivider=-1
[WallCounter]
Measure=Calc
Formula=1
IfEqualValue=1
IfEqualAction=!SetWallpaper "[MeasureWallpaper]"
UpdateDivider=-1
DynamicVariables=1
[DummyMeter]
Meter=String
Also, you may already know this, but for anyone who doesn't: normally, you can use
OnRefreshAction to trigger an action when the skin is loaded. The reason you can't do that here is because the action includes a dynamic variable, which can only be used in a meter or measure, not the [Rainmeter] section.
EDIT: I was actually wrong about that. Using the measure value in OnRefreshAction appears to work, even though I'm not sure it's supposed to. That means the following would work, as well:
Code: Select all
[Rainmeter]
OnRefreshAction=!SetWallpaper "[MeasureWallpaper]"
[MeasureWallpaper]
Measure=Plugin
Plugin=QuotePlugin
PathName=[path to wallpaper folder]
FileFilter=*.bmp;*.gif;*.jpg;*.png;*.tiff
UpdateDivider=-1
[DummyMeter]
Meter=String