private Component createChartSelectorButtonPane() {
    final ChartType[] types = ChartType.values();
    final ButtonGroup buttonGroup = new ButtonGroup();
    final JPanel buttonCarrier = new JPanel();
    buttonCarrier.setLayout(new FlowLayout(FlowLayout.LEFT, 5, 5));

    for (int i = 0; i < types.length; i++) {
      final ChartType type = types[i];

      final SelectChartExpressionAction action =
          new SelectChartExpressionAction(type.getExpressionType());
      editModel.getChartExpressionsModel().addListDataListener(action);

      final ActionToggleButton button = new ActionToggleButton();
      button.putClientProperty("hideActionText", Boolean.TRUE); // NON-NLS
      button.setAction(action);
      button.setBorder(new EmptyBorder(0, 0, 0, 0));
      buttonGroup.add(button);
      buttonCarrier.add(button);
    }

    final JPanel panel = new JPanel();
    panel.setLayout(new BorderLayout());
    panel.add(buttonCarrier, BorderLayout.NORTH);
    return panel;
  }