List、Slider、Image
リストの項目と選択、スライダーの値と範囲、画像のアセット・フィットモード・クロップ——すべて接続された要素に対して
自分自身の状態を持つ3つのウィジェット——List の項目、Slider の値、Image のアセット——に、ウィジェットの内部からではなく、ここでは接続された参照を通じて到達します。すべての Element ノードに共通する規則は Element にあります。
List
List ノードは element:nl.list 型の list ピンを取ります。これらは List インスタンスのランタイム items に作用し、その items はそのインスタンスの中にしか存在しません——完全にアンマウントされるとクリアされ、何もそれを復元しません。そのため変数や他のデータソースから自分で書き戻す必要があります。itemsBinding は、ランタイム items が何もないときの読み取りフォールバックとしてのみ参照されます。
項目コンテキストの読み取りノード——index、count、key、props——はそもそも Element ノードではありません——それらは自分がレンダリングされている項目のテンプレートスコープを読み、Self 形態と一緒に List にあります。
Get List Content
blueprint.element.list.getItems · Pure
ランタイム items を読み取ります。何も設定されていなければ、itemsBinding またはプレビューデータにフォールバックします。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
list | in · data | element:nl.list | |
items | out · data | array |
Set List Content
blueprint.element.list.setItems · Latent
ランタイム items を置き換えます。配列でない値は空配列として扱われます。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list | |
items | in · data | array |
Clear List
blueprint.element.list.clear · Latent
ランタイム items を空配列にします。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list |
Append List Item
blueprint.element.list.appendItem · Latent
1つの項目を末尾に追加します。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list | |
item | in · data | any |
Insert List Item
blueprint.element.list.insertItem · Latent
1つの項目を指定インデックスに挿入します。インデックスは拒否されるのではなく、有効な範囲に clamp されます。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list | |
index | in · data | integer | カード上のリテラルを受け付けます。 |
item | in · data | any |
Remove List Item
blueprint.element.list.removeItem · Latent
item と JSON として等しい最初の項目を削除します。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list | |
item | in · data | any |
Remove List Item At
blueprint.element.list.removeItemAt · Latent
指定インデックスの項目を削除します。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list | |
index | in · data | integer | カード上のリテラルを受け付けます。 |
Refresh List Items
blueprint.element.list.refreshItems · Latent
現在の items を変更せずに書き戻し、項目テンプレートを強制的に再レンダリングさせます。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list |
Get Selected Item
blueprint.element.list.getSelectedItem · Pure
有効な選択がないときは null を出力します。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
list | in · data | element:nl.list | |
item | out · data | json |
Set Selected Item
blueprint.element.list.setSelectedItem · Latent
JSON としての等価性で項目を見つけ、それを選択します。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list | |
item | in · data | any |
Get Selected Index
blueprint.element.list.getSelectedIndex · Pure
選択されているインデックスを読み取ります。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
list | in · data | element:nl.list | |
index | out · data | integer |
Set Selected Index
blueprint.element.list.setSelectedIndex · Latent
選択されているインデックスを設定します。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list | |
index | in · data | integer | カード上のリテラルを受け付けます。 |
Scroll To Index
blueprint.element.list.scrollToIndex · Latent
1つの項目までスクロールします。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list | |
index | in · data | integer | カード上のリテラルを受け付けます。 |
Scroll To Top
blueprint.element.list.scrollToTop · Latent
先頭までスクロールします。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list |
Scroll To Bottom
blueprint.element.list.scrollToBottom · Latent
末尾までスクロールします。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list |
Get List Length
blueprint.element.list.getLength · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
list | in · data | element:nl.list | |
length | out · data | integer |
Get Item At
blueprint.element.list.getItemAt · Pure
Get List Content で配列全体を引き出すことなく、インデックスで1行だけ取得します。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
list | in · data | element:nl.list | |
index | in · data | integer | カード上のリテラルを受け付けます。 |
item | out · data | json | 現在の items の範囲外では null。 |
Find Item By Field
blueprint.element.list.findItemByField · Pure
List が宣言している項目フィールドの1つで行を検索します。カードはそのフィールドの安定 id を保存するため、プロパティの名前を変えてもグラフには何のコストもかかりません。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
list | in · data | element:nl.list | |
value | in · data | any | フィールドが等しくあるべき値。 |
index | out · data | integer | 一致するものがないときは -1。 |
item | out · data | json | 一致するものがないときは null。 |
found | out · data | boolean |
カード上のフィールド
| フィールド | 説明 |
|---|---|
Field | どの項目フィールドで照合するか。 |
Set Item Field At
blueprint.element.list.setItemFieldAt · Latent
1行の1つのフィールドだけを書き込み、その行の他の部分はそのままにします。存在しない行に対しては黙って何もしません。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list | |
index | in · data | integer | カード上のリテラルを受け付けます。 |
value | in · data | any |
カード上のフィールド
| フィールド | 説明 |
|---|---|
Field | どの項目フィールドに書き込むか。必須——これがないとノードは実行を拒否します。 |
Sort List By Field
blueprint.element.list.sortByField · Latent
ランタイム items をそのフィールドの1つで並べ替え、結果を書き戻します。並べ替えの規則は Data の Array Sort By Key と同じ。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
list | in · data | element:nl.list |
カード上のフィールド
| フィールド | 説明 |
|---|---|
Field | どの項目フィールドで並べ替えるか。必須。 |
Direction | Ascending または Descending。 |
Get Scroll Progress
blueprint.element.list.getScrollProgress · Pure
List がどこまでスクロールされているかを 0–1 で示します。Scroll ヘッドは List が動いたことを伝え、この4つはそれがどこに落ち着いたかを伝えます——List の外側のコントロールは自分で尋ねる必要があります。誰も教えてくれないからです。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
list | in · data | element:nl.list | |
progress | out · data | float |
Get Scroll Offset
blueprint.element.list.getScrollOffset · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
list | in · data | element:nl.list | |
offset | out · data | float | ピクセル。 |
maxOffset | out · data | float | コンテンツが収まっているときは 0。 |
Is Scrolled To Start
blueprint.element.list.isScrolledToStart · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
list | in · data | element:nl.list | |
atStart | out · data | boolean | 近い端から1ピクセル以内。コンテンツが収まっているときは true。 |
Is Scrolled To End
blueprint.element.list.isScrolledToEnd · Pure
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
list | in · data | element:nl.list | |
atEnd | out · data | boolean | 遠い端から1ピクセル以内。コンテンツが収まっているときは true。 |
Slider
Slider ノードは element:nl.slider 型の slider ピンを取ります。スライダーが値を報告するあらゆる場所——props.value、その Blueprint Value、イベントペイロード、Get Slider Value——において、その値は写像済みの値であり、すでに min、max、step に対して clamp と snap が済んでいます。0..1 の比率は Get Slider Normalized Value を通してのみ得られます。Self 形態は Slider にあります。
Get Slider Value
blueprint.element.slider.getValue · Pure
写像済みのランタイム値を読み取ります——すでに clamp と snap が済んでいます。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
slider | in · data | element:nl.slider | |
value | out · data | float |
Set Slider Value
blueprint.element.slider.setValue · Latent
写像済みの値を書き込み、現在の範囲とステップに対して正規化します。更新するのはランタイム状態のみ——valueChanged、dragStart、dragEnd のいずれのイベントも発火されず、UI ドキュメントにも何も書き戻されません。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
slider | in · data | element:nl.slider | |
value | in · data | float | カード上のリテラルを受け付けます。 |
Get Slider Normalized Value
blueprint.element.slider.getNormalizedValue · Pure
0..1 の比率を読み取ります。これを得られるのはこのノードだけです。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
slider | in · data | element:nl.slider | |
normalizedValue | out · data | float |
Get Slider Range
blueprint.element.slider.getRange · Pure
min、max、step を一度に読み取ります。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
slider | in · data | element:nl.slider | |
min | out · data | float | |
max | out · data | float | |
step | out · data | float |
Set Slider Range
blueprint.element.slider.setRange · Latent
min、max、step を書き込み、それらに対して現在のランタイム値を再正規化します。Set Slider Value と同様、イベントについては何も発火しません。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
slider | in · data | element:nl.slider | |
min | in · data | float | カード上のリテラルを受け付けます。 |
max | in · data | float | カード上のリテラルを受け付けます。 |
step | in · data | float | カード上のリテラルを受け付けます。 |
Image
Image ノードは element:nl.image ピンを取ります。これらはインターフェースの画像ウィジェットのみを扱います——ステージ画像でも、キャラクターの立ち絵でも、ストーリーが演出するものでもありません。ImageAsset を生成するリテラルカードは派生形態を持たず、Self 形態と一緒に Image にとどまります。
Get Image Asset
blueprint.element.image.getImageAsset · Pure
ウィジェットに画像がないときは null。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
element | in · data | element:nl.image | |
asset | out · data | ImageAsset|null |
Set Image Asset
blueprint.element.image.setImageAsset · Latent
asset を未接続にしておくと、カードは画像ピッカーに展開されます。接続すれば接続した値が優先されます。null は画像をクリアします。単純な assetId 文字列を渡すグラフも引き続き動作するが、新しい作業では ImageAsset を持たせるべきです。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
element | in · data | element:nl.image | |
asset | in · data | ImageAsset|null | カード上のリテラルを受け付けます。 |
Clear Image Asset
blueprint.element.image.clearImageAsset · Latent
null を渡した Set Image Asset と同等。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
element | in · data | element:nl.image |
Get Image Fit Mode
blueprint.element.image.getFitMode · Pure
imageFill.mode を読み取ります:cover、contain、stretch、crop、tile のいずれかです。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
element | in · data | element:nl.image | |
fitMode | out · data | string |
Set Image Fit Mode
blueprint.element.image.setFitMode · Latent
imageFill.mode を設定し、現在のアセットとクロップ矩形は保持します。未知の文字列や空文字列は、失敗する代わりに現在のモードにフォールバックします。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
element | in · data | element:nl.image | |
fitMode | in · data | string | カード上のリテラルを受け付けます。 |
Get Image Crop Rect
blueprint.element.image.getCropRect · Pure
imageFill.cropPlacement を読み取ります。明示的なクロップがない場合は画像全体を報告します。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
element | in · data | element:nl.image | |
leftPct | out · data | float | |
topPct | out · data | float | |
widthPct | out · data | float | |
heightPct | out · data | float |
Set Image Crop Rect
blueprint.element.image.setCropRect · Latent
クロップ矩形を書き込み、副作用として fitMode を crop に切り替えます。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
element | in · data | element:nl.image | |
leftPct | in · data | float | カード上のリテラルを受け付けます。 |
topPct | in · data | float | カード上のリテラルを受け付けます。 |
widthPct | in · data | float | カード上のリテラルを受け付けます。 |
heightPct | in · data | float | カード上のリテラルを受け付けます。 |
Get Image Flip X
blueprint.element.image.getFlipX · Pure
画像コンテンツレイヤーの水平反転を読み取ります。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
element | in · data | element:nl.image | |
flipX | out · data | boolean |
Set Image Flip X
blueprint.element.image.setFlipX · Latent
水平反転を設定します。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
element | in · data | element:nl.image | |
flipX | in · data | boolean |
Get Image Flip Y
blueprint.element.image.getFlipY · Pure
画像コンテンツレイヤーの垂直反転を読み取ります。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
element | in · data | element:nl.image | |
flipY | out · data | boolean |
Set Image Flip Y
blueprint.element.image.setFlipY · Latent
垂直反転を設定します。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | |
element | in · data | element:nl.image | |
flipY | in · data | boolean |