diff options
Diffstat (limited to 'core')
-rw-r--r-- | core/java/android/print/PrintAttributes.java | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/core/java/android/print/PrintAttributes.java b/core/java/android/print/PrintAttributes.java index 959380d..ec979b3 100644 --- a/core/java/android/print/PrintAttributes.java +++ b/core/java/android/print/PrintAttributes.java @@ -22,10 +22,13 @@ import android.content.res.Resources.NotFoundException; import android.os.Parcel; import android.os.Parcelable; import android.text.TextUtils; +import android.util.ArrayMap; import android.util.Log; import com.android.internal.R; +import java.util.Map; + /** * This class represents the attributes of a print job. */ @@ -267,6 +270,9 @@ public final class PrintAttributes implements Parcelable { public static final class MediaSize { private static final String LOG_TAG = "MediaSize"; + private static final Map<String, MediaSize> sIdToMediaSizeMap = + new ArrayMap<String, MediaSize>(); + /** * Unknown media size in portrait mode. * <p> @@ -494,8 +500,8 @@ public final class PrintAttributes implements Parcelable { R.string.mediasize_chinese_prc_10, 12756, 18032); /** Chinese PRC 16k media size: 146mm x 215mm (5.749" x 8.465") */ - public static final MediaSize PRC_16k = - new MediaSize("PRC_16k", "android", + public static final MediaSize PRC_16K = + new MediaSize("PRC_16K", "android", R.string.mediasize_chinese_prc_16k, 5749, 8465); /** Chinese Pa Kai media size: 267mm x 389mm (10.512" x 15.315") */ public static final MediaSize OM_PA_KAI = @@ -651,6 +657,9 @@ public final class PrintAttributes implements Parcelable { mWidthMils = widthMils; mHeightMils = heightMils; mLabel = null; + + // Build this mapping only for predefined media sizes. + sIdToMediaSizeMap.put(mId, this); } /** @@ -854,6 +863,18 @@ public final class PrintAttributes implements Parcelable { builder.append("}"); return builder.toString(); } + + /** + * Gets a standard media size given its id. + * + * @param id The media size id. + * @return The media size for the given id or null. + * + * @hide + */ + public static MediaSize getStandardMediaSizeById(String id) { + return sIdToMediaSizeMap.get(id); + } } /** |