extracted receivers panel event listening code from LogUI
diff --git a/src/main/java/org/apache/log4j/chainsaw/LogUI.java b/src/main/java/org/apache/log4j/chainsaw/LogUI.java
index f220390..9365cc8 100644
--- a/src/main/java/org/apache/log4j/chainsaw/LogUI.java
+++ b/src/main/java/org/apache/log4j/chainsaw/LogUI.java
@@ -34,7 +34,6 @@
import org.apache.log4j.chainsaw.prefs.SettingsManager;
import org.apache.log4j.chainsaw.receiver.ChainsawReceiver;
import org.apache.log4j.chainsaw.receiver.ChainsawReceiverFactory;
-import org.apache.log4j.chainsaw.receivers.ReceiversPanel;
import org.apache.log4j.chainsaw.zeroconf.ZeroConfPlugin;
import org.apache.log4j.rule.ExpressionRule;
import org.apache.log4j.rule.Rule;
@@ -90,7 +89,6 @@
private ChainsawAbout aboutBox;
public TutorialFrame tutorialFrame;
private final List<LogPanel> identifierPanels = new ArrayList<>();
- private LogUiReceiversPanel logUiReceiversPanel;
private JToolBar toolbar;
private ChainsawToolBarAndMenus chainsawToolBarAndMenus;
@@ -327,8 +325,7 @@
getContentPane().add(toolbar, BorderLayout.NORTH);
getContentPane().add(statusBar, BorderLayout.SOUTH);
- logUiReceiversPanel = new LogUiReceiversPanel(settingsManager, receivers, this, statusBar, panePanel);
- getContentPane().add(logUiReceiversPanel.getMainReceiverSplitPane(), BorderLayout.CENTER);
+ createReceiversPanel(panePanel);
addWindowListener(
new WindowAdapter() {
@@ -368,11 +365,6 @@
initPrefModelListeners();
setVisible(true);
- if (configuration.getBoolean("showReceivers", false)) {
- logUiReceiversPanel.showReceiverPanel();
- } else {
- logUiReceiversPanel.hideReceiverPanel();
- }
/*
* loads the saved tab settings and if there are hidden tabs,
@@ -388,6 +380,11 @@
chainsawToolBarAndMenus.stateChange();
}
+ private void createReceiversPanel(JPanel panePanel) {
+ LogUiReceiversPanel logUiReceiversPanel = new LogUiReceiversPanel(settingsManager, receivers, this, statusBar, panePanel);
+ getContentPane().add(logUiReceiversPanel.getMainReceiverSplitPane(), BorderLayout.CENTER);
+ }
+
private MouseAdapter createMouseAdapter() {
MouseAdapter mouseAdapter = new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
@@ -511,25 +508,6 @@
configuration.addEventListener(ConfigurationEvent.SET_PROPERTY,
evt -> {
- if (evt.getPropertyName().equals("showReceivers")) {
- boolean value = (Boolean) evt.getPropertyValue();
- if (value) {
- logUiReceiversPanel.showReceiverPanel();
- } else {
- logUiReceiversPanel.hideReceiverPanel();
- }
- }
- });
- boolean showReceivers = configuration.getBoolean("showReceivers", false);
- setStatusBarVisible(showStatusBar);
- if (showReceivers) {
- logUiReceiversPanel.showReceiverPanel();
- } else {
- logUiReceiversPanel.hideReceiverPanel();
- }
-
- configuration.addEventListener(ConfigurationEvent.SET_PROPERTY,
- evt -> {
if (evt.getPropertyName().equals("toolbar")) {
boolean value = (Boolean) evt.getPropertyValue();
toolbar.setVisible(value);
diff --git a/src/main/java/org/apache/log4j/chainsaw/LogUiReceiversPanel.java b/src/main/java/org/apache/log4j/chainsaw/LogUiReceiversPanel.java
index 82cd97c..b0cc555 100644
--- a/src/main/java/org/apache/log4j/chainsaw/LogUiReceiversPanel.java
+++ b/src/main/java/org/apache/log4j/chainsaw/LogUiReceiversPanel.java
@@ -1,11 +1,12 @@
package org.apache.log4j.chainsaw;
+import org.apache.commons.configuration2.AbstractConfiguration;
+import org.apache.commons.configuration2.event.ConfigurationEvent;
import org.apache.log4j.chainsaw.prefs.SettingsManager;
import org.apache.log4j.chainsaw.receiver.ChainsawReceiver;
import org.apache.log4j.chainsaw.receivers.ReceiversPanel;
import javax.swing.*;
-import java.awt.*;
import java.util.List;
public class LogUiReceiversPanel {
@@ -22,8 +23,28 @@
mainReceiverSplitPane.setContinuousLayout(true);
dividerSize = mainReceiverSplitPane.getDividerSize();
mainReceiverSplitPane.setDividerLocation(-1);
-
mainReceiverSplitPane.setResizeWeight(1.0);
+
+ AbstractConfiguration configuration = settingsManager.getGlobalConfiguration();
+ boolean showReceivers = configuration.getBoolean("showReceivers", false);
+
+ configuration.addEventListener(ConfigurationEvent.SET_PROPERTY,
+ evt -> {
+ if (evt.getPropertyName().equals("showReceivers")) {
+ boolean value = (Boolean) evt.getPropertyValue();
+ if (value) {
+ showReceiverPanel();
+ } else {
+ hideReceiverPanel();
+ }
+ }
+ });
+
+ if (showReceivers) {
+ showReceiverPanel();
+ } else {
+ hideReceiverPanel();
+ }
}