日付を選ぶ

入力欄を押すと、その下に暦が開いて日付を選べます。

できること

使い方

暦の HTML は部品が持っています。この画面にも、デザイナのページにもありません。ページ側にあるのは、見た目を決める CSS だけです。

Picker month: shown day: one lang: lang open: (open = #from)
       pick: #pickFrom move: #showMonth toggle: #openFrom

pick: move: toggle: に渡すのは、自分のハンドラの名前です。日が押されたら pickFrom、月送りが押されたら showMonth、欄が押されたら openFrom が自分に届きます。部品は相手のクラスを知りません。

期間のときは、塗る範囲を足して渡します。

Picker month: shown day: to mark: from to: to
       lang: lang open: (open = #to)
       pick: #pickTo move: #showMonth toggle: #openTo

画面が覚えること

部品はアクタではないので、状態を持ちません。次の三つは画面の側が持ちます。

アクタにすれば部品の中に入りますが、そうすると「選んだ日を誰に知らせるか」を部品が知る必要が出ます。知らせる相手は画面で、画面のクラスは案件ごとに違います。部品の型が画面ごとに変わってしまい、使い回せなくなります。