Swyftのユーザーインターフェイス その2
コードを書く前に、LEAPキーの状態遷移を書き出してみる。
まずはイベントの種類
イベント名 | 説明 |
---|---|
LF下 | LEAP Forward keyDown event |
LF上 | LEAP Forward keyUp event |
LB下 | LEAP Back keyDown event |
LB上 | LEAP Back keyUp event |
Tab下 | Tab keyDown event |
Tab上 | Tab keyUp event |
その他 | その他のキーイベント |
SwyftではLeapキーを押している間だけ検索する。そのため、keyDownとKeyUpを区別する必要があり、keyDownイベントとkeyUpの2つのイベントを分けている。 TabキーはLeapキーとの組み合わせで再検索を行うためにイベントを追加した。
次に状態の種類
状態名 | 説明 |
---|---|
normal | 通常状態。各種キー入力はそのままTextViewへ渡される |
findF | 前方検索状態。各種キー入力された文字列が検索文字列として前方逐次検索される |
findB | 後方検索状態。各種キー入力された文字列が検索文字列として後方逐次検索される |
select | 選択状態。現在のカーソル位置とマークされた位置を選択状態にする。 |
状態遷移図を書くとこんな感じ。
眠いから、状態遷移表はまた次に書く。