package net.osmand.plus.base;
import android.graphics.drawable.Drawable;
import android.support.annotation.ColorInt;
import android.support.annotation.ColorRes;
import android.support.annotation.DrawableRes;
import android.support.annotation.IdRes;
import android.support.v4.app.Fragment;
import android.view.View;
import android.widget.ImageView;
import net.osmand.plus.IconsCache;
import net.osmand.plus.OsmandApplication;
import net.osmand.plus.OsmandSettings;
import net.osmand.plus.activities.OsmandActionBarActivity;
public class BaseOsmAndFragment extends Fragment {
private IconsCache iconsCache;
protected OsmandApplication getMyApplication() {
return (OsmandApplication) getActivity().getApplication();
}
protected OsmandActionBarActivity getMyActivity() {
return (OsmandActionBarActivity) getActivity();
}
protected IconsCache getIconsCache() {
if (iconsCache == null) {
iconsCache = getMyApplication().getIconsCache();
}
return iconsCache;
}
protected Drawable getPaintedContentIcon(@DrawableRes int id, @ColorInt int color){
return getIconsCache().getPaintedIcon(id, color);
}
protected Drawable getIcon(@DrawableRes int id, @ColorRes int colorId){
return getIconsCache().getIcon(id, colorId);
}
protected Drawable getContentIcon(@DrawableRes int id){
return getIconsCache().getThemedIcon(id);
}
protected void setThemedDrawable(View parent, @IdRes int viewId, @DrawableRes int iconId) {
((ImageView) parent.findViewById(viewId)).setImageDrawable(getContentIcon(iconId));
}
protected void setThemedDrawable(View view, @DrawableRes int iconId) {
((ImageView) view).setImageDrawable(getContentIcon(iconId));
}
protected OsmandSettings getSettings() {
return getMyApplication().getSettings();
}
}