Парсинг эффектов для команды show и hide

This commit is contained in:
Victor 2015-05-03 19:19:34 +03:00
parent c68a123b93
commit af750f5a7c
2 changed files with 12 additions and 9 deletions

View File

@ -155,11 +155,7 @@ public final class Parser {
if (match(token, TokenType.QUEUE)) return queue();
if (match(token, TokenType.STOP)) return stop();
if (match(token, TokenType.SHOW)) return show();
if (match(token, TokenType.HIDE)) {
ViewActivity.getInstance().hideSprite(consume(TokenType.WORD).getText());
return false;
}
if (match(token, TokenType.HIDE)) return hide();
if (match(token, TokenType.JUMP)) return jump();
if (match(token, TokenType.IF)) return ifStatement();
@ -375,8 +371,15 @@ public final class Parser {
if (match(TokenType.AS)) {
alias = consume(TokenType.WORD).getText();
}
matchWithEffect();
ViewActivity.getInstance().sprite(whoid, params, position, alias);
final String effect = matchWithEffect();
ViewActivity.getInstance().sprite(whoid, params, position, alias, effect);
return false;
}
private boolean hide() {
final String whoid = consume(TokenType.WORD).getText();
final String effect = matchWithEffect();
ViewActivity.getInstance().hideSprite(whoid, effect);
return false;
}

View File

@ -305,7 +305,7 @@ public final class ViewActivity extends Activity implements TouchGesture.OnTouch
spriteInContainer.clear();
}
public void sprite(String whoid, String params, String position, String alias) {
public void sprite(String whoid, String params, String position, String alias, String effect) {
ImageView img;
final String key = TextUtils.isEmpty(alias) ? whoid : alias;
if (spriteInContainer.containsKey(key)) {
@ -327,7 +327,7 @@ public final class ViewActivity extends Activity implements TouchGesture.OnTouch
}
}
public void hideSprite(String whoid) {
public void hideSprite(String whoid, String effect) {
if (!spriteInContainer.containsKey(whoid)) return;
final ImageView img = spriteInContainer.get(whoid);
container.removeView(img);