1 package org.openintents.filemanager;
\r
4 * Copyright 2007 Steven Osborn
\r
6 * Licensed under the Apache License, Version 2.0 (the "License");
\r
7 * you may not use this file except in compliance with the License.
\r
8 * You may obtain a copy of the License at
\r
10 * http://www.apache.org/licenses/LICENSE-2.0
\r
12 * Unless required by applicable law or agreed to in writing, software
\r
13 * distributed under the License is distributed on an "AS IS" BASIS,
\r
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
15 * See the License for the specific language governing permissions and
\r
16 * limitations under the License.
\r
19 import android.graphics.Bitmap;
\r
20 import android.graphics.drawable.BitmapDrawable;
\r
21 import android.graphics.drawable.Drawable;
\r
22 import android.os.Parcel;
\r
23 import android.os.Parcelable;
\r
25 /** @author Steven Osborn - http://steven.bitsetters.com
\r
26 * @author George Venios - implemented Parcelable */
\r
27 public class IconifiedText implements Comparable<IconifiedText>, Parcelable{
\r
29 private String mText = "";
\r
30 private String mInfo = "";
\r
31 private Drawable mIcon;
\r
32 private boolean mSelectable = true;
\r
33 private boolean mSelected;
\r
34 private boolean mCheckBoxVisible;
\r
36 public static final Parcelable.Creator CREATOR = new Parcelable.Creator() {
\r
37 public IconifiedText createFromParcel(Parcel in) {
\r
38 return new IconifiedText(in);
\r
41 public IconifiedText[] newArray(int size) {
\r
42 return new IconifiedText[size];
\r
46 public IconifiedText(String text, String info, Drawable bullet) {
\r
52 public IconifiedText(Parcel in){
\r
53 mText = in.readString();
\r
54 mInfo = in.readString();
\r
55 mSelectable = in.readInt()==1?true:false;
\r
56 mSelected = in.readInt()==1?true:false;
\r
57 mCheckBoxVisible = in.readInt()==1?true:false;
\r
60 public boolean isSelected() {
\r
64 public void setSelected(boolean selected) {
\r
65 this.mSelected = selected;
\r
68 public boolean isSelectable() {
\r
69 return mSelectable;
\r
72 public void setSelectable(boolean selectable) {
\r
73 mSelectable = selectable;
\r
76 public String getText() {
\r
80 public void setText(String text) {
\r
84 public String getInfo() {
\r
88 public void setInfo(String info) {
\r
92 public void setIcon(Drawable icon) {
\r
96 public void setIcon(Bitmap bitmap) {
\r
97 mIcon = (new BitmapDrawable(bitmap));
\r
100 public Drawable getIcon() {
\r
104 // Used by the adapter
\r
105 public Object getIconBitmap() {
\r
106 if(mIcon instanceof BitmapDrawable){
\r
107 return ((BitmapDrawable) mIcon).getBitmap();
\r
113 /** Make IconifiedText comparable by its name */
\r
115 public int compareTo(IconifiedText other) {
\r
116 if(this.mText != null)
\r
117 return this.mText.compareTo(other.getText());
\r
119 throw new IllegalArgumentException();
\r
122 public void setCheckIconVisible(boolean visible) {
\r
123 mCheckBoxVisible = visible;
\r
126 public boolean isCheckIconVisible() {
\r
127 return mCheckBoxVisible;
\r
131 public int describeContents() {
\r
132 // Auto-generated method stub
\r
137 public void writeToParcel(Parcel dest, int flags) {
\r
138 dest.writeString(mText);
\r
139 dest.writeString(mInfo);
\r
140 dest.writeInt(mSelectable?1:0);
\r
141 dest.writeInt(mSelected?1:0);
\r
142 dest.writeInt(mCheckBoxVisible?1:0);
\r