Добавлена команда reset_zone

This commit is contained in:
Victor 2015-04-24 17:10:32 +03:00
parent e672366a23
commit 0c8fac47ba
5 changed files with 17 additions and 0 deletions

View File

@ -72,6 +72,7 @@ public final class Lexer {
KEYWORDS.put("meet", TokenType.SET_NAME); KEYWORDS.put("meet", TokenType.SET_NAME);
KEYWORDS.put("disable_all_zones", TokenType.DISABLE_ALL_ZONES); KEYWORDS.put("disable_all_zones", TokenType.DISABLE_ALL_ZONES);
KEYWORDS.put("disable_current_zone", TokenType.DISABLE_CURRENT_ZONE); KEYWORDS.put("disable_current_zone", TokenType.DISABLE_CURRENT_ZONE);
KEYWORDS.put("reset_zone", TokenType.RESET_ZONE);
KEYWORDS.put("set_zone", TokenType.SET_ZONE); KEYWORDS.put("set_zone", TokenType.SET_ZONE);
KEYWORDS.put("show_map", TokenType.SHOW_MAP); KEYWORDS.put("show_map", TokenType.SHOW_MAP);
} }

View File

@ -32,6 +32,10 @@ public class MapPlaces {
zones.remove(currentZone); zones.remove(currentZone);
} }
public void resetZone(String zone) {
zones.remove(zone);
}
public void setZone(String name, String label) { public void setZone(String name, String label) {
zones.put(name, label); zones.put(name, label);
} }

View File

@ -269,6 +269,13 @@ public final class Parser {
ViewActivity.getInstance().disableCurrentZone(); ViewActivity.getInstance().disableCurrentZone();
return false; return false;
} }
if (match(token, TokenType.RESET_ZONE)) {
consume(TokenType.LPAREN);
final String zone = consume(TokenType.TEXT).getText();
consume(TokenType.RPAREN);
ViewActivity.getInstance().resetZone(zone);
return false;
}
if (match(token, TokenType.SET_ZONE)) { if (match(token, TokenType.SET_ZONE)) {
consume(TokenType.LPAREN); consume(TokenType.LPAREN);
final String zone = consume(TokenType.TEXT).getText(); final String zone = consume(TokenType.TEXT).getText();

View File

@ -71,6 +71,7 @@ public enum TokenType {
SET_NAME, SET_NAME,
DISABLE_ALL_ZONES, DISABLE_ALL_ZONES,
DISABLE_CURRENT_ZONE, DISABLE_CURRENT_ZONE,
RESET_ZONE,
SET_ZONE, SET_ZONE,
SHOW_MAP, SHOW_MAP,

View File

@ -345,6 +345,10 @@ public final class ViewActivity extends Activity implements TouchGesture.OnTouch
places.disableCurrentZone(); places.disableCurrentZone();
} }
public void resetZone(String zone) {
places.resetZone(zone);
}
public void setZone(String name, String label) { public void setZone(String name, String label) {
places.setZone(name, label); places.setZone(name, label);
} }