public DialogOptions showFileOverwriteDialog(String title, String message) {
   JPanel panel = new JPanel();
   panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
   panel.add(new JLabel(message));
   JCheckBox applyToAll = new JCheckBox();
   JPanel applyPanel = new JPanel();
   applyPanel.add(new JLabel("Apply to all"));
   applyPanel.add(applyToAll);
   panel.add(applyPanel);
   int choice =
       JOptionPane.showConfirmDialog(
           getProjectExplorer(),
           panel,
           title,
           JOptionPane.YES_NO_OPTION,
           JOptionPane.PLAIN_MESSAGE);
   DialogOptions options = new DialogOptions();
   options.dialogResult = choice == JOptionPane.YES_OPTION;
   options.applyToAll = applyToAll.isSelected();
   return options;
 }
示例#2
0
  @Override
  public void close() {
    if (!ok) return;

    super.close();
    gui.set(MainOptions.TEXTINDEX, textindex.isSelected());
    gui.set(MainOptions.ATTRINDEX, attrindex.isSelected());
    gui.set(MainOptions.TOKENINDEX, tokenindex.isSelected());
    gui.set(MainOptions.FTINDEX, ftindex.isSelected());
    general.setOptions();
    options.setOptions(null);
    for (final DialogIndex di : index) di.setOptions();
  }
示例#3
0
  @Override
  public void action(final Object comp) {
    final boolean valid = general.action(comp, true) && options.action();
    index[0].action(textindex.isSelected());
    index[1].action(attrindex.isSelected());
    index[2].action(tokenindex.isSelected());
    index[3].action(ftindex.isSelected());

    // ...must be located before remaining checks
    if (comp == general.browse || comp == general.input) dbName.setText(general.dbName);

    final String nm = dbName.getText().trim();
    ok = valid && !nm.isEmpty();

    String inf = valid ? ok ? null : ENTER_DB_NAME : RES_NOT_FOUND;
    Msg icon = Msg.ERROR;
    if (ok) {
      ok = Databases.validName(nm);
      if (ok) gui.gopts.set(GUIOptions.DBNAME, nm);

      if (!ok) {
        // name of database is invalid
        inf = Util.info(INVALID_X, NAME);
      } else if (general.input.getText().trim().isEmpty()) {
        // database will be empty
        inf = EMPTY_DB;
        icon = Msg.WARN;
      } else if (gui.context.databases.listDBs().contains(nm)) {
        // old database will be overwritten
        inf = OVERWRITE_DB;
        icon = Msg.WARN;
      }
    }

    general.info.setText(inf, icon);
    enableOK(buttons, B_OK, ok);
  }
  public static Dialog show(
      Activity activity, final DialogOptions options, final IDialogResponse response) {

    final Dialog dialog = new Dialog(activity);
    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
    dialog.setContentView(R.layout.dialog_base);

    FontManager.handleFontTags(dialog.findViewById(R.id.dialog_container));

    final ArrayList<EditText> editTexts = new ArrayList<EditText>();
    final IDialogAdapter<?> adapter = options.getDialogAdapter();
    final ListView list = (ListView) dialog.findViewById(R.id.dialog_list);

    if (adapter == null) {
      Utils.remove(list);
    } else {
      list.setAdapter(new DialogInternalAdapter(adapter));
    }

    // give scrollable view a max height
    ViewGroup.LayoutParams scrollWrapParams = list.getLayoutParams();
    list.measure(list.getWidth(), list.getHeight());
    Utils.d("Ok " + list.getWidth() + " ; " + list.getHeight());
    Utils.d("Ok " + list.getMeasuredWidth() + " ; " + list.getMeasuredHeight());

    //		if (scroll.getMeasuredHeight() < scrollWrapParams.height) {
    //			scrollWrapParams.height = scroll.getMeasuredHeight();
    //			scrollWrap.setLayoutParams(scrollWrapParams);
    //		}

    final TextView title = (TextView) dialog.findViewById(R.id.dialog_title);
    title.setText(options.getTitle());

    final TextView description = (TextView) dialog.findViewById(R.id.dialog_description);
    description.setText(options.getDescription());

    Button negative = (Button) dialog.findViewById(R.id.dialog_negative);
    if (!options.isNegativeButtonEnabled()) {
      Utils.remove(negative);
    } else {
      negative.setText(options.getNegative());
      if (options.isReverseColors()) {
        negative.setTextColor(Utils.color(R.color.positive));
      }
      negative.setOnClickListener(
          new View.OnClickListener() {
            @Override
            public void onClick(View view) {
              if (response != null) {
                response.onNegative();
              }
              dialog.dismiss();
            }
          });
    }

    Button positive = (Button) dialog.findViewById(R.id.dialog_positive);
    if (!options.isPositiveButtonEnabled()) {
      Utils.remove(positive);
    } else {
      positive.setText(options.getPositive());
      if (options.isReverseColors()) {
        positive.setTextColor(Utils.color(R.color.negative));
      }
      positive.setOnClickListener(
          new View.OnClickListener() {
            @Override
            public void onClick(View view) {
              if (response != null) {
                response.onPositive();
              }
              dialog.dismiss();
            }
          });
    }

    dialog.setOnCancelListener(
        new DialogInterface.OnCancelListener() {
          @Override
          public void onCancel(DialogInterface dialogInterface) {
            if (response != null) {
              response.onCancel();
            }
          }
        });
    dialog.show();
    return dialog;
  }