19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/*
29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Copyright (C) 2006 The Android Open Source Project
39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * you may not use this file except in compliance with the License.
69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * You may obtain a copy of the License at
79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Unless required by applicable law or agreed to in writing, software
119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * See the License for the specific language governing permissions and
149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * limitations under the License.
159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpackage android.text.style;
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.os.Parcel;
209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.text.ParcelableSpan;
219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.text.TextPaint;
229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport android.text.TextUtils;
239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpublic class ForegroundColorSpan extends CharacterStyle
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        implements UpdateAppearance, ParcelableSpan {
269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    private final int mColor;
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
298a985d24ce9a38f40ed88fecbdcd0e75e3a68f44John Spurlock    public ForegroundColorSpan(int color) {
308a985d24ce9a38f40ed88fecbdcd0e75e3a68f44John Spurlock        mColor = color;
318a985d24ce9a38f40ed88fecbdcd0e75e3a68f44John Spurlock    }
329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public ForegroundColorSpan(Parcel src) {
349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        mColor = src.readInt();
359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public int getSpanTypeId() {
389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return TextUtils.FOREGROUND_COLOR_SPAN;
399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public int describeContents() {
429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        return 0;
439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    public void writeToParcel(Parcel dest, int flags) {
469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project        dest.writeInt(mColor);
479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    }
489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
498a985d24ce9a38f40ed88fecbdcd0e75e3a68f44John Spurlock    public int getForegroundColor() {
508a985d24ce9a38f40ed88fecbdcd0e75e3a68f44John Spurlock        return mColor;
518a985d24ce9a38f40ed88fecbdcd0e75e3a68f44John Spurlock    }
529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
538a985d24ce9a38f40ed88fecbdcd0e75e3a68f44John Spurlock    @Override
548a985d24ce9a38f40ed88fecbdcd0e75e3a68f44John Spurlock    public void updateDrawState(TextPaint ds) {
558a985d24ce9a38f40ed88fecbdcd0e75e3a68f44John Spurlock        ds.setColor(mColor);
568a985d24ce9a38f40ed88fecbdcd0e75e3a68f44John Spurlock    }
579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project}
58