aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordaneren2005 <daneren2005@gmail.com>2013-07-31 16:11:56 -0700
committerdaneren2005 <daneren2005@gmail.com>2013-07-31 16:11:56 -0700
commit9dd195620495c5aa2126a1eb7ff93859a84d311b (patch)
tree7218c91b0b60677f2ed76f42a69968ce3d59b248 /src
parent2355947fa50405742e46fc1e339f773c1904ada4 (diff)
downloaddsub-9dd195620495c5aa2126a1eb7ff93859a84d311b.tar.gz
dsub-9dd195620495c5aa2126a1eb7ff93859a84d311b.tar.bz2
dsub-9dd195620495c5aa2126a1eb7ff93859a84d311b.zip
Remove IO from ArtistEntryView
Diffstat (limited to 'src')
-rw-r--r--src/github/daneren2005/dsub/view/ArtistEntryView.java43
1 files changed, 34 insertions, 9 deletions
diff --git a/src/github/daneren2005/dsub/view/ArtistEntryView.java b/src/github/daneren2005/dsub/view/ArtistEntryView.java
index 3b6a50e4..0a9af86e 100644
--- a/src/github/daneren2005/dsub/view/ArtistEntryView.java
+++ b/src/github/daneren2005/dsub/view/ArtistEntryView.java
@@ -41,10 +41,15 @@ public class ArtistEntryView extends UpdateView {
private Context context;
private MusicDirectory.Entry artist;
+ private File file;
private TextView titleView;
private ImageButton starButton;
private ImageView moreButton;
+
+ private boolean exists = false;
+ private boolean shaded = false;
+ private boolean starred = true;
public ArtistEntryView(Context context) {
super(context);
@@ -63,21 +68,41 @@ public class ArtistEntryView extends UpdateView {
public void setArtist(MusicDirectory.Entry artist) {
this.artist = artist;
-
titleView.setText(artist.getTitle());
- starButton.setVisibility((Util.isOffline(getContext()) || !artist.isStarred()) ? View.GONE : View.VISIBLE);
- starButton.setFocusable(false);
+ file = FileUtil.getArtistDirectory(context, artist);
+ updateBackground();
update();
}
+
+ @Override
+ protected void updateBackground() {
+ exists = file.exists();
+ }
@Override
protected void update() {
- starButton.setVisibility((Util.isOffline(getContext()) || !artist.isStarred()) ? View.GONE : View.VISIBLE);
- File file = FileUtil.getArtistDirectory(context, artist);
- if(file.exists()) {
- moreButton.setImageResource(R.drawable.list_item_more_shaded);
+ if(artist.isStarred()) {
+ if(!starred) {
+ starButton.setVisibility(View.VISIBLE);
+ starred = true;
+ }
} else {
- moreButton.setImageResource(R.drawable.list_item_more);
+ if(starred) {
+ starButton.setVisibility(View.GONE);
+ starred = false;
+ }
}
- }
+
+ if(exists) {
+ if(!shaded) {
+ moreButton.setImageResource(R.drawable.list_item_more_shaded);
+ shaded = true;
+ }
+ } else {
+ if(shaded) {
+ moreButton.setImageResource(R.drawable.list_item_more);
+ shaded = false;
+ }
+ }
+ }
}