Method: Miyako::TextBox#command
- Defined in:
- lib/Miyako/API/textbox.rb
#command(choices, dx = nil, dy = nil) ⇒ Object
コマンド選択を設定する
コマンド選択処理に移る(self#selecting?メソッドがtrueになる)
引数choicesに配列を渡すとき、各要素の構成は以下のようになる
- コマンド文字列・画像,選択時コマンド文字列・画像,選択した結果(オブジェクト)
-
引数choicesにChoicesクラスインスタンスを渡したとき、内部で、インスタンスを複写したものに置き換える
このメソッドが呼び出された時、選択肢はlocateメソッドの値となる位置に移動する引数dx,dyともにnil以外の数値を渡すと、上記の位置から更に移動する(位置が補正される) body_selectedをnilにした場合は、bodyと同一となるbody_selectedを文字列を指定した場合は、文字色が赤色になることに注意
- choices
-
選択肢の配列、もしくはChoicesクラスのインスタンス
- dx
-
選択肢を表示するx座標の移動量。デフォルトはnil(移動しない)
- dy
-
選択肢を表示するy座標の移動量。デフォルトはnil(移動しない)
- 返却値
-
自分自身を返す
520 521 522 523 524 525 526 527 528 529 530 531 532 533 |
# File 'lib/Miyako/API/textbox.rb', line 520 def command(choices, dx = nil, dy = nil) if choices.methods.include?(:start_choice) @choices = choices @choices.snap(self) else @choices.clear choices.each{|cc| @choices.create_choices(cc) } end @choices.left!{|b| @locate.x}.top!{|b| @locate.y} @choices.move!(dx, dy) if (dx != nil && dy != nil) start_command Fiber.yield if @fiber return self end |