Search in sources :

Example 1 with BookmarksAdapter

use of com.foobnix.pdf.info.presentation.BookmarksAdapter in project LibreraReader by foobnix.

the class DragingDialogs method addBookmarks.

public static void addBookmarks(final FrameLayout anchor, final DocumentController controller, final Runnable onRefeshUI) {
    final List<AppBookmark> objects = new ArrayList<AppBookmark>();
    final BookmarksAdapter bookmarksAdapter = new BookmarksAdapter(anchor.getContext(), objects, true);
    final View.OnClickListener onAdd = new View.OnClickListener() {

        @Override
        public void onClick(final View v) {
            ListBoxHelper.showAddDialog(controller, objects, bookmarksAdapter, "");
        }
    };
    final OnItemClickListener onItem = new OnItemClickListener() {

        @Override
        public void onItemClick(final AdapterView<?> parent, final View view, final int position, final long id) {
            final AppBookmark appBookmark = objects.get(position);
            int page = PageUrl.realToFake(appBookmark.getPage());
            if (page != controller.getCurentPageFirst1()) {
                final Integer offsetY = Integer.valueOf((int) controller.getOffsetY());
                LOG.d("onItemClick: Bookmark", offsetY);
                controller.getLinkHistory().clear();
                controller.getLinkHistory().add(offsetY);
            }
            controller.onGoToPage(page);
            onRefeshUI.run();
        }
    };
    final OnItemLongClickListener onBooksLong = new OnItemLongClickListener() {

        @Override
        public boolean onItemLongClick(final AdapterView<?> parent, final View view, final int position, final long id) {
            ListBoxHelper.showEditDeleteDialog(objects.get(position), controller, bookmarksAdapter, objects);
            return true;
        }
    };
    new DragingPopup(R.string.bookmarks, anchor, 300, 400) {

        @Override
        public View getContentView(final LayoutInflater inflater) {
            View a = inflater.inflate(R.layout.dialog_bookmarks, null, false);
            final ListView contentList = (ListView) a.findViewById(R.id.contentList);
            contentList.setDivider(new ColorDrawable(Color.TRANSPARENT));
            contentList.setVerticalScrollBarEnabled(false);
            contentList.setAdapter(bookmarksAdapter);
            contentList.setOnItemClickListener(onItem);
            contentList.setOnItemLongClickListener(onBooksLong);
            a.findViewById(R.id.addBookmark).setOnClickListener(onAdd);
            final View.OnClickListener onAddPAge = new View.OnClickListener() {

                @Override
                public void onClick(final View v) {
                    int page = PageUrl.fakeToReal(controller.getCurentPageFirst1());
                    for (AppBookmark all : objects) {
                        if (all.getPage() == page) {
                            Toast.makeText(controller.getActivity(), R.string.bookmark_for_this_page_already_exists, Toast.LENGTH_LONG).show();
                            return;
                        }
                    }
                    final AppBookmark bookmark = new AppBookmark(controller.getCurrentBook().getPath(), controller.getString(R.string.fast_bookmark), page, controller.getTitle());
                    AppSharedPreferences.get().addBookMark(bookmark);
                    objects.clear();
                    objects.addAll(AppSharedPreferences.get().getBookmarksByBook(controller.getCurrentBook()));
                    bookmarksAdapter.notifyDataSetChanged();
                    closeDialog();
                    String TEXT = controller.getString(R.string.fast_bookmark) + " " + TxtUtils.LONG_DASH + " " + controller.getString(R.string.page) + " " + page + "";
                    Toast.makeText(controller.getActivity(), TEXT, Toast.LENGTH_SHORT).show();
                }
            };
            a.findViewById(R.id.addPageBookmark).setOnClickListener(onAddPAge);
            objects.clear();
            objects.addAll(AppSharedPreferences.get().getBookmarksByBook(controller.getCurrentBook()));
            bookmarksAdapter.notifyDataSetChanged();
            return a;
        }
    }.show("addBookmarks", false, true);
}
Also used : BookmarksAdapter(com.foobnix.pdf.info.presentation.BookmarksAdapter) OnItemClickListener(android.widget.AdapterView.OnItemClickListener) ArrayList(java.util.ArrayList) OnClickListener(android.view.View.OnClickListener) ImageView(android.widget.ImageView) RecyclerView(android.support.v7.widget.RecyclerView) GridView(android.widget.GridView) View(android.view.View) AdapterView(android.widget.AdapterView) TextView(android.widget.TextView) ListView(android.widget.ListView) AbsListView(android.widget.AbsListView) SuppressLint(android.annotation.SuppressLint) OnItemLongClickListener(android.widget.AdapterView.OnItemLongClickListener) AppBookmark(com.foobnix.pdf.info.wrapper.AppBookmark) ListView(android.widget.ListView) AbsListView(android.widget.AbsListView) ColorDrawable(android.graphics.drawable.ColorDrawable) LayoutInflater(android.view.LayoutInflater) OnClickListener(android.view.View.OnClickListener) AdapterView(android.widget.AdapterView)

Aggregations

SuppressLint (android.annotation.SuppressLint)1 ColorDrawable (android.graphics.drawable.ColorDrawable)1 RecyclerView (android.support.v7.widget.RecyclerView)1 LayoutInflater (android.view.LayoutInflater)1 View (android.view.View)1 OnClickListener (android.view.View.OnClickListener)1 AbsListView (android.widget.AbsListView)1 AdapterView (android.widget.AdapterView)1 OnItemClickListener (android.widget.AdapterView.OnItemClickListener)1 OnItemLongClickListener (android.widget.AdapterView.OnItemLongClickListener)1 GridView (android.widget.GridView)1 ImageView (android.widget.ImageView)1 ListView (android.widget.ListView)1 TextView (android.widget.TextView)1 BookmarksAdapter (com.foobnix.pdf.info.presentation.BookmarksAdapter)1 AppBookmark (com.foobnix.pdf.info.wrapper.AppBookmark)1 ArrayList (java.util.ArrayList)1