171eb6908f2689bd17000237eb645896c36da0138George Mount/*
271eb6908f2689bd17000237eb645896c36da0138George Mount * Copyright (C) 2015 The Android Open Source Project
371eb6908f2689bd17000237eb645896c36da0138George Mount *
471eb6908f2689bd17000237eb645896c36da0138George Mount * Licensed under the Apache License, Version 2.0 (the "License");
571eb6908f2689bd17000237eb645896c36da0138George Mount * you may not use this file except in compliance with the License.
671eb6908f2689bd17000237eb645896c36da0138George Mount * You may obtain a copy of the License at
771eb6908f2689bd17000237eb645896c36da0138George Mount *
871eb6908f2689bd17000237eb645896c36da0138George Mount *      http://www.apache.org/licenses/LICENSE-2.0
971eb6908f2689bd17000237eb645896c36da0138George Mount *
1071eb6908f2689bd17000237eb645896c36da0138George Mount * Unless required by applicable law or agreed to in writing, software
1171eb6908f2689bd17000237eb645896c36da0138George Mount * distributed under the License is distributed on an "AS IS" BASIS,
1271eb6908f2689bd17000237eb645896c36da0138George Mount * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1371eb6908f2689bd17000237eb645896c36da0138George Mount * See the License for the specific language governing permissions and
1471eb6908f2689bd17000237eb645896c36da0138George Mount * limitations under the License.
1571eb6908f2689bd17000237eb645896c36da0138George Mount */
16fead9ca09b117136b35bc5bf137340a754f9edddGeorge Mountpackage android.databinding.testapp.vo;
1771eb6908f2689bd17000237eb645896c36da0138George Mount
18fead9ca09b117136b35bc5bf137340a754f9edddGeorge Mountimport android.databinding.Bindable;
19fead9ca09b117136b35bc5bf137340a754f9edddGeorge Mountimport android.databinding.adapters.TextViewBindingAdapter;
20fead9ca09b117136b35bc5bf137340a754f9edddGeorge Mountimport android.databinding.testapp.BR;
2171eb6908f2689bd17000237eb645896c36da0138George Mountimport android.text.Editable;
2271eb6908f2689bd17000237eb645896c36da0138George Mountimport android.text.InputType;
2371eb6908f2689bd17000237eb645896c36da0138George Mountimport android.text.method.KeyListener;
2471eb6908f2689bd17000237eb645896c36da0138George Mountimport android.text.method.TextKeyListener;
2571eb6908f2689bd17000237eb645896c36da0138George Mountimport android.text.util.Linkify;
2671eb6908f2689bd17000237eb645896c36da0138George Mountimport android.view.KeyEvent;
2771eb6908f2689bd17000237eb645896c36da0138George Mountimport android.view.View;
2871eb6908f2689bd17000237eb645896c36da0138George Mountimport android.widget.TextView;
2971eb6908f2689bd17000237eb645896c36da0138George Mount
3071eb6908f2689bd17000237eb645896c36da0138George Mountpublic class TextViewBindingObject extends BindingAdapterBindingObject {
3171eb6908f2689bd17000237eb645896c36da0138George Mount
3271eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
3371eb6908f2689bd17000237eb645896c36da0138George Mount    private int mAutoLink = Linkify.WEB_URLS;
3471eb6908f2689bd17000237eb645896c36da0138George Mount
3571eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
3671eb6908f2689bd17000237eb645896c36da0138George Mount    private int mDrawablePadding;
3771eb6908f2689bd17000237eb645896c36da0138George Mount
3871eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
3971eb6908f2689bd17000237eb645896c36da0138George Mount    private int mInputType = InputType.TYPE_CLASS_PHONE;
4071eb6908f2689bd17000237eb645896c36da0138George Mount
4171eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
4271eb6908f2689bd17000237eb645896c36da0138George Mount    private boolean mScrollHorizontally;
4371eb6908f2689bd17000237eb645896c36da0138George Mount
4471eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
4571eb6908f2689bd17000237eb645896c36da0138George Mount    private boolean mTextAllCaps;
4671eb6908f2689bd17000237eb645896c36da0138George Mount
4771eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
4871eb6908f2689bd17000237eb645896c36da0138George Mount    private int mTextColorHighlight;
4971eb6908f2689bd17000237eb645896c36da0138George Mount
5071eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
5171eb6908f2689bd17000237eb645896c36da0138George Mount    private int mTextColorHint;
5271eb6908f2689bd17000237eb645896c36da0138George Mount
5371eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
5471eb6908f2689bd17000237eb645896c36da0138George Mount    private int mTextColorLink;
5571eb6908f2689bd17000237eb645896c36da0138George Mount
5671eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
5771eb6908f2689bd17000237eb645896c36da0138George Mount    private boolean mAutoText;
5871eb6908f2689bd17000237eb645896c36da0138George Mount
5971eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
6071eb6908f2689bd17000237eb645896c36da0138George Mount    private TextKeyListener.Capitalize mCapitalize = TextKeyListener.Capitalize.NONE;
6171eb6908f2689bd17000237eb645896c36da0138George Mount
6271eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
6371eb6908f2689bd17000237eb645896c36da0138George Mount    private TextView.BufferType mBufferType = TextView.BufferType.NORMAL;
6471eb6908f2689bd17000237eb645896c36da0138George Mount
6571eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
6671eb6908f2689bd17000237eb645896c36da0138George Mount    private String mDigits = "abcdefg";
6771eb6908f2689bd17000237eb645896c36da0138George Mount
6871eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
6971eb6908f2689bd17000237eb645896c36da0138George Mount    private int mNumeric = TextViewBindingAdapter.DECIMAL;
7071eb6908f2689bd17000237eb645896c36da0138George Mount
7171eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
7271eb6908f2689bd17000237eb645896c36da0138George Mount    private boolean mPhoneNumber;
7371eb6908f2689bd17000237eb645896c36da0138George Mount
7471eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
7571eb6908f2689bd17000237eb645896c36da0138George Mount    private int mDrawableBottom;
7671eb6908f2689bd17000237eb645896c36da0138George Mount
7771eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
7871eb6908f2689bd17000237eb645896c36da0138George Mount    private int mDrawableTop;
7971eb6908f2689bd17000237eb645896c36da0138George Mount
8071eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
8171eb6908f2689bd17000237eb645896c36da0138George Mount    private int mDrawableLeft;
8271eb6908f2689bd17000237eb645896c36da0138George Mount
8371eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
8471eb6908f2689bd17000237eb645896c36da0138George Mount    private int mDrawableRight;
8571eb6908f2689bd17000237eb645896c36da0138George Mount
8671eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
8771eb6908f2689bd17000237eb645896c36da0138George Mount    private int mDrawableStart;
8871eb6908f2689bd17000237eb645896c36da0138George Mount
8971eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
9071eb6908f2689bd17000237eb645896c36da0138George Mount    private int mDrawableEnd;
9171eb6908f2689bd17000237eb645896c36da0138George Mount
9271eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
9371eb6908f2689bd17000237eb645896c36da0138George Mount    private String mImeActionLabel;
9471eb6908f2689bd17000237eb645896c36da0138George Mount
9571eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
9671eb6908f2689bd17000237eb645896c36da0138George Mount    private int mImeActionId;
9771eb6908f2689bd17000237eb645896c36da0138George Mount
9871eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
9971eb6908f2689bd17000237eb645896c36da0138George Mount    private String mInputMethod
100fead9ca09b117136b35bc5bf137340a754f9edddGeorge Mount            = "android.databinding.testapp.vo.TextViewBindingObject$KeyListener1";
10171eb6908f2689bd17000237eb645896c36da0138George Mount
10271eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
10371eb6908f2689bd17000237eb645896c36da0138George Mount    private float mLineSpacingExtra;
10471eb6908f2689bd17000237eb645896c36da0138George Mount
10571eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
10671eb6908f2689bd17000237eb645896c36da0138George Mount    private float mLineSpacingMultiplier;
10771eb6908f2689bd17000237eb645896c36da0138George Mount
10871eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
10971eb6908f2689bd17000237eb645896c36da0138George Mount    private int mMaxLength;
11071eb6908f2689bd17000237eb645896c36da0138George Mount
11171eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
11271eb6908f2689bd17000237eb645896c36da0138George Mount    private int mShadowColor;
11371eb6908f2689bd17000237eb645896c36da0138George Mount
11471eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
11571eb6908f2689bd17000237eb645896c36da0138George Mount    private float mShadowDx;
11671eb6908f2689bd17000237eb645896c36da0138George Mount
11771eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
11871eb6908f2689bd17000237eb645896c36da0138George Mount    private float mShadowDy;
11971eb6908f2689bd17000237eb645896c36da0138George Mount
12071eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
12171eb6908f2689bd17000237eb645896c36da0138George Mount    private float mShadowRadius;
12271eb6908f2689bd17000237eb645896c36da0138George Mount
12371eb6908f2689bd17000237eb645896c36da0138George Mount    @Bindable
12471eb6908f2689bd17000237eb645896c36da0138George Mount    private float mTextSize = 10f;
12571eb6908f2689bd17000237eb645896c36da0138George Mount
12671eb6908f2689bd17000237eb645896c36da0138George Mount    public TextView.BufferType getBufferType() {
12771eb6908f2689bd17000237eb645896c36da0138George Mount        return mBufferType;
12871eb6908f2689bd17000237eb645896c36da0138George Mount    }
12971eb6908f2689bd17000237eb645896c36da0138George Mount
13071eb6908f2689bd17000237eb645896c36da0138George Mount    public float getLineSpacingExtra() {
13171eb6908f2689bd17000237eb645896c36da0138George Mount        return mLineSpacingExtra;
13271eb6908f2689bd17000237eb645896c36da0138George Mount    }
13371eb6908f2689bd17000237eb645896c36da0138George Mount
13471eb6908f2689bd17000237eb645896c36da0138George Mount    public float getLineSpacingMultiplier() {
13571eb6908f2689bd17000237eb645896c36da0138George Mount        return mLineSpacingMultiplier;
13671eb6908f2689bd17000237eb645896c36da0138George Mount    }
13771eb6908f2689bd17000237eb645896c36da0138George Mount
13871eb6908f2689bd17000237eb645896c36da0138George Mount    public float getShadowDx() {
13971eb6908f2689bd17000237eb645896c36da0138George Mount        return mShadowDx;
14071eb6908f2689bd17000237eb645896c36da0138George Mount    }
14171eb6908f2689bd17000237eb645896c36da0138George Mount
14271eb6908f2689bd17000237eb645896c36da0138George Mount    public float getShadowDy() {
14371eb6908f2689bd17000237eb645896c36da0138George Mount        return mShadowDy;
14471eb6908f2689bd17000237eb645896c36da0138George Mount    }
14571eb6908f2689bd17000237eb645896c36da0138George Mount
14671eb6908f2689bd17000237eb645896c36da0138George Mount    public float getShadowRadius() {
14771eb6908f2689bd17000237eb645896c36da0138George Mount        return mShadowRadius;
14871eb6908f2689bd17000237eb645896c36da0138George Mount    }
14971eb6908f2689bd17000237eb645896c36da0138George Mount
15071eb6908f2689bd17000237eb645896c36da0138George Mount    public float getTextSize() {
15171eb6908f2689bd17000237eb645896c36da0138George Mount        return mTextSize;
15271eb6908f2689bd17000237eb645896c36da0138George Mount    }
15371eb6908f2689bd17000237eb645896c36da0138George Mount
15471eb6908f2689bd17000237eb645896c36da0138George Mount    public int getAutoLink() {
15571eb6908f2689bd17000237eb645896c36da0138George Mount        return mAutoLink;
15671eb6908f2689bd17000237eb645896c36da0138George Mount    }
15771eb6908f2689bd17000237eb645896c36da0138George Mount
15871eb6908f2689bd17000237eb645896c36da0138George Mount    public int getDrawableBottom() {
15971eb6908f2689bd17000237eb645896c36da0138George Mount        return mDrawableBottom;
16071eb6908f2689bd17000237eb645896c36da0138George Mount    }
16171eb6908f2689bd17000237eb645896c36da0138George Mount
16271eb6908f2689bd17000237eb645896c36da0138George Mount    public int getDrawableEnd() {
16371eb6908f2689bd17000237eb645896c36da0138George Mount        return mDrawableEnd;
16471eb6908f2689bd17000237eb645896c36da0138George Mount    }
16571eb6908f2689bd17000237eb645896c36da0138George Mount
16671eb6908f2689bd17000237eb645896c36da0138George Mount    public int getDrawableLeft() {
16771eb6908f2689bd17000237eb645896c36da0138George Mount        return mDrawableLeft;
16871eb6908f2689bd17000237eb645896c36da0138George Mount    }
16971eb6908f2689bd17000237eb645896c36da0138George Mount
17071eb6908f2689bd17000237eb645896c36da0138George Mount    public int getDrawablePadding() {
17171eb6908f2689bd17000237eb645896c36da0138George Mount        return mDrawablePadding;
17271eb6908f2689bd17000237eb645896c36da0138George Mount    }
17371eb6908f2689bd17000237eb645896c36da0138George Mount
17471eb6908f2689bd17000237eb645896c36da0138George Mount    public int getDrawableRight() {
17571eb6908f2689bd17000237eb645896c36da0138George Mount        return mDrawableRight;
17671eb6908f2689bd17000237eb645896c36da0138George Mount    }
17771eb6908f2689bd17000237eb645896c36da0138George Mount
17871eb6908f2689bd17000237eb645896c36da0138George Mount    public int getDrawableStart() {
17971eb6908f2689bd17000237eb645896c36da0138George Mount        return mDrawableStart;
18071eb6908f2689bd17000237eb645896c36da0138George Mount    }
18171eb6908f2689bd17000237eb645896c36da0138George Mount
18271eb6908f2689bd17000237eb645896c36da0138George Mount    public int getDrawableTop() {
18371eb6908f2689bd17000237eb645896c36da0138George Mount        return mDrawableTop;
18471eb6908f2689bd17000237eb645896c36da0138George Mount    }
18571eb6908f2689bd17000237eb645896c36da0138George Mount
18671eb6908f2689bd17000237eb645896c36da0138George Mount    public int getImeActionId() {
18771eb6908f2689bd17000237eb645896c36da0138George Mount        return mImeActionId;
18871eb6908f2689bd17000237eb645896c36da0138George Mount    }
18971eb6908f2689bd17000237eb645896c36da0138George Mount
19071eb6908f2689bd17000237eb645896c36da0138George Mount    public int getInputType() {
19171eb6908f2689bd17000237eb645896c36da0138George Mount        return mInputType;
19271eb6908f2689bd17000237eb645896c36da0138George Mount    }
19371eb6908f2689bd17000237eb645896c36da0138George Mount
19471eb6908f2689bd17000237eb645896c36da0138George Mount    public int getMaxLength() {
19571eb6908f2689bd17000237eb645896c36da0138George Mount        return mMaxLength;
19671eb6908f2689bd17000237eb645896c36da0138George Mount    }
19771eb6908f2689bd17000237eb645896c36da0138George Mount
19871eb6908f2689bd17000237eb645896c36da0138George Mount    public int getNumeric() {
19971eb6908f2689bd17000237eb645896c36da0138George Mount        return mNumeric;
20071eb6908f2689bd17000237eb645896c36da0138George Mount    }
20171eb6908f2689bd17000237eb645896c36da0138George Mount
20271eb6908f2689bd17000237eb645896c36da0138George Mount    public int getShadowColor() {
20371eb6908f2689bd17000237eb645896c36da0138George Mount        return mShadowColor;
20471eb6908f2689bd17000237eb645896c36da0138George Mount    }
20571eb6908f2689bd17000237eb645896c36da0138George Mount
20671eb6908f2689bd17000237eb645896c36da0138George Mount    public int getTextColorHighlight() {
20771eb6908f2689bd17000237eb645896c36da0138George Mount        return mTextColorHighlight;
20871eb6908f2689bd17000237eb645896c36da0138George Mount    }
20971eb6908f2689bd17000237eb645896c36da0138George Mount
21071eb6908f2689bd17000237eb645896c36da0138George Mount    public int getTextColorHint() {
21171eb6908f2689bd17000237eb645896c36da0138George Mount        return mTextColorHint;
21271eb6908f2689bd17000237eb645896c36da0138George Mount    }
21371eb6908f2689bd17000237eb645896c36da0138George Mount
21471eb6908f2689bd17000237eb645896c36da0138George Mount    public int getTextColorLink() {
21571eb6908f2689bd17000237eb645896c36da0138George Mount        return mTextColorLink;
21671eb6908f2689bd17000237eb645896c36da0138George Mount    }
21771eb6908f2689bd17000237eb645896c36da0138George Mount
21871eb6908f2689bd17000237eb645896c36da0138George Mount    public String getDigits() {
21971eb6908f2689bd17000237eb645896c36da0138George Mount        return mDigits;
22071eb6908f2689bd17000237eb645896c36da0138George Mount    }
22171eb6908f2689bd17000237eb645896c36da0138George Mount
22271eb6908f2689bd17000237eb645896c36da0138George Mount    public String getImeActionLabel() {
22371eb6908f2689bd17000237eb645896c36da0138George Mount        return mImeActionLabel;
22471eb6908f2689bd17000237eb645896c36da0138George Mount    }
22571eb6908f2689bd17000237eb645896c36da0138George Mount
22671eb6908f2689bd17000237eb645896c36da0138George Mount    public String getInputMethod() {
22771eb6908f2689bd17000237eb645896c36da0138George Mount        return mInputMethod;
22871eb6908f2689bd17000237eb645896c36da0138George Mount    }
22971eb6908f2689bd17000237eb645896c36da0138George Mount
23071eb6908f2689bd17000237eb645896c36da0138George Mount    public boolean isAutoText() {
23171eb6908f2689bd17000237eb645896c36da0138George Mount        return mAutoText;
23271eb6908f2689bd17000237eb645896c36da0138George Mount    }
23371eb6908f2689bd17000237eb645896c36da0138George Mount
23471eb6908f2689bd17000237eb645896c36da0138George Mount    public TextKeyListener.Capitalize getCapitalize() {
23571eb6908f2689bd17000237eb645896c36da0138George Mount        return mCapitalize;
23671eb6908f2689bd17000237eb645896c36da0138George Mount    }
23771eb6908f2689bd17000237eb645896c36da0138George Mount
23871eb6908f2689bd17000237eb645896c36da0138George Mount    public void setCapitalize(TextKeyListener.Capitalize capitalize) {
23971eb6908f2689bd17000237eb645896c36da0138George Mount        mCapitalize = capitalize;
240a6e4583962e19e8e93b4ca3f9fe3d34560b6d96cYigit Boyar        notifyPropertyChanged(BR.capitalize);
24171eb6908f2689bd17000237eb645896c36da0138George Mount    }
24271eb6908f2689bd17000237eb645896c36da0138George Mount
24371eb6908f2689bd17000237eb645896c36da0138George Mount    public boolean isPhoneNumber() {
24471eb6908f2689bd17000237eb645896c36da0138George Mount        return mPhoneNumber;
24571eb6908f2689bd17000237eb645896c36da0138George Mount    }
24671eb6908f2689bd17000237eb645896c36da0138George Mount
24771eb6908f2689bd17000237eb645896c36da0138George Mount    public boolean isScrollHorizontally() {
24871eb6908f2689bd17000237eb645896c36da0138George Mount        return mScrollHorizontally;
24971eb6908f2689bd17000237eb645896c36da0138George Mount    }
25071eb6908f2689bd17000237eb645896c36da0138George Mount
25171eb6908f2689bd17000237eb645896c36da0138George Mount    public boolean isTextAllCaps() {
25271eb6908f2689bd17000237eb645896c36da0138George Mount        return mTextAllCaps;
25371eb6908f2689bd17000237eb645896c36da0138George Mount    }
25471eb6908f2689bd17000237eb645896c36da0138George Mount
25571eb6908f2689bd17000237eb645896c36da0138George Mount    public void changeValues() {
25671eb6908f2689bd17000237eb645896c36da0138George Mount        mAutoLink = Linkify.EMAIL_ADDRESSES;
25771eb6908f2689bd17000237eb645896c36da0138George Mount        mDrawablePadding = 10;
25871eb6908f2689bd17000237eb645896c36da0138George Mount        mInputType = InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_CAP_WORDS;
25971eb6908f2689bd17000237eb645896c36da0138George Mount        mScrollHorizontally = true;
26071eb6908f2689bd17000237eb645896c36da0138George Mount        mTextAllCaps = true;
26171eb6908f2689bd17000237eb645896c36da0138George Mount        mTextColorHighlight = 0xFF00FF00;
26271eb6908f2689bd17000237eb645896c36da0138George Mount        mTextColorHint = 0xFFFF0000;
26371eb6908f2689bd17000237eb645896c36da0138George Mount        mTextColorLink = 0xFF0000FF;
26471eb6908f2689bd17000237eb645896c36da0138George Mount        mAutoText = true;
26571eb6908f2689bd17000237eb645896c36da0138George Mount        mCapitalize = TextKeyListener.Capitalize.SENTENCES;
26671eb6908f2689bd17000237eb645896c36da0138George Mount        mBufferType = TextView.BufferType.SPANNABLE;
26771eb6908f2689bd17000237eb645896c36da0138George Mount        mDigits = "hijklmno";
26871eb6908f2689bd17000237eb645896c36da0138George Mount        mNumeric = TextViewBindingAdapter.SIGNED;
26971eb6908f2689bd17000237eb645896c36da0138George Mount        mPhoneNumber = true;
27071eb6908f2689bd17000237eb645896c36da0138George Mount        mDrawableBottom = 0xFF880088;
27171eb6908f2689bd17000237eb645896c36da0138George Mount        mDrawableTop = 0xFF111111;
27271eb6908f2689bd17000237eb645896c36da0138George Mount        mDrawableLeft = 0xFF222222;
27371eb6908f2689bd17000237eb645896c36da0138George Mount        mDrawableRight = 0xFF333333;
27471eb6908f2689bd17000237eb645896c36da0138George Mount        mDrawableStart = 0xFF444444;
27571eb6908f2689bd17000237eb645896c36da0138George Mount        mDrawableEnd = 0xFF555555;
27671eb6908f2689bd17000237eb645896c36da0138George Mount        mImeActionLabel = "Hello World";
27771eb6908f2689bd17000237eb645896c36da0138George Mount        mImeActionId = 3;
278fead9ca09b117136b35bc5bf137340a754f9edddGeorge Mount        mInputMethod = "android.databinding.testapp.vo.TextViewBindingObject$KeyListener2";
27971eb6908f2689bd17000237eb645896c36da0138George Mount        mLineSpacingExtra = 2;
28071eb6908f2689bd17000237eb645896c36da0138George Mount        mLineSpacingMultiplier = 3;
28171eb6908f2689bd17000237eb645896c36da0138George Mount        mMaxLength = 100;
28271eb6908f2689bd17000237eb645896c36da0138George Mount        mShadowColor = 0xFF666666;
28371eb6908f2689bd17000237eb645896c36da0138George Mount        mShadowDx = 2;
28471eb6908f2689bd17000237eb645896c36da0138George Mount        mShadowDy = 3;
28571eb6908f2689bd17000237eb645896c36da0138George Mount        mShadowRadius = 4;
28671eb6908f2689bd17000237eb645896c36da0138George Mount        mTextSize = 20f;
28771eb6908f2689bd17000237eb645896c36da0138George Mount        notifyChange();
28871eb6908f2689bd17000237eb645896c36da0138George Mount    }
28971eb6908f2689bd17000237eb645896c36da0138George Mount
29071eb6908f2689bd17000237eb645896c36da0138George Mount    public static class KeyListener1 implements KeyListener {
29171eb6908f2689bd17000237eb645896c36da0138George Mount
29271eb6908f2689bd17000237eb645896c36da0138George Mount        @Override
29371eb6908f2689bd17000237eb645896c36da0138George Mount        public int getInputType() {
29471eb6908f2689bd17000237eb645896c36da0138George Mount            return InputType.TYPE_CLASS_TEXT;
29571eb6908f2689bd17000237eb645896c36da0138George Mount        }
29671eb6908f2689bd17000237eb645896c36da0138George Mount
29771eb6908f2689bd17000237eb645896c36da0138George Mount        @Override
29871eb6908f2689bd17000237eb645896c36da0138George Mount        public boolean onKeyDown(View view, Editable text, int keyCode, KeyEvent event) {
29971eb6908f2689bd17000237eb645896c36da0138George Mount            return false;
30071eb6908f2689bd17000237eb645896c36da0138George Mount        }
30171eb6908f2689bd17000237eb645896c36da0138George Mount
30271eb6908f2689bd17000237eb645896c36da0138George Mount        @Override
30371eb6908f2689bd17000237eb645896c36da0138George Mount        public boolean onKeyUp(View view, Editable text, int keyCode, KeyEvent event) {
30471eb6908f2689bd17000237eb645896c36da0138George Mount            return false;
30571eb6908f2689bd17000237eb645896c36da0138George Mount        }
30671eb6908f2689bd17000237eb645896c36da0138George Mount
30771eb6908f2689bd17000237eb645896c36da0138George Mount        @Override
30871eb6908f2689bd17000237eb645896c36da0138George Mount        public boolean onKeyOther(View view, Editable text, KeyEvent event) {
30971eb6908f2689bd17000237eb645896c36da0138George Mount            return false;
31071eb6908f2689bd17000237eb645896c36da0138George Mount        }
31171eb6908f2689bd17000237eb645896c36da0138George Mount
31271eb6908f2689bd17000237eb645896c36da0138George Mount        @Override
31371eb6908f2689bd17000237eb645896c36da0138George Mount        public void clearMetaKeyState(View view, Editable content, int states) {
31471eb6908f2689bd17000237eb645896c36da0138George Mount        }
31571eb6908f2689bd17000237eb645896c36da0138George Mount    }
31671eb6908f2689bd17000237eb645896c36da0138George Mount
31771eb6908f2689bd17000237eb645896c36da0138George Mount    public static class KeyListener2 extends KeyListener1 {
31871eb6908f2689bd17000237eb645896c36da0138George Mount
31971eb6908f2689bd17000237eb645896c36da0138George Mount    }
32071eb6908f2689bd17000237eb645896c36da0138George Mount}
321