コンテンツにスキップ

オプション型

Option クラスは、ツールおよび形式プラグインのダイアログで UI コントロールを生成する、型付きで永続的なオプションを定義するためのファクトリメソッドを提供します。

共通パラメーター

すべてのオプションファクトリは、以下のパラメーターを受け取ります。

パラメーター説明
labelstr表示ラベル(最初の位置引数)
defaultvariesデフォルト値
tooltipstrツールチップテキスト
enabled_whencallablebool を返すコールバック——表示可否を制御します

Option.integer()

整数値用のスピンボックスです。

count = Option.integer("Count", default=1, min=0, max=1000)
パラメーターデフォルト説明
defaultint0デフォルト値
minintNone最小値
maxintNone最大値

Option.real()

浮動小数点値用のダブルスピンボックスです。

scale = Option.real("Scale Factor", default=1.0, min=0.001, max=1e6, decimals=4)
パラメーターデフォルト説明
defaultfloat0.0デフォルト値
minfloatNone最小値
maxfloatNone最大値
decimalsint2表示する小数桁数

Option.boolean()

true/false 値用のチェックボックスです。

flatten = Option.boolean("Flatten hierarchy", default=False)
パラメーターデフォルト説明
defaultboolFalseデフォルト値

Option.string()

1 行テキストフィールドです。

name = Option.string("Output name", default="output")
パラメーターデフォルト説明
defaultstr""デフォルト値

Option.choice()

ドロップダウンセレクターです。

mode = Option.choice("Mode", choices=["Fast", "Precise", "Custom"], default="Fast")
パラメーターデフォルト説明
choiceslist[str]required使用可能なオプション
defaultstrfirst choiceデフォルト選択

Option.path()

参照ボタン付きのファイルパスピッカーです。

output = Option.path("Output file", file_filter="CSV Files (*.csv)")
パラメーターデフォルト説明
defaultstr""デフォルトパス
file_filterstr""ファイルタイプフィルター文字列

Option.color()

カラーピッカーボタンです。

fill = Option.color("Fill color", default="#FF0000")
パラメーターデフォルト説明
defaultstr"#000000"デフォルト色(16 進)

Option.cell_choice()

現在の図面にあるすべてのセル名で埋められるドロップダウンです。

target = Option.cell_choice("Target cell")
パラメーターデフォルト説明
defaultstr""デフォルトセル名

Option.table()

型付き列を持つ編集可能グリッドです。パネルアセンブリチュートリアルも参照してください。

entries = Option.table(
"My Table",
columns=[
TableColumn(key="name", label="Name", col_type="string"),
TableColumn(key="value", label="Value", col_type="real", decimals=3),
],
)
パラメーターデフォルト説明
columnslist[TableColumn]required列定義
defaultlist[dict][]デフォルト行

値は list[dict] で、各辞書は列キーを値に対応付けます。

TableColumn

プロパティ説明
keystrこの列の辞書キー
labelstr列見出し
col_typestrstringintegerrealchoicecell_choice
defaultAny新しい行のデフォルト値
choiceslist[str]choice 列のオプション
decimalsintreal 列の小数桁数
min_valueint|float数値列の最小値
max_valueint|float数値列の最大値

条件付き表示

enabled_when を使用して、オプションを動的に有効/無効にします。

class MyTool(Tool):
mode = Option.choice("Mode", choices=["Simple", "Advanced"])
threshold = Option.real(
"Threshold",
default=0.5,
enabled_when=lambda self: self.mode == "Advanced",
)
iterations = Option.integer(
"Iterations",
default=10,
enabled_when=lambda self: self.mode == "Advanced",
)

mode が “Simple” の場合、thresholditerations フィールドはグレーアウトされます。