package net.osmand.core.samples.android.sample1.mapcontextmenu;
import android.graphics.drawable.Drawable;
import net.osmand.core.samples.android.sample1.IconsCache;
import net.osmand.core.samples.android.sample1.MainActivity;
import net.osmand.core.samples.android.sample1.R;
import net.osmand.core.samples.android.sample1.SampleUtils;
public abstract class BaseMenuController {
private MainActivity mainActivity;
private boolean portraitMode;
private boolean nightMode;
private int landscapeWidthPx;
public BaseMenuController(MainActivity mainActivity) {
this.mainActivity = mainActivity;
init();
}
private void init() {
portraitMode = SampleUtils.isOrientationPortrait(mainActivity);
landscapeWidthPx = mainActivity.getResources().getDimensionPixelSize(R.dimen.dashboard_land_width);
updateNightMode();
}
public MainActivity getMainActivity() {
return mainActivity;
}
public void setMainActivity(MainActivity mainActivity) {
this.mainActivity = mainActivity;
init();
}
public boolean isLight() {
return !nightMode;
}
public void updateNightMode() {
//nightMode = mainActivity.getMyApplication().getDaynightHelper().isNightModeForMapControls();
}
public boolean isLandscapeLayout() {
return !portraitMode;
}
public int getLandscapeWidthPx() {
return landscapeWidthPx;
}
public float getHalfScreenMaxHeightKoef() {
return .7f;
}
public int getSlideInAnimation() {
if (isLandscapeLayout()) {
return R.anim.slide_in_left;
} else {
return R.anim.slide_in_bottom;
}
}
public int getSlideOutAnimation() {
if (isLandscapeLayout()) {
return R.anim.slide_out_left;
} else {
return R.anim.slide_out_bottom;
}
}
protected Drawable getIconOrig(int osmandIconId) {
IconsCache iconsCache = getMainActivity().getMyApplication().getIconsCache();
return iconsCache.getOsmandIcon(osmandIconId, 0);
}
protected Drawable getIcon(int osmandIconId) {
return getIcon(osmandIconId, isLight() ? R.color.icon_color : R.color.icon_color_light);
}
protected Drawable getIcon(int osmandIconId, int colorId) {
IconsCache iconsCache = getMainActivity().getMyApplication().getIconsCache();
return iconsCache.getOsmandIcon(osmandIconId, colorId);
}
protected Drawable getPaintedIcon(int osmandIconId, int color) {
IconsCache iconsCache = getMainActivity().getMyApplication().getIconsCache();
return iconsCache.getPaintedOsmandIcon(osmandIconId, color);
}
protected Drawable getIcon(int osmandIconId, int colorLightId, int colorDarkId) {
IconsCache iconsCache = getMainActivity().getMyApplication().getIconsCache();
return iconsCache.getOsmandIcon(osmandIconId, isLight() ? colorLightId : colorDarkId);
}
}