+ averageDistance.setOpaque(false);
+
+ pairwise = new JRadioButton(
+ MessageManager.getString("action.pairwise_alignment"));
+ pairwise.setOpaque(false);
+
+ JPanel calcChoicePanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
+ calcChoicePanel.setOpaque(false);
+
+ // first create the Tree calculation's border panel
+ JPanel treePanel = new JPanel(new FlowLayout(FlowLayout.LEFT));
+ treePanel.setOpaque(false);
+
+ JvSwingUtils.createTitledBorder(treePanel,
+ MessageManager.getString("label.tree"), true);
+
+ // then copy the inset dimensions for the border-less PCA panel
+ JPanel pcaBorderless = new JPanel(new FlowLayout(FlowLayout.LEFT));
+ Insets b = treePanel.getBorder().getBorderInsets(treePanel);
+ pcaBorderless.setBorder(
+ BorderFactory.createEmptyBorder(2, b.left, 2, b.right));
+ pcaBorderless.setOpaque(false);
+
+ pcaBorderless.add(pca, FlowLayout.LEFT);
+ calcChoicePanel.add(pcaBorderless, FlowLayout.LEFT);
+
+ // create pasimap panel
+ JPanel pasimapBorderless = new JPanel(new FlowLayout(FlowLayout.LEFT)); // create
+ // new
+ // JPanel
+ // (button)
+ // for
+ // pasimap
+ pasimapBorderless.setBorder(
+ BorderFactory.createEmptyBorder(2, b.left, 2, b.right)); // set
+ // border
+ // (margin)
+ // for
+ // button
+ // (same as
+ // treePanel
+ // and pca)
+ pasimapBorderless.setOpaque(false); // false -> stops every pixel inside
+ // border from being painted
+ pasimapBorderless.add(pasimap, FlowLayout.LEFT); // add pasimap button to
+ // the JPanel
+ if (!Platform.isJS())
+ {
+ // FIXME JAL-4443
+ calcChoicePanel.add(pasimapBorderless, FlowLayout.LEFT); // add button
+ // with
+ // border and
+ // everything to
+ // the overall
+ // ChoicePanel
+ }
+
+ treePanel.add(neighbourJoining);
+ treePanel.add(averageDistance);
+
+ calcChoicePanel.add(treePanel);
+ calcChoicePanel.add(pairwise, FlowLayout.CENTER);
+
+ ButtonGroup calcTypes = new ButtonGroup();
+ calcTypes.add(pca);
+ if (!Platform.isJS())
+ {
+ // FIXME JAL-4443
+ calcTypes.add(pasimap);
+ }
+ calcTypes.add(neighbourJoining);
+ calcTypes.add(averageDistance);
+ calcTypes.add(pairwise);
+
+ ActionListener calcChanged = new ActionListener()