+++ /dev/null
-/*
- Copyright (C) 2014 Samsung Electronics Polska Sp. z o.o.
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU AFFERO General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
- You may obtain a copy of the License at
-
- http://www.gnu.org/licenses/agpl-3.0.txt
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-package com.samsung.srpol.ui.drawer;
-
-import java.util.Collection;
-
-import com.samsung.srpol.R;
-import com.samsung.srpol.data.Category;
-
-import android.content.Context;
-import android.text.Spannable;
-import android.text.SpannableString;
-import android.text.style.ForegroundColorSpan;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.ArrayAdapter;
-import android.widget.ImageView;
-import android.widget.TextView;
-
-public class CategoryArrayAdapter extends ArrayAdapter<Category> {
- private final Context mContext;
- private String mTextPrefix ;
- private String mCountTextPrefix;
- private int mSpanTextColor;
-
- private static class ViewHolder {
- TextView textView1;
- TextView textView2;
- TextView textView3;
- ImageView imageView;
- }
-
- public CategoryArrayAdapter(Context context) {
- super(context, R.layout.drawer_list_item);
- mTextPrefix = context.getResources().getString(R.string.drawer_header_text_prefix);
- mCountTextPrefix = context.getResources().getString(R.string.items_string_quantity);
- mSpanTextColor = context.getResources().getColor(R.color.text_menu);
- mContext = context;
- }
-
- @Override
- public void addAll(Collection<? extends Category> collection) {
- for (Category category : collection) {
- super.add(category);
- }
- }
-
- @Override
- public View getView(int position, View convertView, ViewGroup parent) {
- ViewHolder holder = null;
- if (convertView == null) {
- LayoutInflater inflater = (LayoutInflater) mContext
- .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
- convertView = inflater.inflate(R.layout.drawer_list_item, parent,
- false);
- holder = new ViewHolder();
- holder.textView1 = (TextView) convertView.findViewById(R.id.text1);
- holder.textView2 = (TextView) convertView.findViewById(R.id.text2);
- holder.textView3 = (TextView) convertView.findViewById(R.id.text3);
- holder.imageView = (ImageView) convertView.findViewById(R.id.icon);
-
- convertView.setTag(holder);
- } else {
- holder = (ViewHolder) convertView.getTag();
- }
-
- Category category = getItem(position);
- if (category.getIconRes() > 0)
- holder.imageView.setImageResource(category.getIconRes());
- holder.textView1.setText(mTextPrefix + category.getHeader());
- holder.textView2.setText(category.getShortDescription());
- holder.textView3.setText(createSpannableCountText(category.getCurrentlyVisible()));
- return convertView;
- }
-
- private Spannable createSpannableCountText(int count){
-
- Spannable spannable = new SpannableString(mCountTextPrefix + count);
- spannable.setSpan(new ForegroundColorSpan(mSpanTextColor),mCountTextPrefix.length(), spannable.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
- return spannable;
- }
-}