/
Custom Fileブラウザを使用する

Custom Fileブラウザを使用する

ユーザーは、Atomsファイルを参照する際に、自分のカスタムファイルブラウザを使用することができます。これにより、異なるパイプラインが独自のinternal DBブラウザを使用することができます。新しいブラウザコールバックを登録する場合は、Atoms.ui.utils.qt.open_file_browser methodをオーバーライドします。

ブラウザコールバックの引数は、以下のとおりです。

  • parent:parent widget
  • title:Atomsによって、要求されたブラウザのタイトル
  • dir:現在のディレクトリ
  • filter:ファイルフィルタ
  • directory_mode:trueの場合、ディレクトリを参照します。
  • save_mode:trueの場合、ファイルを保存します。
  • hint:この文字列は、ユーザーが実行している特定のタスクに関する情報を提供します。

hint引数に指定できる値は、次のとおりです。

  • load_state_machine_json, save_state_machine_json (State machine)
  • load_animation_clip_script, save_animation_clip_script (Animation clips)
  • load_agent_type_script, save_agent_type_script (Agent types)
  • load_behaviour_module_script, save_behaviour_module_script (Behaviour modules)
  • load_simulation_event_script, save_simulation_event_script (Simulation events)
  • load_variation, save_variation, merge_variation (Variation json)
  • material (load_only), texture (load_only), atoms_geo (load_only) (Variation elements)
  • cloth_setup (load_only) (Cloth setup)
  • atoms_cache_path (load_only) (Atoms cache)
  • atoms (load_only) (Skeleton config map)



Example

from Atoms.ui.utils.qthandler import QtGui, QtCore, QtWidgets
import Atoms.ui.utils.qt

def my_open_file_browser(parent, title, dir="", filter="*", directory_mode=False, save_mode=False, hint=None):
    fn = None
    if directory_mode:
        if save_mode:
            fn = QtWidgets.QFileDialog.getExistingDirectory(parent, "MY_BROWSER " + title, dir)
        else:
            fn = QtWidgets.QFileDialog.getExistingDirectory(parent, "MY_BROWSER " + title, dir)
    else:
        if save_mode:
            fn =  QtWidgets.QFileDialog.getSaveFileName(parent, "MY_BROWSER " + title, dir, filter)
        else:
            fn =  QtWidgets.QFileDialog.getOpenFileName(parent, "MY_BROWSER " + title, dir, filter)
    return fn

Atoms.ui.utils.qt.open_file_browser = my_open_file_browser



Related content

Skeleton Loaderの書き込み
Skeleton Loaderの書き込み
More like this
Agent Groupを作成する
Agent Groupを作成する
More like this
Agent Typeの構築
Agent Typeの構築
More like this
Standalone Simulationの作成
Standalone Simulationの作成
More like this
Mesh Loaderの書き込み
Mesh Loaderの書き込み
More like this
CLI設定のキーと値
CLI設定のキーと値
More like this

Copyright © 2017, Toolchefs LTD.