Welcome to mirror list, hosted at ThFree Co, Russian Federation.

BottomSheetItem.java « maplayer « maps « mapswithme « com « src « android - github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 5398cb1ec66a7c746f8ba647e11fab8027d64409 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
package com.mapswithme.maps.maplayer;

import android.content.Context;
import androidx.annotation.DrawableRes;
import androidx.annotation.NonNull;
import androidx.annotation.StringRes;

import com.mapswithme.maps.R;
import com.mapswithme.util.ThemeUtils;

public abstract class BottomSheetItem
{
  @DrawableRes
  private final int mEnabledStateDrawableResId;
  @DrawableRes
  private final int mDisabledStateDrawableResId;
  @StringRes
  private final int mTitleResId;
  @NonNull
  private final Mode mMode;

  BottomSheetItem(@DrawableRes int enabledStateDrawableResId,
                  @DrawableRes int disabledStateDrawableResId,
                  @StringRes int titleResId,
                  @NonNull Mode mode)
  {
    mEnabledStateDrawableResId = enabledStateDrawableResId;
    mDisabledStateDrawableResId = disabledStateDrawableResId;
    mTitleResId = titleResId;
    mMode = mode;
  }

  @NonNull
  public Mode getMode()
  {
    return mMode;
  }

  @DrawableRes
  public int getEnabledStateDrawable()
  {
    return mEnabledStateDrawableResId;
  }

  @DrawableRes
  public int getDisabledStateDrawable()
  {
    return mDisabledStateDrawableResId;
  }

  @StringRes
  public int getTitle()
  {
    return mTitleResId;
  }

  public static class Subway extends BottomSheetItem
  {
    private Subway(int drawableResId, int disabledStateDrawableResId)
    {
      super(drawableResId, disabledStateDrawableResId, R.string.button_layer_subway, Mode.SUBWAY);
    }

    public static BottomSheetItem makeInstance(@NonNull Context mContext)
    {
      int disabled = ThemeUtils.getResource(mContext, R.attr.subwayMenuDisabled);
      return new Subway(R.drawable.ic_subway_menu_on, disabled);
    }
  }

  public static class Traffic extends BottomSheetItem
  {
    private Traffic(int drawableResId, int disabledStateDrawableResId)
    {
      super(drawableResId, disabledStateDrawableResId, R.string.button_layer_traffic, Mode.TRAFFIC);
    }

    public static BottomSheetItem makeInstance(@NonNull Context mContext)
    {
      int disabled = ThemeUtils.getResource(mContext, R.attr.trafficMenuDisabled);

      return new Traffic(R.drawable.ic_traffic_menu_on, disabled);
    }
  }
}