in src/main/java/org/apache/log4j/chainsaw/LogPanelPreferencePanel.java [197:314]
private void initComponents() {
setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
AbstractConfiguration config = SettingsManager.getInstance().getCombinedSettingsForRecevierTab(m_panelIdentifier);
JPanel dateFormatPanel = new JPanel();
dateFormatPanel.setLayout(new BoxLayout(dateFormatPanel, BoxLayout.Y_AXIS));
dateFormatPanel.setBorder(
BorderFactory.createTitledBorder(
BorderFactory.createEtchedBorder(), "Timestamp"));
ButtonGroup bgDateFormat = new ButtonGroup();
// rdISO.setSelected(preferenceModel.isUseISO8601Format());
rdISO.setHorizontalTextPosition(SwingConstants.RIGHT);
rdISO.setAlignmentX(Component.LEFT_ALIGNMENT);
bgDateFormat.add(rdISO);
dateFormatPanel.add(rdISO);
for (Object DATE_FORMAT : LogPanelPreferenceModel.DATE_FORMATS) {
final String format = (String) DATE_FORMAT;
final JRadioButton rdFormat = new JRadioButton(format);
rdFormat.setHorizontalTextPosition(SwingConstants.RIGHT);
rdFormat.setAlignmentX(Component.LEFT_ALIGNMENT);
// rdFormat.addActionListener(e -> {
// preferenceModel.setDateFormatPattern(format);
// customFormatText.setEnabled(rdCustom.isSelected());
// rdLast = rdFormat;
// });
//update based on external changes to dateformatpattern (column context
//menu)
// preferenceModel.addPropertyChangeListener(
// "dateFormatPattern", evt -> {
// rdFormat.setSelected(
// preferenceModel.getDateFormatPattern().equals(format));
// rdLast = rdFormat;
// });
dateFormatPanel.add(rdFormat);
bgDateFormat.add(rdFormat);
}
customFormatText.setPreferredSize(new Dimension(100, 20));
customFormatText.setMaximumSize(customFormatText.getPreferredSize());
customFormatText.setMinimumSize(customFormatText.getPreferredSize());
customFormatText.setEnabled(false);
bgDateFormat.add(rdCustom);
// rdCustom.setSelected(preferenceModel.isCustomDateFormat());
//
// // add a custom date format
// if (preferenceModel.isCustomDateFormat()) {
// customFormatText.setText(preferenceModel.getDateFormatPattern());
// customFormatText.setEnabled(true);
// }
JPanel customPanel = new JPanel();
customPanel.setLayout(new BoxLayout(customPanel, BoxLayout.X_AXIS));
customPanel.add(rdCustom);
customPanel.add(customFormatText);
customPanel.setAlignmentX(Component.LEFT_ALIGNMENT);
dateFormatPanel.add(customPanel);
dateFormatPanel.add(Box.createVerticalStrut(5));
JLabel dateFormatLabel = new JLabel("Time zone of events (or blank for local time zone");
dateFormatPanel.add(dateFormatLabel);
timeZone.setMaximumSize(timeZone.getPreferredSize());
dateFormatPanel.add(Box.createVerticalStrut(5));
dateFormatPanel.add(timeZone);
add(dateFormatPanel);
JPanel levelFormatPanel = new JPanel();
levelFormatPanel.setLayout(
new BoxLayout(levelFormatPanel, BoxLayout.Y_AXIS));
levelFormatPanel.setBorder(
BorderFactory.createTitledBorder(
BorderFactory.createEtchedBorder(), "Level"));
levelFormatPanel.setAlignmentX(Component.LEFT_ALIGNMENT);
ButtonGroup bgLevel = new ButtonGroup();
bgLevel.add(rdLevelIcons);
bgLevel.add(rdLevelText);
rdLevelIcons.setSelected(config.getBoolean("logpanel.levelIcons"));
levelFormatPanel.add(rdLevelIcons);
levelFormatPanel.add(rdLevelText);
add(levelFormatPanel);
JPanel loggerFormatPanel = new JPanel();
loggerFormatPanel.setLayout(
new BoxLayout(loggerFormatPanel, BoxLayout.Y_AXIS));
loggerFormatPanel.setBorder(
BorderFactory.createTitledBorder(
BorderFactory.createEtchedBorder(), "Logger"));
loggerFormatPanel.setAlignmentX(Component.LEFT_ALIGNMENT);
loggerFormatPanel.add(Box.createVerticalStrut(3));
final JLabel precisionLabel =
new JLabel("Number of package levels to hide (or blank to display full logger)");
loggerFormatPanel.add(precisionLabel);
loggerFormatPanel.add(Box.createVerticalStrut(5));
loggerPrecision.setMaximumSize(loggerPrecision.getPreferredSize());
loggerFormatPanel.add(loggerPrecision);
add(loggerFormatPanel);
}