protected void initMessageDetailsToolbar() {
    final JButton buttonFormatters = new JButton("Message formatters", Icons.MESSAGE_FORMATTER);
    buttonFormatters.addMouseListener(new MouseAdapter() {

      @Override
      public void mouseClicked(MouseEvent e) {
        showMessageFormatterOrColorizerPopupMenu(e, "Message formatters", selectedMessageFormattersContainer, messageFormattersContainer);
      }
    });
    buttonFormatters.setToolTipText("Select used message formatters");
    messageDetailToolbar.add(buttonFormatters);


    final JButton buttonColorizers = new JButton("Message colorizers", Icons.MESSAGE_COLORIZER);
    buttonColorizers.addMouseListener(new MouseAdapter() {

      @Override
      public void mouseClicked(MouseEvent e) {
        showMessageFormatterOrColorizerPopupMenu(e, "Message colorizers", selectedMessageColorizersContainer, messageColorizersContainer);
      }
    });
    buttonColorizers.setToolTipText("Select used message colorizers");
    messageDetailToolbar.add(buttonColorizers);
    messageDetailToolbar.add(new CopyStyledMessageDetailAction(otrosApplication, dateFormat, selectedMessageColorizersContainer, selectedMessageFormattersContainer));

    messageDetailToolbar.add(new JLabel("Maximum message size for format"));


    final DefaultComboBoxModel<String> defaultComboBoxModel = new DefaultComboBoxModel<>(new String[]{});
    String[] values = {
      "10kB", "100kB", "200kB", "300kB", "400kB", "500kB", "600kB", "700kB", "800kB", "900kB", "1MB", "2MB", "3MB", "4MB", "5MB"
    };
    for (String value : values) {
      defaultComboBoxModel.addElement(value);
    }
    final JXComboBox messageMaximumSize = new JXComboBox(defaultComboBoxModel);
    messageMaximumSize.addActionListener(e -> {
      String max = defaultComboBoxModel.getElementAt(messageMaximumSize.getSelectedIndex());
      configuration.setProperty(ConfKeys.MESSAGE_FORMATTER_MAX_SIZE, max);
      messageDetailListener.setMaximumMessageSize((int) new FileSize(max).getBytes());

    });


    messageMaximumSize.setEditable(false);
    AutoCompleteDecorator.decorate(messageMaximumSize);
    messageMaximumSize.setMaximumSize(new Dimension(100, 50));
    messageDetailToolbar.add(messageMaximumSize);
    String messageMaxSize = configuration.getString(ConfKeys.MESSAGE_FORMATTER_MAX_SIZE, defaultComboBoxModel.getElementAt(messageMaximumSize.getSelectedIndex()));
    if (defaultComboBoxModel.getIndexOf(messageMaxSize) >= 0) {
      messageMaximumSize.setSelectedItem(messageMaxSize);
    }

    final JCheckBox wrapText = new JCheckBox(Icons.SCROLL_HORIZONTAL);
    wrapText.addActionListener(e -> {
      logDetailTextArea.setFullWidth(wrapText.isSelected());
      final Icon imageIcon = wrapText.isSelected() ? new ImageIcon(GrayFilter.createDisabledImage(((ImageIcon) Icons.SCROLL_HORIZONTAL).getImage())) : Icons.SCROLL_HORIZONTAL;
      wrapText.setIcon(imageIcon);
    });
    wrapText.setToolTipText("Enable/disable line wrapping");
    wrapText.setSelected(configuration.getBoolean(ConfKeys.MESSAGE_DETAIL_SCROLL_HORIZONTAL, true));
    wrapText.doClick();
    messageDetailToolbar.add(wrapText);

    messageDetailToolbar.add(FontResize.decreaseFontSizeAction(logDetailTextArea));
    messageDetailToolbar.add(FontResize.increaseFontSizeAction(logDetailTextArea));

  }
Set column size depending on configured display text/icon.
If the header is wider than contend, the width of header will be used.
olv-core/src/main/java/pl/otros/logview/gui/LogViewPanel.java