ActionTimer
Posted: June 1st, 2015, 4:25 pm
ActionTimer.dll
NOTE: As of the Rainmeter 3.3 r2493 beta of December 27, 2015, ActionTimer is included in the Rainmeter distribution, and there is no need to download, install, or distribute ActionTimer. ActionTimer just comes with Rainmeter.
ActionTimer is a plugin that can execute a series of Rainmeter actions independent of the normal skin Update cycle. This can allow the series of actions to be executed faster (or slower) than the rate defined in Update in [Rainmeter] and can be executed as fast as 1 millisecond apart.
Plugin Options:
Commands are sent to the plugin using [!CommandMeasure MeasureName "Command"]
Examples
The following is a .rmskin which will install several example skins demonstrating its use.
For any changes and additions, check the official Rainmeter documentation here: https://docs.rainmeter.net/manual-beta/plugins/actiontimer/
Known Issues
Care should be taken when executing actions back to back. Some sort of a wait, (ie. Wait 1) should be used in between each action.
For example:
The reason for adding an extra 'Wait' between actions is give Rainmeter a chance to perform other important functions without blocking.
-Brian
NOTE: As of the Rainmeter 3.3 r2493 beta of December 27, 2015, ActionTimer is included in the Rainmeter distribution, and there is no need to download, install, or distribute ActionTimer. ActionTimer just comes with Rainmeter.
ActionTimer is a plugin that can execute a series of Rainmeter actions independent of the normal skin Update cycle. This can allow the series of actions to be executed faster (or slower) than the rate defined in Update in [Rainmeter] and can be executed as fast as 1 millisecond apart.
Plugin Options:
- ActionList(N)
A numbered option, starting with ActionList1. For example ActionList1, ActionList2 ... ActionListN
ActionListN is a list of plugin actions, separated by the pipe | character, that will be executed in order.
Wait (N)
Between each action in ActionListN, a Wait value is inserted, to tell the plugin how many milliseconds to wait before executing the next action in the list. Wait can be set to any positive integer value.
Repeat (Action), (N0), (N1) (as of version 0.1.0.6)
This will perform Action followed by a wait of time N0, and repeat N1 times.
Example: ActionList1=... | Repeat SomeAction, 5, 10 | ...
In the above example, once the list hits the 'Repeat' command, it will repeat 'SomeAction' 10 times with a wait of 5 milliseconds between each action.
Note: This does not apply a 'Wait' after the last command. So the amount of 'Waits' will be the same as Actions minus 1.
- Actions
The plugin action options, with any name and in any order, that will be executed by the ActionListN.
Example:When ActionList1 is executed, perform the SetFontSmall action, then wait for 2 milliseconds, and perform the SetFontBig action.Code: Select all
ActionList1=SetFontSmall|Wait 2|SetFontBig SetFontSmall=[!SetOption SomeMeter FontSize "10"][!UpdateMeter SomeMeter][!Redraw] SetFontBig=[!SetOption SomeMeter FontSize "15"][!UpdateMeter SomeMeter][!Redraw]
- IgnoreWarnings (0/1 Default 0)
Any ActionListN must completely finish all actions in the list before it can be executed again. Any command to execute the list while it is still performing actions will be ignored, and a warning message will be generated in the log.
If IgnoreWarnings=1, then the warning messages in the log will be suppressed.
Commands are sent to the plugin using [!CommandMeasure MeasureName "Command"]
- Execute (N)
The number of the ActionListN to execute.
Example:
LeftMouseUpAction=[!CommandMeasure SomeMeasure "Execute 1"]
- Stop (N)
The number of the ActionListN to stop.
As noted above, Any ActionListN must completely finish all actions in the list before it can be executed again. Any command to execute the list while it is still performing actions will be ignored, and a warning message will be generated in the log.
The Stop N command will immediately terminate and reset the currently running ActionListN, so it may be executed again.
Example:
LeftMouseUpAction=[!CommandMeasure SomeMeasure "Stop 1"][!CommandMeasure SomeMeasure "Execute 1"]
Examples
The following is a .rmskin which will install several example skins demonstrating its use.
For any changes and additions, check the official Rainmeter documentation here: https://docs.rainmeter.net/manual-beta/plugins/actiontimer/
Known Issues
Care should be taken when executing actions back to back. Some sort of a wait, (ie. Wait 1) should be used in between each action.
For example:
Code: Select all
;Don't do this:
ActionList1=Something1|Something2|Wait 10|Something3
Something1=...
Something2=...
Something3=...
;Do this instead:
ActionList1=Something1|Wait 1|Something2|Wait 10|Something3
Something1=...
Something2=...
Something3=...
-Brian