Example usage for android.util SparseBooleanArray get

List of usage examples for android.util SparseBooleanArray get

Introduction

In this page you can find the example usage for android.util SparseBooleanArray get.

Prototype

public boolean get(int key) 

Source Link

Document

Gets the boolean mapped from the specified key, or false if no such mapping has been made.

Usage

From source file:org.kontalk.ui.AbstractComposeFragment.java

private void deleteSelectedMessages(final SparseBooleanArray checked) {
    new MaterialDialog.Builder(getActivity()).content(R.string.confirm_will_delete_messages)
            .positiveText(android.R.string.ok).positiveColorRes(R.color.button_danger)
            .onPositive(new MaterialDialog.SingleButtonCallback() {
                @Override/*  w w w.j  av  a2  s . c  o  m*/
                public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
                    Context ctx = getActivity();
                    for (int i = 0, c = getListView().getCount()
                            + getListView().getHeaderViewsCount(); i < c; ++i) {
                        if (checked.get(i)) {
                            Cursor cursor = (Cursor) getListView().getItemAtPosition(i);
                            // skip group command messages
                            if (!GroupCommandComponent.isCursor(cursor))
                                CompositeMessage.deleteFromCursor(ctx, cursor);
                        }
                    }
                    mListAdapter.notifyDataSetChanged();
                }
            }).negativeText(android.R.string.cancel).show();
}

From source file:org.mozilla.gecko.GeckoApp.java

/**
 * @param aPermissions//from w  w w . ja v a  2 s.  c om
 *        Array of JSON objects to represent site permissions.
 *        Example: { type: "offline-app", setting: "Store Offline Data: Allow" }
 */
private void showSiteSettingsDialog(String aHost, JSONArray aPermissions) {
    final AlertDialog.Builder builder = new AlertDialog.Builder(this);

    View customTitleView = getLayoutInflater().inflate(R.layout.site_setting_title, null);
    ((TextView) customTitleView.findViewById(R.id.title)).setText(R.string.site_settings_title);
    ((TextView) customTitleView.findViewById(R.id.host)).setText(aHost);
    builder.setCustomTitle(customTitleView);

    // If there are no permissions to clear, show the user a message about that.
    // In the future, we want to disable the menu item if there are no permissions to clear.
    if (aPermissions.length() == 0) {
        builder.setMessage(R.string.site_settings_no_settings);
    } else {
        // Eventually we should use a list adapter and custom checkable list items
        // to make a two-line UI to match the mock-ups
        CharSequence[] items = new CharSequence[aPermissions.length()];
        boolean[] states = new boolean[aPermissions.length()];
        for (int i = 0; i < aPermissions.length(); i++) {
            try {
                items[i] = aPermissions.getJSONObject(i).getString("setting");
                // Make all the items checked by default
                states[i] = true;
            } catch (JSONException e) {
                Log.i(LOGTAG, "JSONException: " + e);
            }
        }
        builder.setMultiChoiceItems(items, states, new DialogInterface.OnMultiChoiceClickListener() {
            public void onClick(DialogInterface dialog, int item, boolean state) {
                // Do nothing
            }
        });
        builder.setPositiveButton(R.string.site_settings_clear, new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
                ListView listView = ((AlertDialog) dialog).getListView();
                SparseBooleanArray checkedItemPositions = listView.getCheckedItemPositions();

                // An array of the indices of the permissions we want to clear
                JSONArray permissionsToClear = new JSONArray();
                for (int i = 0; i < checkedItemPositions.size(); i++) {
                    boolean checked = checkedItemPositions.get(i);
                    if (checked)
                        permissionsToClear.put(i);
                }
                GeckoAppShell.sendEventToGecko(
                        GeckoEvent.createBroadcastEvent("Permissions:Clear", permissionsToClear.toString()));
            }
        });
    }

    builder.setNegativeButton(R.string.site_settings_cancel, new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int id) {
            dialog.cancel();
        }
    });

    mMainHandler.post(new Runnable() {
        public void run() {
            builder.create().show();
        }
    });
}

From source file:org.kontalk.ui.ComposeMessageFragment.java

private void deleteSelectedMessages(final SparseBooleanArray checked) {
    new AlertDialogWrapper.Builder(getActivity()).setMessage(R.string.confirm_will_delete_messages)
            .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
                @Override/*  w w w . ja  va 2s.  co  m*/
                public void onClick(DialogInterface dialog, int which) {
                    Context ctx = getActivity();
                    for (int i = 0, c = getListView().getCount()
                            + getListView().getHeaderViewsCount(); i < c; ++i) {
                        if (checked.get(i))
                            CompositeMessage.deleteFromCursor(ctx, (Cursor) getListView().getItemAtPosition(i));
                    }
                    mListAdapter.notifyDataSetChanged();
                }
            }).setNegativeButton(android.R.string.cancel, null).show();
}

From source file:com.sentaroh.android.SMBSync2.SyncTaskUtility.java

