127a9fcc61823f919cee773df563b49ee11004f3bDan Sandler/* 227a9fcc61823f919cee773df563b49ee11004f3bDan Sandler * Copyright (C) 2016 The Android Open Source Project 327a9fcc61823f919cee773df563b49ee11004f3bDan Sandler * 427a9fcc61823f919cee773df563b49ee11004f3bDan Sandler * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file 527a9fcc61823f919cee773df563b49ee11004f3bDan Sandler * except in compliance with the License. You may obtain a copy of the License at 627a9fcc61823f919cee773df563b49ee11004f3bDan Sandler * 727a9fcc61823f919cee773df563b49ee11004f3bDan Sandler * http://www.apache.org/licenses/LICENSE-2.0 827a9fcc61823f919cee773df563b49ee11004f3bDan Sandler * 927a9fcc61823f919cee773df563b49ee11004f3bDan Sandler * Unless required by applicable law or agreed to in writing, software distributed under the 1027a9fcc61823f919cee773df563b49ee11004f3bDan Sandler * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 1127a9fcc61823f919cee773df563b49ee11004f3bDan Sandler * KIND, either express or implied. See the License for the specific language governing 1227a9fcc61823f919cee773df563b49ee11004f3bDan Sandler * permissions and limitations under the License. 1327a9fcc61823f919cee773df563b49ee11004f3bDan Sandler */ 1427a9fcc61823f919cee773df563b49ee11004f3bDan Sandler 1527a9fcc61823f919cee773df563b49ee11004f3bDan Sandlerpackage com.android.egg.neko; 1627a9fcc61823f919cee773df563b49ee11004f3bDan Sandler 1727a9fcc61823f919cee773df563b49ee11004f3bDan Sandlerimport android.content.Context; 1827a9fcc61823f919cee773df563b49ee11004f3bDan Sandlerimport android.content.res.TypedArray; 1927a9fcc61823f919cee773df563b49ee11004f3bDan Sandlerimport android.graphics.drawable.Drawable; 2027a9fcc61823f919cee773df563b49ee11004f3bDan Sandlerimport android.graphics.drawable.Icon; 2127a9fcc61823f919cee773df563b49ee11004f3bDan Sandler 2227a9fcc61823f919cee773df563b49ee11004f3bDan Sandlerimport com.android.egg.R; 2327a9fcc61823f919cee773df563b49ee11004f3bDan Sandler 2427a9fcc61823f919cee773df563b49ee11004f3bDan Sandlerpublic class Food { 2527a9fcc61823f919cee773df563b49ee11004f3bDan Sandler private final int mType; 2627a9fcc61823f919cee773df563b49ee11004f3bDan Sandler 2727a9fcc61823f919cee773df563b49ee11004f3bDan Sandler private static int[] sIcons; 2827a9fcc61823f919cee773df563b49ee11004f3bDan Sandler private static String[] sNames; 2927a9fcc61823f919cee773df563b49ee11004f3bDan Sandler 3027a9fcc61823f919cee773df563b49ee11004f3bDan Sandler public Food(int type) { 3127a9fcc61823f919cee773df563b49ee11004f3bDan Sandler mType = type; 3227a9fcc61823f919cee773df563b49ee11004f3bDan Sandler } 3327a9fcc61823f919cee773df563b49ee11004f3bDan Sandler 3427a9fcc61823f919cee773df563b49ee11004f3bDan Sandler public Icon getIcon(Context context) { 3527a9fcc61823f919cee773df563b49ee11004f3bDan Sandler if (sIcons == null) { 3627a9fcc61823f919cee773df563b49ee11004f3bDan Sandler TypedArray icons = context.getResources().obtainTypedArray(R.array.food_icons); 3727a9fcc61823f919cee773df563b49ee11004f3bDan Sandler sIcons = new int[icons.length()]; 3827a9fcc61823f919cee773df563b49ee11004f3bDan Sandler for (int i = 0; i < sIcons.length; i++) { 3927a9fcc61823f919cee773df563b49ee11004f3bDan Sandler sIcons[i] = icons.getResourceId(i, 0); 4027a9fcc61823f919cee773df563b49ee11004f3bDan Sandler } 4127a9fcc61823f919cee773df563b49ee11004f3bDan Sandler icons.recycle(); 4227a9fcc61823f919cee773df563b49ee11004f3bDan Sandler } 4327a9fcc61823f919cee773df563b49ee11004f3bDan Sandler return Icon.createWithResource(context, sIcons[mType]); 4427a9fcc61823f919cee773df563b49ee11004f3bDan Sandler } 4527a9fcc61823f919cee773df563b49ee11004f3bDan Sandler 4627a9fcc61823f919cee773df563b49ee11004f3bDan Sandler public String getName(Context context) { 4727a9fcc61823f919cee773df563b49ee11004f3bDan Sandler if (sNames == null) { 4827a9fcc61823f919cee773df563b49ee11004f3bDan Sandler sNames = context.getResources().getStringArray(R.array.food_names); 4927a9fcc61823f919cee773df563b49ee11004f3bDan Sandler } 5027a9fcc61823f919cee773df563b49ee11004f3bDan Sandler return sNames[mType]; 5127a9fcc61823f919cee773df563b49ee11004f3bDan Sandler } 5227a9fcc61823f919cee773df563b49ee11004f3bDan Sandler 5327a9fcc61823f919cee773df563b49ee11004f3bDan Sandler public long getInterval(Context context) { 5427a9fcc61823f919cee773df563b49ee11004f3bDan Sandler return context.getResources().getIntArray(R.array.food_intervals)[mType]; 5527a9fcc61823f919cee773df563b49ee11004f3bDan Sandler } 5627a9fcc61823f919cee773df563b49ee11004f3bDan Sandler 5727a9fcc61823f919cee773df563b49ee11004f3bDan Sandler public int getType() { 5827a9fcc61823f919cee773df563b49ee11004f3bDan Sandler return mType; 5927a9fcc61823f919cee773df563b49ee11004f3bDan Sandler } 6027a9fcc61823f919cee773df563b49ee11004f3bDan Sandler} 61