diff options
author | Xavier Ducrohet <xav@android.com> | 2012-08-07 16:30:38 -0700 |
---|---|---|
committer | Xavier Ducrohet <xav@android.com> | 2012-08-07 18:47:31 -0700 |
commit | 85e4a1a9dd133abb879ec211ce8dd385004edf22 (patch) | |
tree | 5e329ad383321880ec28627a3f6f4b9a5d646a61 /layoutlib_api/src/com/android/resources/Keyboard.java | |
parent | f9344c0eeacad791fe10a5d1ffc05de2187bf0c6 (diff) | |
download | sdk-85e4a1a9dd133abb879ec211ce8dd385004edf22.zip sdk-85e4a1a9dd133abb879ec211ce8dd385004edf22.tar.gz sdk-85e4a1a9dd133abb879ec211ce8dd385004edf22.tar.bz2 |
Refactor common.jar
Move resources and com.android.util.Pair into layoutlib_api
where they belong since layoutlib depends on them and we need
to control the API.
Made a copy of Pair to stay in common.jar but moved it to
com.android.utils.Pair (the one in com.android.util.Pair is
marked as deprecated to prevent usage where applicable).
Also moved XmlUtil and PositionXmlParser to com.android.utils
to match Pair.
Change-Id: I21d7057d3f2ce604f86a3bb1fa3c130948c93b89
Diffstat (limited to 'layoutlib_api/src/com/android/resources/Keyboard.java')
-rw-r--r-- | layoutlib_api/src/com/android/resources/Keyboard.java | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/layoutlib_api/src/com/android/resources/Keyboard.java b/layoutlib_api/src/com/android/resources/Keyboard.java new file mode 100644 index 0000000..d6bc80a --- /dev/null +++ b/layoutlib_api/src/com/android/resources/Keyboard.java @@ -0,0 +1,104 @@ +/* + * Copyright (C) 2010 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.resources; + +/** + * Keyboard enum. + * <p/>This is used in the manifest in the uses-configuration node and in the resource folder names. + */ +public enum Keyboard implements ResourceEnum { + NOKEY("nokeys", null, "No Keys", "No keyboard"), //$NON-NLS-1$ + QWERTY("qwerty", null, "Qwerty", "Qwerty keybard"), //$NON-NLS-1$ + TWELVEKEY("12key", "twelvekey", "12 Key", "12 key keyboard"); //$NON-NLS-1$ //$NON-NLS-2$ + + private final String mValue, mValue2; + private final String mShortDisplayValue; + private final String mLongDisplayValue; + + private Keyboard(String value, String value2, String shortDisplayValue, + String longDisplayValue) { + mValue = value; + mValue2 = value2; + mShortDisplayValue = shortDisplayValue; + mLongDisplayValue = longDisplayValue; + } + + /** + * Returns the enum for matching the provided qualifier value. + * @param value The qualifier value. + * @return the enum for the qualifier value or null if no matching was found. + */ + public static Keyboard getEnum(String value) { + for (Keyboard kbrd : values()) { + if (kbrd.mValue.equals(value) || + (kbrd.mValue2 != null && kbrd.mValue2.equals(value))) { + return kbrd; + } + } + + return null; + } + + @Override + public String getResourceValue() { + return mValue; + } + + @Override + public String getShortDisplayValue() { + return mShortDisplayValue; + } + + @Override + public String getLongDisplayValue() { + return mLongDisplayValue; + } + + public static int getIndex(Keyboard value) { + int i = 0; + for (Keyboard input : values()) { + if (value == input) { + return i; + } + + i++; + } + + return -1; + } + + public static Keyboard getByIndex(int index) { + int i = 0; + for (Keyboard value : values()) { + if (i == index) { + return value; + } + i++; + } + return null; + } + + @Override + public boolean isFakeValue() { + return false; + } + + @Override + public boolean isValidValueForDevice() { + return true; + } +} |