|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectkinugasa.object.Sprite
kinugasa.object.BasicSprite
kinugasa.ui.MessageWindow
kinugasa.ui.SelectableMessageWindow
public class SelectableMessageWindow
1つ以上の選択肢から内容を選ばせることができるメッセージウインドウの拡張クラスです.
選択メッセージウインドウは1つの質問文と0こ以上の選択肢を持ちます。
質問文は改行"\n"を利用可能です。選択肢は改行できません。
選択中の選択肢を指し示すにはCHoiceEffectクラスを使用します。
ChoiceEffectはメッセージウインドウ内のラベルの選択中インデックスの要素に適用されます。
選択された選択肢は選択肢のテキストやラベル配列のインデックスを取得することで
区別することができます。
このメッセージウインドウは選択エフェクトがnullの場合は、選択エフェクトを表示しません。
したがって、選択肢のない普通のメッセージであっても表示可能です。
これを利用して、途中で選択肢を与える会話イベントをこの選択メッセージウインドウを使用して
作成することで、ウインドウを切り替えずに選択イベントを発生させることができます。
このウインドウの実装では、すべてのラベルが表示されるまで選択エフェクトが描画されません。
これは一部のメソッドによる選択された値を取得に影響します。
フィールドの概要 | |
---|---|
private ChoiceEffect |
choiceEffect
この選択メッセージウインドウが使用する選択エフェクトです. |
private int |
maxIndex
選択可能な最大のインデックスです. |
private int |
minIndex
選択可能な最少のインデックスです. |
static int |
NOT_YET_SELECTED
全てのラベルが表示されていないために、何も選択されていない状態を表すインデックスの定数です. |
private int |
selectedIndex
現在選択中のラベルのインデックスです. |
private static long |
serialVersionUID
|
クラス kinugasa.ui.MessageWindow から継承されたフィールド |
---|
labels |
コンストラクタの概要 | |
---|---|
SelectableMessageWindow(float x,
float y,
float width,
float height,
MessageWindowModel wm,
LabelModel lm,
java.lang.String text,
int initialIdx,
int minIdx,
int maxIdx,
ChoiceEffect choiceEffect)
新しい選択メッセージウインドウを作成します. |
|
SelectableMessageWindow(float x,
float y,
float width,
float height,
MessageWindowModel wm,
LabelModel lm,
TimeCounter tc,
java.lang.String text,
int initialIdx,
int minIdx,
int maxIdx,
ChoiceEffect choiceEffect)
新しい選択メッセージウインドウを作成します. |
メソッドの概要 | |
---|---|
protected void |
clamp()
インデックスを有効範囲内に切り詰めます. |
SelectableMessageWindow |
clone()
このスプライトの複製を作成します. |
void |
draw(java.awt.Graphics2D g)
メッセージウインドウを描画します. |
ChoiceEffect |
getChoiceEffect()
この選択メッセージウインドウに設定されているエフェクトを取得します. |
int |
getMaxIndex()
選択可能な最大のインデックスを取得します. |
int |
getMinIndex()
選択可能な最少のインデックスを取得します. |
int |
getSelectedIndex()
現在選択されているラベルのインデックスを取得します. |
TextLabel |
getSelectedLabel()
現在選択されているラベルを取得します. |
void |
nextChoice()
選択中の選択肢を1つ次の選択肢へと移します. |
void |
nextChoiceLoop()
選択中の選択肢を1つ次の選択肢へと移します. |
void |
prevChoice()
選択中の選択肢を1つ前の選択肢へと移します. |
void |
prevChoiceLoop()
選択中の選択肢を1つ前の選択肢へと移します. |
void |
select(int idx)
あるインデックスの選択肢を選択状態にします. |
void |
setChoiceEffect(ChoiceEffect choiceEffect)
この選択メッセージウインドウに新しい選択エフェクトを設定します. |
void |
setMaxIndex(int maxIndex)
選択可能な最大のインデックスを設定します. |
void |
setMinIndex(int minIndex)
選択可能な最少のインデックスを設定します. |
クラス kinugasa.ui.MessageWindow から継承されたメソッド |
---|
allText, getIcon, getLabel, getLabels, getSeparator, getWindowModel, isAllTextVisible, move, move, move, move, setIcon, setLabels, setSeparator, setSound, setText, setText, setText, setText, setWindowModel, skip |
クラス kinugasa.object.BasicSprite から継承されたメソッド |
---|
getAngle, getMovingModel, getMovingModel, getNextCenter, getNextLocation, getSpeed, getVector, setAngle, setMovingModel, setSpeed, setVector, toString |
クラス kinugasa.object.Sprite から継承されたメソッド |
---|
compareTo, contains, getBounds, getCenter, getCenterX, getCenterY, getHeight, getHitBounds, getLocation, getPersonalCenter, getPersonalCenterX, getPersonalCenterY, getSize, getStatus, getWidth, getX, getY, getZ, isExist, isVisible, setBounds, setBounds, setBounds, setExist, setHeight, setLocation, setLocation, setSize, setSize, setStatus, setVisible, setWidth, setX, setY, setZ, update, updateCenter, updatePersonalCenter |
クラス java.lang.Object から継承されたメソッド |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
フィールドの詳細 |
---|
private static final long serialVersionUID
private ChoiceEffect choiceEffect
private int selectedIndex
private int minIndex
private int maxIndex
public static final int NOT_YET_SELECTED
コンストラクタの詳細 |
---|
public SelectableMessageWindow(float x, float y, float width, float height, MessageWindowModel wm, LabelModel lm, java.lang.String text, int initialIdx, int minIdx, int maxIdx, ChoiceEffect choiceEffect) throws java.lang.NullPointerException, java.lang.IllegalArgumentException
x
- ウインドウのX座標を指定します。y
- ウインドウのY座標を指定します。width
- ウインドウの幅を指定します。height
- ウインドウの高さを指定します。wm
- ウインドウの表示モデルを指定します。lm
- ウインドウ内のラベルに適用されるラベルモデルを指定します。text
- 質問文です。改行"\n"を利用できます。initialIdx
- 最初に選択されている選択肢のインデックスを指定します。minIdx
- 選択可能なインデックスの最小値を指定します。maxIdx
- 選択可能なインデックスの最小値を指定します。choiceEffect
- 選択エフェクトを指定します。nullを許容します。java.lang.NullPointerException
- テキストがnullである場合に投げられます。java.lang.IllegalArgumentException
- minIdx > maxIdxのときに投げられます。public SelectableMessageWindow(float x, float y, float width, float height, MessageWindowModel wm, LabelModel lm, TimeCounter tc, java.lang.String text, int initialIdx, int minIdx, int maxIdx, ChoiceEffect choiceEffect) throws java.lang.NullPointerException, java.lang.IllegalArgumentException
x
- ウインドウのX座標を指定します。y
- ウインドウのY座標を指定します。width
- ウインドウの幅を指定します。height
- ウインドウの高さを指定します。wm
- ウインドウの表示モデルを指定します。lm
- ウインドウ内のラベルに適用されるラベルモデルを指定します。tc
- ラベルに適用するタイムカウンタを指定します。実際はクローンが使用されます。text
- 質問文です。改行"\n"を利用できます。initialIdx
- 最初に選択されている選択肢のインデックスを指定します。minIdx
- 選択可能なインデックスの最小値を指定します。maxIdx
- 選択可能なインデックスの最小値を指定します。choiceEffect
- 選択エフェクトを指定します。nullを許容します。java.lang.NullPointerException
- テキストがnullである場合に投げられます。java.lang.IllegalArgumentException
- minIdx > maxIdxのときに投げられます。メソッドの詳細 |
---|
public int getMinIndex()
public void setMinIndex(int minIndex)
minIndex
- 選択可能な最少のインデックスを返します。public int getMaxIndex()
public void setMaxIndex(int maxIndex)
maxIndex
- 選択可能な最大のインデックスを返します。public void setChoiceEffect(ChoiceEffect choiceEffect)
choiceEffect
- 選択エフェクトの実装を送信します。nullを許容します。public ChoiceEffect getChoiceEffect()
public void nextChoice()
public void nextChoiceLoop()
public void prevChoice()
public void prevChoiceLoop()
public final void select(int idx) throws java.lang.IllegalArgumentException
idx
- 選択するインデックスを送信します。java.lang.IllegalArgumentException
- idx >= labels.length || minIndex > idx || maxIndex < idxのときに投げられます。protected final void clamp()
public TextLabel getSelectedLabel()
public int getSelectedIndex()
public void draw(java.awt.Graphics2D g)
MessageWindow
の記述:
Drawable
内の draw
MessageWindow
内の draw
g
- 書き込むグラフィックスコンテキスト.public SelectableMessageWindow clone()
BasicSprite
の記述:
MessageWindow
内の clone
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |