package com.hourlyweather.util;
import java.util.HashMap;
import com.hourlyweather.R;
import com.hourlyweather.forecast.ForecastHour;
/**
* This class handles the mapping from weather strings to icon resource ids for
* the widget
*
* @author dhgonsalves
*
*/
public class WidgetForecastIconUtil {
private static final HashMap<String, Integer> icons = new HashMap<String, Integer>();
private static final HashMap<String, Integer> nightIcons = new HashMap<String, Integer>();
static {
icons.put("SUN", R.drawable.widget_sun);
icons.put("LIGHTCLOUD", R.drawable.widget_lightcloud);
icons.put("PARTLYCLOUD", R.drawable.widget_partlycloud);
icons.put("CLOUD", R.drawable.widget_cloud);
icons.put("LIGHTRAINSUN", R.drawable.widget_lightrainsun);
icons.put("LIGHTRAINTHUNDERSUN", R.drawable.widget_lightrainthundersun);
icons.put("SLEETSUN", R.drawable.widget_sleetsun);
icons.put("SNOWSUN", R.drawable.widget_snowsun);
icons.put("LIGHTRAIN", R.drawable.widget_lightrain);
icons.put("RAIN", R.drawable.widget_rain);
icons.put("RAINTHUNDER", R.drawable.widget_rainthunder);
icons.put("SLEET", R.drawable.widget_sleet);
icons.put("SNOW", R.drawable.widget_snow);
icons.put("SNOWTHUNDER", R.drawable.widget_snowthunder);
icons.put("FOG", R.drawable.widget_fog);
nightIcons.put("SUN", R.drawable.widget_night_sun);
nightIcons.put("PARTLYCLOUD", R.drawable.widget_night_partlycloud);
nightIcons.put("LIGHTRAINSUN", R.drawable.widget_night_lightrainsun);
nightIcons.put("LIGHTRAINTHUNDERSUN",
R.drawable.widget_night_lightrainthundersun);
nightIcons.put("SLEETSUN", R.drawable.widget_night_sleetsun);
nightIcons.put("SNOWSUN", R.drawable.widget_night_snowsun);
}
/**
* returns a drawable resource id based on a weather string
*
* @param weather
* @return
*/
public static Integer getIconId(ForecastHour forecast) {
if (!forecast.isSunUp()) {
Integer iconId = nightIcons.get(forecast.getSymbol());
if (iconId != null)
return iconId;
}
return icons.get(forecast.getSymbol());
}
}