mirror of
https://github.com/MinimalBible/MinimalBible-Legacy
synced 2025-07-06 00:05:16 -04:00
Can now browse a list of documents!
This commit is contained in:
@ -0,0 +1,28 @@
|
||||
package org.bspeice.minimalbible.activities.downloader;
|
||||
|
||||
import android.content.Context;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import org.androidannotations.annotations.EViewGroup;
|
||||
import org.androidannotations.annotations.ViewById;
|
||||
import org.bspeice.minimalbible.R;
|
||||
import org.crosswire.jsword.book.Book;
|
||||
|
||||
@EViewGroup(R.layout.list_download_items)
|
||||
public class BookItemView extends RelativeLayout {
|
||||
|
||||
@ViewById (R.id.img_download_icon) ImageView downloadIcon;
|
||||
@ViewById(R.id.txt_download_item_name) TextView itemName;
|
||||
@ViewById(R.id.img_download_index_downloaded) ImageView isIndexedDownloaded;
|
||||
@ViewById(R.id.img_download_item_downloaded) ImageView isDownloaded;
|
||||
|
||||
public BookItemView (Context ctx) {
|
||||
super(ctx);
|
||||
}
|
||||
|
||||
public void bind(Book b) {
|
||||
itemName.setText(b.getName());
|
||||
}
|
||||
}
|
@ -0,0 +1,53 @@
|
||||
package org.bspeice.minimalbible.activities.downloader;
|
||||
|
||||
import android.content.Context;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.BaseAdapter;
|
||||
|
||||
import org.crosswire.jsword.book.Book;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Adapter to inflate list_download_items.xml
|
||||
*/
|
||||
public class BookListAdapter extends BaseAdapter {
|
||||
private List<Book> bookList;
|
||||
|
||||
private Context ctx;
|
||||
|
||||
public BookListAdapter(Context context, List<Book> bookList) {
|
||||
this.bookList = bookList;
|
||||
this.ctx = context;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getCount() {
|
||||
return bookList.size();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Book getItem(int position) {
|
||||
return bookList.get(position);
|
||||
}
|
||||
|
||||
@Override
|
||||
public long getItemId(int i) {
|
||||
return i;
|
||||
}
|
||||
|
||||
@Override
|
||||
public View getView(int position, View convertView, ViewGroup parent) {
|
||||
BookItemView itemView;
|
||||
if (convertView == null) {
|
||||
itemView = BookItemView_.build(this.ctx);
|
||||
|
||||
} else {
|
||||
itemView = (BookItemView) convertView;
|
||||
}
|
||||
|
||||
itemView.bind(getItem(position));
|
||||
return itemView;
|
||||
}
|
||||
}
|
@ -1,15 +1,20 @@
|
||||
package org.bspeice.minimalbible.activities.downloader;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.AlertDialog;
|
||||
import android.app.ProgressDialog;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.SharedPreferences;
|
||||
import android.os.Build;
|
||||
import android.support.v4.app.Fragment;
|
||||
import android.util.Log;
|
||||
import android.widget.TextView;
|
||||
import android.view.View;
|
||||
import android.widget.ListView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.readystatesoftware.systembartint.SystemBarTintManager;
|
||||
|
||||
import org.androidannotations.annotations.AfterViews;
|
||||
import org.androidannotations.annotations.EFragment;
|
||||
import org.androidannotations.annotations.FragmentArg;
|
||||
@ -38,8 +43,8 @@ public class BookListFragment extends Fragment {
|
||||
@FragmentArg
|
||||
BookCategory bookCategory;
|
||||
|
||||
@ViewById(R.id.section_label)
|
||||
protected TextView tv;
|
||||
@ViewById(R.id.lst_download_available)
|
||||
protected ListView downloadsAvailable;
|
||||
|
||||
private ProgressDialog refreshDialog;
|
||||
|
||||
@ -47,7 +52,6 @@ public class BookListFragment extends Fragment {
|
||||
@AfterViews
|
||||
public void updateName() {
|
||||
((DownloadActivity) getActivity()).onSectionAttached(bookCategory.toString());
|
||||
tv.setText(bookCategory.toString());
|
||||
displayModules();
|
||||
}
|
||||
|
||||
@ -97,11 +101,19 @@ public class BookListFragment extends Fragment {
|
||||
displayBooks(event.getBookList());
|
||||
}
|
||||
|
||||
public static void setInsets(Activity context, View view) {
|
||||
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) return;
|
||||
SystemBarTintManager tintManager = new SystemBarTintManager(context);
|
||||
SystemBarTintManager.SystemBarConfig config = tintManager.getConfig();
|
||||
view.setPadding(0, config.getPixelInsetTop(true), config.getPixelInsetRight(), config.getPixelInsetBottom());
|
||||
}
|
||||
|
||||
public void displayBooks(List<Book> bookList) {
|
||||
try {
|
||||
BookFilter f = FilterUtil.filterFromCategory(bookCategory);
|
||||
List<Book> filteredBooks = FilterUtil.applyFilter(bookList, f);
|
||||
tv.setText(filteredBooks.get(0).getName());
|
||||
downloadsAvailable.setAdapter(new BookListAdapter(this.getActivity(), filteredBooks));
|
||||
setInsets(getActivity(), downloadsAvailable);
|
||||
} catch (FilterUtil.InvalidFilterCategoryMappingException e) {
|
||||
// To be honest, there should be no reason you end up here.
|
||||
Log.e(TAG, e.getMessage());
|
||||
|
Reference in New Issue
Block a user