aboutsummaryrefslogtreecommitdiff
path: root/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/configuration/Locale.java
diff options
context:
space:
mode:
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/configuration/Locale.java')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/configuration/Locale.java184
1 files changed, 0 insertions, 184 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/configuration/Locale.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/configuration/Locale.java
deleted file mode 100644
index 6cb396394..000000000
--- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/layout/configuration/Locale.java
+++ /dev/null
@@ -1,184 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Eclipse Public License, Version 1.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.eclipse.org/org/documents/epl-v10.php
- *
- * 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.ide.eclipse.adt.internal.editors.layout.configuration;
-
-import static com.android.ide.common.resources.configuration.LocaleQualifier.FAKE_VALUE;
-
-import com.android.annotations.NonNull;
-import com.android.annotations.Nullable;
-import com.android.ide.common.resources.configuration.FolderConfiguration;
-import com.android.ide.common.resources.configuration.LocaleQualifier;
-
-import org.eclipse.swt.graphics.Image;
-
-/**
- * A language,region pair
- */
-public class Locale {
- /**
- * A special marker region qualifier representing any region
- */
- public static final LocaleQualifier ANY_QUALIFIER = new LocaleQualifier(FAKE_VALUE);
-
- /**
- * A locale which matches any language and region
- */
- public static final Locale ANY = new Locale(ANY_QUALIFIER);
-
- /**
- * The locale qualifier, or {@link #ANY_QUALIFIER} if this locale matches
- * any locale
- */
- @NonNull
- public final LocaleQualifier qualifier;
-
- /**
- * Constructs a new {@linkplain Locale} matching a given language in a given
- * locale.
- *
- * @param locale the locale
- */
- private Locale(@NonNull
- LocaleQualifier locale) {
- qualifier = locale;
- }
-
- /**
- * Constructs a new {@linkplain Locale} matching a given language in a given
- * specific locale.
- *
- * @param locale the locale
- * @return a locale with the given locale
- */
- @NonNull
- public static Locale create(@NonNull
- LocaleQualifier locale) {
- return new Locale(locale);
- }
-
- /**
- * Constructs a new {@linkplain Locale} for the given folder configuration
- *
- * @param folder the folder configuration
- * @return a locale with the given language and region
- */
- public static Locale create(FolderConfiguration folder) {
- LocaleQualifier locale = folder.getLocaleQualifier();
- if (locale == null) {
- return ANY;
- } else {
- return new Locale(locale);
- }
- }
-
- /**
- * Constructs a new {@linkplain Locale} for the given locale string, e.g.
- * "zh", "en-rUS", or "b+eng+US".
- *
- * @param localeString the locale description
- * @return the corresponding locale
- */
- @NonNull
- public static Locale create(@NonNull
- String localeString) {
- // Load locale. Note that this can get overwritten by the
- // project-wide settings read below.
-
- LocaleQualifier qualifier = LocaleQualifier.getQualifier(localeString);
- if (qualifier != null) {
- return new Locale(qualifier);
- } else {
- return ANY;
- }
- }
-
- /**
- * Returns a flag image to use for this locale
- *
- * @return a flag image, or a default globe icon
- */
- @NonNull
- public Image getFlagImage() {
- String languageCode = qualifier.hasLanguage() ? qualifier.getLanguage() : null;
- if (languageCode == null) {
- return FlagManager.getGlobeIcon();
- }
- String regionCode = hasRegion() ? qualifier.getRegion() : null;
- FlagManager icons = FlagManager.get();
- Image image = icons.getFlag(languageCode, regionCode);
- if (image != null) {
- return image;
- } else {
- return FlagManager.getGlobeIcon();
- }
- }
-
- /**
- * Returns true if this locale specifies a specific language. This is true
- * for all locales except {@link #ANY}.
- *
- * @return true if this locale specifies a specific language
- */
- public boolean hasLanguage() {
- return !qualifier.hasFakeValue();
- }
-
- /**
- * Returns true if this locale specifies a specific region
- *
- * @return true if this locale specifies a region
- */
- public boolean hasRegion() {
- return qualifier.getRegion() != null && !FAKE_VALUE.equals(qualifier.getRegion());
- }
-
- /**
- * Returns the locale formatted as language-region. If region is not set,
- * language is returned. If language is not set, empty string is returned.
- */
- public String toLocaleId() {
- return qualifier == ANY_QUALIFIER ? "" : qualifier.getTag();
- }
-
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + qualifier.hashCode();
- return result;
- }
-
- @Override
- public boolean equals(@Nullable
- Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- Locale other = (Locale) obj;
- if (!qualifier.equals(other.qualifier))
- return false;
- return true;
- }
-
- @Override
- public String toString() {
- return qualifier.getTag();
- }
-}