Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7f4a11ce authored by Muyuan Li's avatar Muyuan Li Committed by android-build-merger
Browse files

sysui: refactored for extensibility. am: 29cbe66c

am: e2dc0e81

* commit 'e2dc0e81':
  sysui: refactored for extensibility.

Change-Id: Ibb4b8ccae063fa66ad2477cfd8d01b1a33be26d4
parents b83a9e20 e2dc0e81
Loading
Loading
Loading
Loading
+12 −4
Original line number Diff line number Diff line
@@ -35,11 +35,11 @@ public class SegmentedButtons extends LinearLayout {
    private static final Typeface MEDIUM = Typeface.create("sans-serif-medium", Typeface.NORMAL);

    private final Context mContext;
    private final LayoutInflater mInflater;
    protected final LayoutInflater mInflater;
    private final SpTexts mSpTexts;

    private Callback mCallback;
    private Object mSelectedValue;
    protected Object mSelectedValue;

    public SegmentedButtons(Context context, AttributeSet attrs) {
        super(context, attrs);
@@ -65,13 +65,21 @@ public class SegmentedButtons extends LinearLayout {
            final Object tag = c.getTag();
            final boolean selected = Objects.equals(mSelectedValue, tag);
            c.setSelected(selected);
            c.setTypeface(selected ? MEDIUM : REGULAR);
            setSelectedStyle(c, selected);
        }
        fireOnSelected(fromClick);
    }

    protected void setSelectedStyle(TextView textView, boolean selected) {
        textView.setTypeface(selected ? MEDIUM : REGULAR);
    }

    public Button inflateButton() {
        return (Button) mInflater.inflate(R.layout.segmented_button, this, false);
    }

    public void addButton(int labelResId, int contentDescriptionResId, Object value) {
        final Button b = (Button) mInflater.inflate(R.layout.segmented_button, this, false);
        final Button b = inflateButton();
        b.setTag(LABEL_RES_KEY, labelResId);
        b.setText(labelResId);
        b.setContentDescription(getResources().getString(contentDescriptionResId));