package roman10.ui.iconifiedtextselectedlist;
import java.lang.ref.WeakReference;
import android.graphics.drawable.Drawable;
public class IconifiedTextSelected implements Comparable<IconifiedTextSelected>{
private String mText = "";
//private SoftReference<Drawable> mIcon;
private WeakReference<Drawable> mIcon;
private Drawable mHardIcon;
private boolean mSelected;
private boolean mSelectable = true;
private boolean mVisibility;
private int mCid;
private int mRid;
private int mType; //0: default; 1: picture; 2:video; 21: hard picture; 22: hard video
private int mMediaType; //0: photo; 1: video
private int mFolderType;//0: photo; 1: video; 2: mixed, new type
public IconifiedTextSelected(String text, Drawable bullet, boolean selected, boolean visibility, int _type, int _mediaType, int _folderType) {
//mIcon = new SoftReference<Drawable>(bullet);
if ((_type==0) || (_type == 21) || (_type == 22)) {
mHardIcon = bullet;
} else {
mIcon = new WeakReference<Drawable>(bullet);
}
//mIcon = bullet;
mText = text;
mSelected = selected;
mVisibility = visibility;
mType = _type;
mMediaType = _mediaType;
mFolderType = _folderType;
}
public IconifiedTextSelected(String text, Drawable bullet, boolean selected, boolean visibility, int cid, int rid, int _type, int _mediaType, int _folderType) {
//mIcon = new SoftReference<Drawable>(bullet);
if ((_type==0) || (_type == 21) || (_type == 22)) {
mHardIcon = bullet;
} else {
mIcon = new WeakReference<Drawable>(bullet);
}
//mIcon = bullet;
mText = text;
mSelected = selected;
mVisibility = visibility;
mCid = cid;
mRid = rid;
mType = _type;
mMediaType = _mediaType;
mFolderType = _folderType;
}
public int getMediaType() {
return mMediaType;
}
public int getFolderType() {
return mFolderType;
}
public int getCid() {
return mCid;
}
public int getRid() {
return mRid;
}
public boolean isSelectable() {
return mSelectable;
}
public boolean getVisibility() {
return mVisibility;
}
public void setVisibility(boolean visibility) {
mVisibility = visibility;
}
public void setSelectable(boolean selectable) {
mSelectable = selectable;
}
public String getText() {
return mText;
}
public void setText(String text) {
mText = text;
}
public boolean getSelected() {
return mSelected;
}
public void setSelected(boolean selected) {
mSelected = selected;
}
public void setIcon(Drawable icon) {
if (mIcon!=null) {
mIcon = null;
}
if (mHardIcon!=null) {
mHardIcon = null;
}
if ((mType==0) || (mType == 21) || (mType == 22)) {
//mIcon = new SoftReference<Drawable>(icon);
mHardIcon = icon;
} else {
mIcon = new WeakReference<Drawable>(icon);
}
}
public Drawable getIcon() {
if ((mType==0) || (mType == 21) || (mType == 22)) {
return mHardIcon;
} else {
return mIcon.get();
}
}
public int getType() {
return mType;
}
//@Override
public int compareTo(IconifiedTextSelected other) {
if(this.mText != null)
return this.mText.compareTo(other.getText());
else
throw new IllegalArgumentException();
}
}