public void selectRemoteShareDlg(final String remurl, String remdir, final NotifyEvent p_ntfy) {

    NotifyEvent ntfy = new NotifyEvent(mContext);
    // set thread response 
    ntfy.setListener(new NotifyEventListener() {
        @Override/*from  w w w . j  av  a  2s . c  o m*/
        public void positiveResponse(Context c, Object[] o) {
            final ArrayList<String> rows = new ArrayList<String>();
            @SuppressWarnings("unchecked")
            ArrayList<TreeFilelistItem> rfl = (ArrayList<TreeFilelistItem>) o[0];

            for (int i = 0; i < rfl.size(); i++) {
                if (rfl.get(i).isDir() && rfl.get(i).canRead() && !rfl.get(i).getName().endsWith("$"))
                    //                     !rfl.get(i).getName().startsWith("IPC$"))
                    rows.add(rfl.get(i).getName().replaceAll("/", ""));
            }
            boolean wk_list_empty = false;
            if (rows.size() < 1) {
                wk_list_empty = true;
                rows.add(mContext.getString(R.string.msgs_dir_empty));
            }
            final boolean list_empty = wk_list_empty;
            Collections.sort(rows, String.CASE_INSENSITIVE_ORDER);
            //??
            final Dialog dialog = new Dialog(mContext);
            dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
            dialog.setCanceledOnTouchOutside(false);
            dialog.setContentView(R.layout.item_select_list_dlg);

            LinearLayout ll_dlg_view = (LinearLayout) dialog.findViewById(R.id.item_select_list_dlg_view);
            ll_dlg_view.setBackgroundColor(mGp.themeColorList.dialog_msg_background_color);

            final LinearLayout title_view = (LinearLayout) dialog
                    .findViewById(R.id.item_select_list_dlg_title_view);
            final TextView title = (TextView) dialog.findViewById(R.id.item_select_list_dlg_title);
            final TextView subtitle = (TextView) dialog.findViewById(R.id.item_select_list_dlg_subtitle);
            title_view.setBackgroundColor(mGp.themeColorList.dialog_title_background_color);
            title.setTextColor(mGp.themeColorList.text_color_dialog_title);
            subtitle.setTextColor(mGp.themeColorList.text_color_dialog_title);

            title.setText(mContext.getString(R.string.msgs_select_remote_share));
            subtitle.setVisibility(TextView.GONE);

            //              if (rows.size()<=2) 
            //                 ((TextView)dialog.findViewById(R.id.item_select_list_dlg_spacer))
            //                 .setVisibility(TextView.VISIBLE);
            final Button btn_cancel = (Button) dialog.findViewById(R.id.item_select_list_dlg_cancel_btn);
            final Button btn_ok = (Button) dialog.findViewById(R.id.item_select_list_dlg_ok_btn);
            btn_ok.setEnabled(false);

            CommonDialog.setDlgBoxSizeLimit(dialog, false);

            final ListView lv = (ListView) dialog.findViewById(android.R.id.list);
            if (!list_empty) {
                lv.setAdapter(
                        new ArrayAdapter<String>(mContext, R.layout.custom_simple_list_item_checked, rows));
                //  android.R.layout.simple_list_item_checked,rows));
                lv.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
            } else {
                lv.setAdapter(new ArrayAdapter<String>(mContext, R.layout.simple_list_item_1o, rows));
            }
            lv.setScrollingCacheEnabled(false);
            lv.setScrollbarFadingEnabled(false);

            lv.setOnItemClickListener(new OnItemClickListener() {
                public void onItemClick(AdapterView<?> items, View view, int idx, long id) {
                    if (rows.get(idx).startsWith("---"))
                        return;
                    if (!list_empty)
                        btn_ok.setEnabled(true);
                }
            });
            //CANCEL?
            btn_cancel.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) {
                    dialog.dismiss();
                    p_ntfy.notifyToListener(false, null);
                }
            });
            //OK?
            btn_ok.setVisibility(Button.VISIBLE);
            btn_ok.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) {
                    dialog.dismiss();
                    SparseBooleanArray checked = lv.getCheckedItemPositions();
                    for (int i = 0; i <= rows.size(); i++) {
                        if (checked.get(i) == true) {
                            p_ntfy.notifyToListener(true, new Object[] { rows.get(i) });
                            break;
                        }
                    }
                }
            });
            // Cancel?
            dialog.setOnCancelListener(new Dialog.OnCancelListener() {
                @Override
                public void onCancel(DialogInterface arg0) {
                    btn_cancel.performClick();
                }
            });
            //            dialog.setOnKeyListener(new DialogOnKeyListener(context));
            //            dialog.setCancelable(false);
            dialog.show();
        }

        @Override
        public void negativeResponse(Context c, Object[] o) {
            p_ntfy.notifyToListener(false, o);
        }
    });
    createRemoteFileList(remurl, remdir, ntfy, false);

}