Release r359 adds a few missing methods for 3rd party plugins that need to preview timeline changes in the layout view. They are as follows:
The editor SDK class, that's the object that exists in the SDK.Plugins."YOUR_PLUGIN_NAME".Instance namespace needs to implement the new OnTimelinePropertyChanged(id, value, detail) method which is pretty much the same as OnPropertyChanged(id, value), but it is called when a timeline is previewing changes. A brief description of the arguments:
- "id" => The id of the property that is changing.
- "value" => The value that is being applied by the timeline.
- "detail" => an object with details about the value. It has a "resultMode" property with a value of either "absolute" or "relative".
In that function the plugin needs to update the corresponding internal state, namely using the new GetTimelinePropertyValue(id) method from IObjectInstance which gets the value of a property with any changes a timeline might be applying to it. After the internal state is updated refresh the layout view to view the changes.
Lastly, the plugin must implement the new method OnExitTimelineEditMode() which is called when timeline edit mode is turned off. In this method the plugin's internal state should be updated again so any timeline changes from the preview are reset. Using GetPropertyValue(id) to get values without timeline changes, applying those to the relevant internal variables of the plugin and refreshing the layout view should be enough.
I hope this is useful to somebody else other than Mikal (I doubt it :D)