Skip to content

Commit f3f5935

Browse files
committed
PDFBOX-5660: refactor, avoid leaking this in constructor
git-svn-id: https://svn.apache.org/repos/asf/pdfbox/trunk@1934019 13f79535-47bb-0310-9956-ffa450edef68
1 parent 59c79b4 commit f3f5935

2 files changed

Lines changed: 14 additions & 9 deletions

File tree

debugger/src/main/java/org/apache/pdfbox/debugger/PDFDebugger.java

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -420,13 +420,8 @@ public void windowClosing(WindowEvent evt)
420420
documentScroller.setViewportView(documentPanel);
421421

422422
statusPane = new TreeStatusPane(tree);
423-
statusPane.getPanel().setBorder(new BevelBorder(BevelBorder.RAISED));
424-
Dimension preferredTreePathSize = statusPane.getPanel().getPreferredSize();
425-
int treePathHeight = (int) Math.round(preferredTreePathSize.getHeight());
426-
treePathHeight = Integer.parseInt(
427-
configuration.getProperty("treePathHeight", Integer.toString(treePathHeight)));
428-
preferredTreePathSize.height = treePathHeight;
429-
statusPane.getPanel().setPreferredSize(preferredTreePathSize);
423+
statusPane.init();
424+
430425
getContentPane().add(statusPane.getPanel(), BorderLayout.PAGE_START);
431426

432427
getContentPane().add(jSplitPane, BorderLayout.CENTER);

debugger/src/main/java/org/apache/pdfbox/debugger/treestatus/TreeStatusPane.java

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
import java.awt.BorderLayout;
2121
import java.awt.Color;
22+
import java.awt.Dimension;
2223
import java.awt.event.ActionEvent;
2324
import javax.swing.AbstractAction;
2425
import javax.swing.Action;
@@ -72,10 +73,12 @@ public void actionPerformed(ActionEvent actionEvent)
7273
public TreeStatusPane(JTree targetTree)
7374
{
7475
tree = targetTree;
75-
init();
7676
}
7777

78-
private void init()
78+
/**
79+
* Initialization, to be called immediately after construction.
80+
*/
81+
public void init()
7982
{
8083
panel = new JPanel(new BorderLayout());
8184
statusField = new JTextField();
@@ -88,6 +91,13 @@ private void init()
8891
errorBorder = new BevelBorder(BevelBorder.LOWERED, Color.RED, Color.RED);
8992
statusField.setAction(textInputAction);
9093
tree.addTreeSelectionListener(this);
94+
panel.setBorder(new BevelBorder(BevelBorder.RAISED));
95+
Dimension preferredTreePathSize = panel.getPreferredSize();
96+
int treePathHeight = (int) Math.round(preferredTreePathSize.getHeight());
97+
treePathHeight = Integer.parseInt(
98+
PDFDebugger.configuration.getProperty("treePathHeight", Integer.toString(treePathHeight)));
99+
preferredTreePathSize.height = treePathHeight;
100+
panel.setPreferredSize(preferredTreePathSize);
91101
}
92102

93103
/**

0 commit comments

Comments
 (0)