+ * @param al
+ * @param title
+ */
+ protected void openLinkedAlignment(AlignmentI al, String title)
+ {
+ String[] options = new String[] { MessageManager.getString("action.no"),
+ MessageManager.getString("label.split_window"),
+ MessageManager.getString("label.new_window"), };
+ final String question = JvSwingUtils.wrapTooltip(true,
+ MessageManager.getString("label.open_split_window?"));
+
+ /*
+ * options No, Split Window, New Window correspond to
+ * dialog responses 0, 1, 2 (even though JOptionPane shows them
+ * in reverse order)
+ */
+ JvOptionPane dialog = JvOptionPane
+ .newOptionDialog(Desktop.getDesktopPane())
+ .setResponseHandler(NO_SPLIT, new Runnable()
+ {
+ @Override
+ public void run()
+ {
+ addDataToAlignment(al);
+ }
+ }).setResponseHandler(SPLIT_FRAME, new Runnable()
+ {
+ @Override
+ public void run()
+ {
+ openLinkedAlignmentAs(getAlignPanel().alignFrame,
+ new Alignment(getAlignment()), al, title,
+ SPLIT_FRAME);
+ }
+ }).setResponseHandler(NEW_WINDOW, new Runnable()
+ {
+ @Override
+ public void run()
+ {
+ openLinkedAlignmentAs(null, getAlignment(), al, title,
+ NEW_WINDOW);
+ }
+ });
+ dialog.showDialog(question,
+ MessageManager.getString("label.open_split_window"),
+ JvOptionPane.DEFAULT_OPTION, JvOptionPane.PLAIN_MESSAGE, null,
+ options, options[0]);