import javax.swing.JPanel;
import javax.swing.JPopupMenu;
import javax.swing.JProgressBar;
+import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.KeyStroke;
jalview.bin.Console.info("JALVIEWJS: CREATED DESKTOP");
}
- cliWarning();
- }
-
- /**
- * Warning about old or mixed command line arguments
- */
- private void cliWarning()
- {
- Jalview j = Jalview.getInstance();
- boolean oldStyle = j.getArgParser() != null
- && j.getArgParser().isOldStyle();
- boolean mixedStyle = j.getArgParser() != null
- && j.getArgParser().isMixedStyle();
-
- String title = MessageManager.getString("label.command_line_arguments");
- if (mixedStyle)
- {
- String warning = MessageManager.formatMessage(
- "warning.using_mixed_command_line_arguments",
- j.getArgParser().getMixedExamples());
- String quit = MessageManager.getString("action.quit");
- JvOptionPane jvp = JvOptionPane.newOptionDialog(this);
- jvp.setResponseHandler(JOptionPane.YES_OPTION, () -> {
- });
- jvp.showDialogOnTopAsync(this, warning, title, JOptionPane.YES_OPTION,
- JOptionPane.WARNING_MESSAGE, null, new Object[]
- { quit }, quit, true, null, false);
-
- Jalview.getInstance().exit(
- "Exiting due to mixed old and new command line arguments.",
- ExitCode.MIXED_CLI_ARGUMENTS);
- return;
- }
- if (oldStyle)
- {
- String warning = MessageManager
- .getString("warning.using_old_command_line_arguments")
- + "https://www.jalview.org/help/html/features/commandline.html";
-
- JTextArea jta = new JTextArea(2, 32);
- // jta.setLineWrap(true);
- jta.setEditable(false);
- jta.setWrapStyleWord(true);
- jta.setAutoscrolls(true);
- jta.setText(warning);
-
- String ok = MessageManager.getString("label.continue");
- JvOptionPane jvp = JvOptionPane.newOptionDialog(this);
- jvp.setResponseHandler(JOptionPane.YES_OPTION, () -> {
- });
- jvp.showDialogOnTopAsync(this, jta, title, JOptionPane.YES_OPTION,
- JOptionPane.WARNING_MESSAGE, null, new Object[]
- { ok }, ok, false, null, false);
- }
-
}
/**
alignFrameModalMap.remove(af);
}
+ public void nonBlockingDialog(String title, String message, String button,
+ int type, boolean scrollable, boolean modal)
+ {
+ nonBlockingDialog(32, 2, title, message, button, type, scrollable,
+ modal);
+ }
+
+ public void nonBlockingDialog(int width, int height, String title,
+ String message, String button, int type, boolean scrollable,
+ boolean modal)
+ {
+ if (type < 0)
+ {
+ type = JvOptionPane.WARNING_MESSAGE;
+ }
+ JTextArea jta = new JTextArea(height, width);
+ // jta.setLineWrap(true);
+ jta.setEditable(false);
+ jta.setWrapStyleWord(true);
+ jta.setAutoscrolls(true);
+ jta.setText(message);
+
+ JScrollPane jsp = scrollable
+ ? new JScrollPane(jta, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
+ JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED)
+ : null;
+
+ JvOptionPane jvp = JvOptionPane.newOptionDialog(this);
+ jvp.setResponseHandler(JOptionPane.YES_OPTION, () -> {
+ });
+ jvp.showDialogOnTopAsync(this, scrollable ? jsp : jta, title,
+ JOptionPane.YES_OPTION, type, null, new Object[]
+ { button }, button, modal, null, false);
+ }
+
}