public String getTapActionByCoordinates(
     String name, int x, int y, int width, int height, boolean singleTap) {
   return TapZoneMap.zoneMap(name)
       .getActionByCoordinates(
           x,
           y,
           width,
           height,
           singleTap ? TapZoneMap.Tap.singleNotDoubleTap : TapZoneMap.Tap.doubleTap);
 }
 private TapZoneMap getZoneMap() {
   final PageTurningOptions prefs = myReader.PageTurningOptions;
   String id = prefs.TapZoneMap.getValue();
   if ("".equals(id)) {
     id = prefs.Horizontal.getValue() ? "right_to_left" : "up";
   }
   if (myZoneMap == null || !id.equals(myZoneMap.Name)) {
     myZoneMap = TapZoneMap.zoneMap(id);
   }
   return myZoneMap;
 }
 public void setTapZoneAction(String name, int h, int v, boolean singleTap, String action) {
   TapZoneMap.zoneMap(name).setActionForZone(h, v, singleTap, action);
 }
 public String getTapZoneAction(String name, int h, int v, boolean singleTap) {
   return TapZoneMap.zoneMap(name)
       .getActionByZone(
           h, v, singleTap ? TapZoneMap.Tap.singleNotDoubleTap : TapZoneMap.Tap.doubleTap);
 }
 public void deleteZoneMap(String name) throws ApiException {
   TapZoneMap.deleteZoneMap(name);
 }
 public boolean isZoneMapCustom(String name) throws ApiException {
   return TapZoneMap.zoneMap(name).isCustom();
 }
 public void createZoneMap(String name, int width, int height) {
   TapZoneMap.createZoneMap(name, width, height);
 }
 public int getZoneMapWidth(String name) {
   return TapZoneMap.zoneMap(name).getWidth();
 }
 public int getZoneMapHeight(String name) {
   return TapZoneMap.zoneMap(name).getHeight();
 }
 public List<String> listZoneMaps() {
   return TapZoneMap.zoneMapNames();
 }