pub trait GenericPlugin:
Send
+ Sync
+ Sized {
// Required methods
fn new(info: AviUtl2Info) -> AnyResult<Self>;
fn plugin_info(&self) -> GenericPluginTable;
fn register(&mut self, registry: &mut HostAppHandle<'_>);
// Provided methods
fn on_project_load(&mut self, project: &mut ProjectFile<'_>) { ... }
fn on_project_save(&mut self, project: &mut ProjectFile<'_>) { ... }
fn on_clear_cache(&mut self, edit_section: &EditSection) { ... }
fn event_update_object_info(&mut self) { ... }
fn event_change_edit_frame(&mut self) { ... }
fn event_change_scene_info(&mut self) { ... }
fn event_change_focus_object(&mut self) { ... }
fn with_instance<R>(f: impl FnOnce(&Self) -> R) -> R
where Self: GenericSingleton { ... }
fn with_instance_mut<R>(f: impl FnOnce(&mut Self) -> R) -> R
where Self: GenericSingleton { ... }
}Available on crate feature
generic only.Expand description
汎用プラグインのトレイト。
このトレイトを実装し、crate::register_generic_plugin! マクロを使用してプラグインを登録します。
Required Methods§
Sourcefn new(info: AviUtl2Info) -> AnyResult<Self>
fn new(info: AviUtl2Info) -> AnyResult<Self>
プラグインを初期化する。
Sourcefn plugin_info(&self) -> GenericPluginTable
fn plugin_info(&self) -> GenericPluginTable
プラグインの情報を返す。
Sourcefn register(&mut self, registry: &mut HostAppHandle<'_>)
fn register(&mut self, registry: &mut HostAppHandle<'_>)
プラグインをホストに登録する。
Provided Methods§
Sourcefn on_project_load(&mut self, project: &mut ProjectFile<'_>)
fn on_project_load(&mut self, project: &mut ProjectFile<'_>)
プロジェクトファイルのロードを処理する。
プロジェクトの初期化時にも呼ばれます。
Sourcefn on_project_save(&mut self, project: &mut ProjectFile<'_>)
fn on_project_save(&mut self, project: &mut ProjectFile<'_>)
プロジェクトファイルをセーブする直前に呼ばれる。
Sourcefn on_clear_cache(&mut self, edit_section: &EditSection)
fn on_clear_cache(&mut self, edit_section: &EditSection)
「キャッシュを破棄」が呼ばれたときに呼ばれる。
Sourcefn event_update_object_info(&mut self)
fn event_update_object_info(&mut self)
オブジェクト情報が更新されたときに呼ばれる。
§Note
イベント用スレッドから呼び出されます。crate::generic::EditHandle::call_edit_sectionは利用できません。
Sourcefn event_change_edit_frame(&mut self)
fn event_change_edit_frame(&mut self)
Sourcefn event_change_scene_info(&mut self)
fn event_change_scene_info(&mut self)
シーンを移動、またはシーン情報を変更したときに呼ばれる。
§Note
イベント用スレッドから呼び出されます。crate::generic::EditHandle::call_edit_sectionは利用できません。
Sourcefn event_change_focus_object(&mut self)
fn event_change_focus_object(&mut self)
選択されているオブジェクトが変更されたときに呼ばれる。
§Note
イベント用スレッドから呼び出されます。crate::generic::EditHandle::call_edit_sectionは利用できません。
Sourcefn with_instance<R>(f: impl FnOnce(&Self) -> R) -> Rwhere
Self: GenericSingleton,
fn with_instance<R>(f: impl FnOnce(&Self) -> R) -> Rwhere
Self: GenericSingleton,
Sourcefn with_instance_mut<R>(f: impl FnOnce(&mut Self) -> R) -> Rwhere
Self: GenericSingleton,
fn with_instance_mut<R>(f: impl FnOnce(&mut Self) -> R) -> Rwhere
Self: GenericSingleton,
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".