/** * */ package net.tasksnow.model.cards; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.widget.ImageView; import android.widget.TextView; import net.tasksnow.R; import net.tasksnow.util.DateUtils; import net.tasksnow.view.reuse.GenericListAdapter.ListItem; import net.tasksnow.view.task.ActionMapper; /** * @author D056974 * */ public class TaskItem implements ListItem { private Task task = null; public static final int ITEM_TYPE = 1; public TaskItem(Task task) { this.task = task; } @Override public boolean filter(CharSequence constraint) { String constraintStr = constraint.toString().toLowerCase(); if (this.task.getName().toLowerCase().contains(constraintStr)) { return true; } else if ((this.task.getDescription() != null) && this.task.getDescription().toLowerCase().contains(constraintStr)) { return true; } return false; } @Override public int getType() { // TODO Auto-generated method stub return ITEM_TYPE; } @Override public View getListItemView(View convertView, Context context) { if (convertView == null) { convertView = LayoutInflater.from(context).inflate(R.layout.task_card, null); } TextView taskName = (TextView) convertView.findViewById(R.id.card_title); taskName.setText(this.task.getName()); TextView taskTime = (TextView) convertView.findViewById(R.id.task_time); if (task.getDate() != null) taskTime.setText(DateUtils.getFormattedDate(this.task.getDate()));//TODO Null Pointer Exception TextView taskTags = (TextView) convertView.findViewById(R.id.task_tags); taskTags.setText(this.task.getLabelString()); TextView projectName = (TextView) convertView.findViewById(R.id.task_project_name); projectName.setText(this.task.getProjectName()); TextView taskDescription = (TextView) convertView.findViewById(R.id.task_note); if (this.task.getDescription() == null || this.task.getDescription().equals("")) taskDescription.setVisibility(View.GONE); else { taskDescription.setVisibility(View.VISIBLE); taskDescription.setText(this.task.getDescription()); } ImageView actionButton = (ImageView) convertView.findViewById(R.id.task_action_btn); if (ActionMapper.getActionImage(task.getAction(), context) != null) { actionButton.setVisibility(View.VISIBLE); convertView.findViewById(R.id.task_action_seperator).setVisibility(View.VISIBLE); actionButton.setImageDrawable(ActionMapper.getActionImage(task.getAction(), context)); } else { convertView.findViewById(R.id.task_action_seperator).setVisibility(View.GONE); actionButton.setVisibility(View.GONE); } return convertView; } @Override public boolean isEnabled() { // TODO Auto-generated method stub return true; } public Task getTask() { return task; } }