diff options
author | daniel oeh <daniel.oeh@gmail.com> | 2012-07-05 16:43:57 +0200 |
---|---|---|
committer | daniel oeh <daniel.oeh@gmail.com> | 2012-07-05 16:43:57 +0200 |
commit | 3768761e9031e1ccc1136d44fc1f8f0fe6dadb26 (patch) | |
tree | 3e693b74f0e74426765e9567a04470d1e326ea6a /src/de/podfetcher/adapter | |
parent | 3c4df7a89dbe1e82d99ccb42d7c4215b7fa112b4 (diff) | |
download | AntennaPod-3768761e9031e1ccc1136d44fc1f8f0fe6dadb26.zip |
Listitems are now highlighted when in actionmode
Diffstat (limited to 'src/de/podfetcher/adapter')
-rw-r--r-- | src/de/podfetcher/adapter/DownloadlistAdapter.java | 22 | ||||
-rw-r--r-- | src/de/podfetcher/adapter/FeedItemlistAdapter.java | 39 | ||||
-rw-r--r-- | src/de/podfetcher/adapter/FeedlistAdapter.java | 20 |
3 files changed, 74 insertions, 7 deletions
diff --git a/src/de/podfetcher/adapter/DownloadlistAdapter.java b/src/de/podfetcher/adapter/DownloadlistAdapter.java index f1b63cb37..b128bcf16 100644 --- a/src/de/podfetcher/adapter/DownloadlistAdapter.java +++ b/src/de/podfetcher/adapter/DownloadlistAdapter.java @@ -16,9 +16,14 @@ import de.podfetcher.feed.FeedMedia; import de.podfetcher.util.Converter; public class DownloadlistAdapter extends ArrayAdapter<DownloadStatus> { + private int selectedItemIndex; + + public static final int SELECTION_NONE = -1; + public DownloadlistAdapter(Context context, int textViewResourceId, DownloadStatus[] objects) { super(context, textViewResourceId, objects); + selectedItemIndex = SELECTION_NONE; } @Override @@ -47,6 +52,13 @@ public class DownloadlistAdapter extends ArrayAdapter<DownloadStatus> { holder = (Holder) convertView.getTag(); } + if (position == selectedItemIndex) { + convertView.setBackgroundColor(convertView.getResources().getColor( + R.color.selection_background)); + } else { + convertView.setBackgroundResource(0); + } + String titleText = null; if (feedFile.getClass() == FeedMedia.class) { titleText = ((FeedMedia) feedFile).getItem().getTitle(); @@ -72,4 +84,14 @@ public class DownloadlistAdapter extends ArrayAdapter<DownloadStatus> { TextView percent; ProgressBar progbar; } + + public int getSelectedItemIndex() { + return selectedItemIndex; + } + + public void setSelectedItemIndex(int selectedItemIndex) { + this.selectedItemIndex = selectedItemIndex; + notifyDataSetChanged(); + } + } diff --git a/src/de/podfetcher/adapter/FeedItemlistAdapter.java b/src/de/podfetcher/adapter/FeedItemlistAdapter.java index 544cd371a..d710a466a 100644 --- a/src/de/podfetcher/adapter/FeedItemlistAdapter.java +++ b/src/de/podfetcher/adapter/FeedItemlistAdapter.java @@ -18,17 +18,23 @@ import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.content.Context; +import android.graphics.Color; import android.graphics.Typeface; public class FeedItemlistAdapter extends ArrayAdapter<FeedItem> { private OnClickListener onButActionClicked; private boolean showFeedtitle; - + private int selectedItemIndex; + + public static final int SELECTION_NONE = -1; + public FeedItemlistAdapter(Context context, int textViewResourceId, - List<FeedItem> objects, OnClickListener onButActionClicked, boolean showFeedtitle) { + List<FeedItem> objects, OnClickListener onButActionClicked, + boolean showFeedtitle) { super(context, textViewResourceId, objects); this.onButActionClicked = onButActionClicked; this.showFeedtitle = showFeedtitle; + this.selectedItemIndex = SELECTION_NONE; } @Override @@ -57,14 +63,22 @@ public class FeedItemlistAdapter extends ArrayAdapter<FeedItem> { holder.encInfo = (RelativeLayout) convertView .findViewById(R.id.enc_info); if (showFeedtitle) { - holder.feedtitle = (TextView) convertView.findViewById(R.id.txtvFeedname); + holder.feedtitle = (TextView) convertView + .findViewById(R.id.txtvFeedname); } - + convertView.setTag(holder); } else { holder = (Holder) convertView.getTag(); } + if (position == selectedItemIndex) { + convertView.setBackgroundColor(convertView.getResources().getColor( + R.color.selection_background)); + } else { + convertView.setBackgroundResource(0); + } + holder.title.setText(item.getTitle()); if (showFeedtitle) { holder.feedtitle.setVisibility(View.VISIBLE); @@ -94,15 +108,15 @@ public class FeedItemlistAdapter extends ArrayAdapter<FeedItem> { .getSize())); holder.downloaded.setVisibility(View.GONE); } - + if (item.getMedia().isDownloading()) { holder.downloading.setVisibility(View.VISIBLE); } else { holder.downloading.setVisibility(View.GONE); } - + String type = item.getMedia().getMime_type(); - + if (type.startsWith("audio")) { holder.type.setImageResource(R.drawable.type_audio); } else if (type.startsWith("video")) { @@ -114,6 +128,7 @@ public class FeedItemlistAdapter extends ArrayAdapter<FeedItem> { holder.butAction.setFocusable(false); holder.butAction.setOnClickListener(onButActionClicked); + return convertView; } @@ -129,4 +144,14 @@ public class FeedItemlistAdapter extends ArrayAdapter<FeedItem> { ImageButton butAction; RelativeLayout encInfo; } + + public int getSelectedItemIndex() { + return selectedItemIndex; + } + + public void setSelectedItemIndex(int selectedItemIndex) { + this.selectedItemIndex = selectedItemIndex; + notifyDataSetChanged(); + } + } diff --git a/src/de/podfetcher/adapter/FeedlistAdapter.java b/src/de/podfetcher/adapter/FeedlistAdapter.java index 99676e866..9cf37793b 100644 --- a/src/de/podfetcher/adapter/FeedlistAdapter.java +++ b/src/de/podfetcher/adapter/FeedlistAdapter.java @@ -24,9 +24,13 @@ import android.graphics.Color; public class FeedlistAdapter extends ArrayAdapter<Feed> { private static final String TAG = "FeedlistAdapter"; + private int selectedItemIndex; + public static final int SELECTION_NONE = -1; + public FeedlistAdapter(Context context, int textViewResourceId, List<Feed> objects) { super(context, textViewResourceId, objects); + selectedItemIndex = SELECTION_NONE; } @Override @@ -57,6 +61,13 @@ public class FeedlistAdapter extends ArrayAdapter<Feed> { holder = (Holder) convertView.getTag(); } + if (position == selectedItemIndex) { + convertView.setBackgroundColor(convertView.getResources().getColor( + R.color.selection_background)); + } else { + convertView.setBackgroundResource(0); + } + holder.title.setText(feed.getTitle()); holder.lastUpdate.setText("Last Update: " + DateUtils.formatSameDayTime(feed.getLastUpdate().getTime(), @@ -93,4 +104,13 @@ public class FeedlistAdapter extends ArrayAdapter<Feed> { ImageView image; } + public int getSelectedItemIndex() { + return selectedItemIndex; + } + + public void setSelectedItemIndex(int selectedItemIndex) { + this.selectedItemIndex = selectedItemIndex; + notifyDataSetChanged(); + } + } |