#[repr(C)]pub struct HOST_APP_TABLE {Show 29 fields
pub set_plugin_information: unsafe extern "C" fn(information: LPCWSTR),
pub register_input_plugin: unsafe extern "C" fn(input_plugin_table: *mut INPUT_PLUGIN_TABLE),
pub register_output_plugin: unsafe extern "C" fn(output_plugin_table: *mut OUTPUT_PLUGIN_TABLE),
pub register_filter_plugin: unsafe extern "C" fn(filter_plugin_table: *mut FILTER_PLUGIN_TABLE),
pub register_script_module: unsafe extern "C" fn(script_module_table: *mut SCRIPT_MODULE_TABLE),
pub register_import_menu: unsafe extern "C" fn(name: LPCWSTR, func_proc_import: unsafe extern "C" fn(*mut EDIT_SECTION)),
pub register_export_menu: unsafe extern "C" fn(name: LPCWSTR, func_proc_export: unsafe extern "C" fn(*mut EDIT_SECTION)),
pub register_window_client: unsafe extern "C" fn(name: LPCWSTR, hwnd: HWND),
pub create_edit_handle: unsafe extern "C" fn() -> *mut EDIT_HANDLE,
pub register_project_load_handler: unsafe extern "C" fn(func_project_load: unsafe extern "C" fn(*mut PROJECT_FILE)),
pub register_project_save_handler: unsafe extern "C" fn(func_project_save: unsafe extern "C" fn(*mut PROJECT_FILE)),
pub register_layer_menu: unsafe extern "C" fn(name: LPCWSTR, func_proc_layer_menu: unsafe extern "C" fn(*mut EDIT_SECTION)),
pub register_object_menu: unsafe extern "C" fn(name: LPCWSTR, func_proc_object_menu: unsafe extern "C" fn(*mut EDIT_SECTION)),
pub register_config_menu: unsafe extern "C" fn(name: LPCWSTR, func_config: unsafe extern "C" fn(HWND, HINSTANCE)),
pub register_edit_menu: unsafe extern "C" fn(name: LPCWSTR, func_proc_edit_menu: unsafe extern "C" fn(*mut EDIT_SECTION)),
pub register_clear_cache_handler: unsafe extern "C" fn(func_proc_clear_cache: unsafe extern "C" fn(*mut EDIT_SECTION)),
pub register_change_scene_handler: unsafe extern "C" fn(func_proc_change_scene: unsafe extern "C" fn(*mut EDIT_SECTION)),
pub register_import_menu_param: unsafe extern "C" fn(name: LPCWSTR, param: *mut c_void, func_proc_import: unsafe extern "C" fn(param: *mut c_void)),
pub register_export_menu_param: unsafe extern "C" fn(name: LPCWSTR, param: *mut c_void, func_proc_export: unsafe extern "C" fn(param: *mut c_void)),
pub register_layer_menu_param: unsafe extern "C" fn(name: LPCWSTR, param: *mut c_void, func_proc_layer_menu: unsafe extern "C" fn(param: *mut c_void)),
pub register_object_menu_param: unsafe extern "C" fn(name: LPCWSTR, param: *mut c_void, func_proc_object_menu: unsafe extern "C" fn(param: *mut c_void)),
pub register_edit_menu_param: unsafe extern "C" fn(name: LPCWSTR, param: *mut c_void, func_proc_edit_menu: unsafe extern "C" fn(param: *mut c_void)),
pub register_file_drop_handler: unsafe extern "C" fn(name: LPCWSTR, filefilter: LPCWSTR, func_proc_file_drop: unsafe extern "C" fn(edit_section: *mut EDIT_SECTION, file: LPCWSTR)),
pub register_file_drop_param_handler: unsafe extern "C" fn(name: LPCWSTR, filefilter: LPCWSTR, param: *mut c_void, func_proc_file_drop: unsafe extern "C" fn(param: *mut c_void, file: LPCWSTR)),
pub register_object_item_menu: unsafe extern "C" fn(name: LPCWSTR, allow_effect_only: bool, func_proc_item_menu: unsafe extern "C" fn(edit: *mut EDIT_SECTION, object: OBJECT_HANDLE, effect: LPCWSTR, item: LPCWSTR)),
pub register_object_item_menu_param: unsafe extern "C" fn(name: LPCWSTR, allow_effect_only: bool, param: *mut c_void, func_proc_item_menu: unsafe extern "C" fn(param: *mut c_void, object: OBJECT_HANDLE, effect: LPCWSTR, item: LPCWSTR)),
pub register_script_module_name: unsafe extern "C" fn(script_module_table: *mut SCRIPT_MODULE_TABLE, module_name: LPCWSTR),
pub register_font_collection: unsafe extern "C" fn(collection: *mut c_void),
pub register_event_listener: unsafe extern "C" fn(type: EVENT_TYPE, param: *mut c_void, func_proc_event: unsafe extern "C" fn(param: *mut c_void)),
}Expand description
ホストアプリケーション構造体
Fields§
§set_plugin_information: unsafe extern "C" fn(information: LPCWSTR)現在はGetCommonPluginTable()を利用する方法が推奨になります
プラグインの情報を設定する information : プラグインの情報
register_input_plugin: unsafe extern "C" fn(input_plugin_table: *mut INPUT_PLUGIN_TABLE)入力プラグインを登録する input_plugin_table : 入力プラグイン構造体
register_output_plugin: unsafe extern "C" fn(output_plugin_table: *mut OUTPUT_PLUGIN_TABLE)出力プラグインを登録する output_plugin_table : 出力プラグイン構造体
register_filter_plugin: unsafe extern "C" fn(filter_plugin_table: *mut FILTER_PLUGIN_TABLE)フィルタプラグインを登録する filter_plugin_table : フィルタプラグイン構造体
register_script_module: unsafe extern "C" fn(script_module_table: *mut SCRIPT_MODULE_TABLE)スクリプトモジュールを登録する script_module_table : スクリプトモジュール構造体
インポートメニューを登録する name : インポートメニューの名称 func_proc_import : インポートメニュー選択時のコールバック関数
エクスポートメニューを登録する name : エクスポートメニューの名称 func_proc_export : エクスポートメニュー選択時のコールバック関数
register_window_client: unsafe extern "C" fn(name: LPCWSTR, hwnd: HWND)ウィンドウクライアントを登録する name : ウィンドウの名称 hwnd : ウィンドウハンドル ウィンドウにはWS_CHILDが追加され親ウィンドウが設定されます ※WS_POPUPは削除されます
create_edit_handle: unsafe extern "C" fn() -> *mut EDIT_HANDLEプロジェクトデータ編集用のハンドルを取得します 戻り値 : 編集ハンドル
register_project_load_handler: unsafe extern "C" fn(func_project_load: unsafe extern "C" fn(*mut PROJECT_FILE))プロジェクトファイルをロードした直後に呼ばれる関数を登録する ※プロジェクトの初期化時にも呼ばれます func_project_load : プロジェクトファイルのロード時のコールバック関数
register_project_save_handler: unsafe extern "C" fn(func_project_save: unsafe extern "C" fn(*mut PROJECT_FILE))プロジェクトファイルをセーブする直前に呼ばれる関数を登録する func_project_save : プロジェクトファイルのセーブ時のコールバック関数
レイヤーメニューを登録する (レイヤー編集でオブジェクト未選択時の右クリックメニューに追加されます) name : レイヤーメニューの名称 func_proc_layer_menu : レイヤーメニュー選択時のコールバック関数
オブジェクトメニューを登録する (レイヤー編集でオブジェクト選択時の右クリックメニューに追加されます) name : オブジェクトメニューの名称 func_proc_object_menu : オブジェクトメニュー選択時のコールバック関数
設定メニューを登録する 設定メニューの登録後にウィンドウクライアントを登録するとシステムメニューに「設定」が追加されます name : 設定メニューの名称 func_config : 設定メニュー選択時のコールバック関数
編集メニューを登録する name : 編集メニューの名称 ※名称に’'を入れると表示を階層に出来ます func_proc_edit_menu : 編集メニュー選択時のコールバック関数
register_clear_cache_handler: unsafe extern "C" fn(func_proc_clear_cache: unsafe extern "C" fn(*mut EDIT_SECTION))キャッシュを破棄の操作時に呼ばれる関数を登録する func_proc_clear_cache : キャッシュの破棄時のコールバック関数
register_change_scene_handler: unsafe extern "C" fn(func_proc_change_scene: unsafe extern "C" fn(*mut EDIT_SECTION))シーンを変更した直後に呼ばれる関数を登録する ※シーンの設定情報が更新された時にも呼ばれます func_proc_change_scene : シーン変更時のコールバック関数
インポートメニューを登録する (ウィンドウメニューのファイルに追加されます) 引数paramを渡して編集セクションにしないでコールバックを呼び出します name : インポートメニューの名称 param : 任意のユーザーデータのポインタ func_proc_import : インポートメニュー選択時のコールバック関数
エクスポートメニューを登録する (ウィンドウメニューのファイルに追加されます) 引数paramを渡して編集セクションにしないでコールバックを呼び出します name : エクスポートメニューの名称 param : 任意のユーザーデータのポインタ func_proc_export : エクスポートメニュー選択時のコールバック関数
レイヤーメニューを登録する (レイヤー編集でオブジェクト未選択時の右クリックメニューに追加されます) 引数paramを渡して編集セクションにしないでコールバックを呼び出します name : レイヤーメニューの名称 param : 任意のユーザーデータのポインタ func_proc_layer_menu : レイヤーメニュー選択時のコールバック関数
オブジェクトメニューを登録する (レイヤー編集でオブジェクト選択時の右クリックメニューに追加されます) 引数paramを渡して編集セクションにしないでコールバックを呼び出します name : オブジェクトメニューの名称 param : 任意のユーザーデータのポインタ func_proc_object_menu : オブジェクトメニュー選択時のコールバック関数
編集メニューを登録する 引数paramを渡して編集セクションにしないでコールバックを呼び出します name : 編集メニューの名称 ※名称に’'を入れると表示を階層に出来ます param : 任意のユーザーデータのポインタ func_proc_edit_menu : 編集メニュー選択時のコールバック関数
register_file_drop_handler: unsafe extern "C" fn(name: LPCWSTR, filefilter: LPCWSTR, func_proc_file_drop: unsafe extern "C" fn(edit_section: *mut EDIT_SECTION, file: LPCWSTR))ファイルをD&Dした時に呼ばれる関数を登録する name : ドラッグ時のツールチップや入力プラグインの設定で表示する名称 filefilter : D&Dに対応するファイルフィルタ func_proc_file_drop : ファイルをD&Dした時のコールバック関数
register_file_drop_param_handler: unsafe extern "C" fn(name: LPCWSTR, filefilter: LPCWSTR, param: *mut c_void, func_proc_file_drop: unsafe extern "C" fn(param: *mut c_void, file: LPCWSTR))ファイルをD&Dした時に呼ばれる関数を登録する 引数paramを渡して編集セクションにしないでコールバックを呼び出します name : ドラッグ時のツールチップや入力プラグインの設定で表示する名称 filefilter : D&Dに対応するファイルフィルタ func_proc_file_drop : ファイルをD&Dした時のコールバック関数
オブジェクト編集の設定項目メニューを登録する (オブジェクト編集の右クリックメニューに追加されます) name : 設定項目メニューの名称 allow_effect_only : エフェクトのみを許可するか? ※trueの場合はitemがnullptrで呼ばれるケースを許可します func_proc_item_menu : 設定項目メニュー選択時のコールバック関数 ※コールバック関数の引数はget_object_item_value()の引数と同じ形式になります
オブジェクト編集の設定項目メニューを登録する (オブジェクト編集の右クリックメニューに追加されます) 引数paramを渡して編集セクションにしないでコールバックを呼び出します name : 設定項目メニューの名称 allow_effect_only : エフェクトのみを許可するか? ※trueの場合はitemがnullptrで呼ばれるケースを許可します param : 任意のユーザーデータのポインタ func_proc_item_menu : 設定項目メニュー選択時のコールバック関数 ※コールバック関数の引数はget_object_item_value()の引数と同じ形式になります
register_script_module_name: unsafe extern "C" fn(script_module_table: *mut SCRIPT_MODULE_TABLE, module_name: LPCWSTR)スクリプトモジュールをモジュール名を指定して登録する script_module_table : スクリプトモジュール構造体 module_name : モジュール名
register_font_collection: unsafe extern "C" fn(collection: *mut c_void)フォントコレクションを登録する collection : フォントコレクション (IDWriteFontCollectionのポインタ)
register_event_listener: unsafe extern "C" fn(type: EVENT_TYPE, param: *mut c_void, func_proc_event: unsafe extern "C" fn(param: *mut c_void))指定のイベントのコールバック関数を登録する