比較バージョン

キー

  • この行は追加されました。
  • この行は削除されました。
  • 書式設定が変更されました。

Users can use their custom file browsers when browsing for Atoms files. This allows different pipelines to use their own internal DB browsers.

...

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

...

The arguments of the browser callback are:

  • parent: the parent widget
  • title: the title of the browser as requested by Atoms
  • dir: the current directory
  • filter: the file filter
  • directory_mode: if true, we are browsing for a directory
  • save_mode: if true, we are saving a file
  • hint: this string will provide info about the specific task the user is performing.

The possible value for the hint argument are: 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,  savesave_animation_clip_script (Animation clips)
  • load_agent_type_script,  savesave_agent_type_script (Agent types)
  • load_behaviour_module_script,  savesave_behaviour_module_script (Behaviour modules)
  • load_simulation_event_script,  savesave_simulation_event_script (Simulation events)
  • load_variation,  savesave_variation, merge_variation (Variation json)
  • material (load_only), texture (load_only),  atomsatoms_geo (load_only) (Variation elements)
  • cloth_setup (load_only) (Cloth setup)
  • atoms_cache_path path (load_only) (Atoms cache)
  • atoms atoms (load_only) (Skeleton config map)


...

Example

コード ブロック
languagepy
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

...