View Javadoc
1   package org.woehlke.computer.kurzweil.conwaysgameoflive.view.widgets;
2   
3   import lombok.Getter;
4   import lombok.extern.log4j.Log4j2;
5   import org.woehlke.computer.kurzweil.conwaysgameoflive.config.ComputerKurzweilProperties;
6   import org.woehlke.computer.kurzweil.conwaysgameoflive.view.layouts.FlowLayoutCenter;
7   
8   import javax.swing.*;
9   import javax.swing.border.CompoundBorder;
10  import java.io.Serializable;
11  
12  /**
13   * © 2006 - 2008 Thomas Woehlke.
14   * @author Thomas Woehlke
15   *
16   * @see <a href="https://github.com/Computer-Kurzweil/conwaysgameoflife">Github Repository</a>
17   * @see <a href="https://java.woehlke.org/conwaysgameoflife/">Maven Project Repository</a>
18   */
19  @Log4j2
20  @Getter
21  public class PanelWithTitleBorder extends JPanel implements Serializable {
22  
23      private static final long serialVersionUID = 242L;
24  
25      private final FlowLayoutCenter panelStartStopButtonsLayout;
26      private final CompoundBorder panelStartStopButtonsBorder;
27  
28      public PanelWithTitleBorder(String label, ComputerKurzweilProperties p) {
29          panelStartStopButtonsLayout = new FlowLayoutCenter();
30          int top = p.getAllinone().getView().getBorderPaddingY();
31          int left = p.getAllinone().getView().getBorderPaddingX();
32          int bottom = p.getAllinone().getView().getBorderPaddingY();
33          int right = p.getAllinone().getView().getBorderPaddingX();
34          panelStartStopButtonsBorder = BorderFactory.createCompoundBorder(
35              BorderFactory.createTitledBorder(label),
36              BorderFactory.createEmptyBorder(top,left,bottom,right)
37          );
38          this.setLayout(panelStartStopButtonsLayout);
39          this.setBorder(panelStartStopButtonsBorder);
40      }
41  }