1 package org.woehlke.computer.kurzweil.commons.widgets;
2
3 import lombok.EqualsAndHashCode;
4 import lombok.ToString;
5 import lombok.extern.log4j.Log4j2;
6 import org.woehlke.computer.kurzweil.application.ComputerKurzweilContext;
7 import org.woehlke.computer.kurzweil.commons.gui.GuiComponent;
8 import org.woehlke.computer.kurzweil.commons.layouts.FlowLayoutCenter;
9
10 import javax.swing.*;
11
12
13 @Log4j2
14 @ToString
15 @EqualsAndHashCode(callSuper=true)
16 public class PanelSubtitle extends JPanel implements GuiComponent {
17
18 public PanelSubtitle(String text) {
19 this.setLayout(new FlowLayoutCenter());
20 this.add(new JLabel(text));
21 }
22
23
24 public void showMe() {
25 this.setVisible(true);
26 }
27
28 public static PanelSubtitle getPanelSubtitleForApplication(ComputerKurzweilContext ctx) {
29 String text = ctx.getProperties().getAllinone().getView().getSubtitle();
30 return new PanelSubtitle(text);
31 }
32
33 public static PanelSubtitle getPanelSubtitleForCca(ComputerKurzweilContext ctx) {
34 String text = ctx.getProperties().getCca().getView().getSubtitle();
35 return new PanelSubtitle(text);
36 }
37
38 public static PanelSubtitle getPanelSubtitleForDla(ComputerKurzweilContext ctx) {
39 String text = ctx.getProperties().getDla().getView().getSubtitle();
40 return new PanelSubtitle(text);
41 }
42
43 public static PanelSubtitle getPanelSubtitleForSimulatedEvolution(ComputerKurzweilContext ctx) {
44 String text = ctx.getProperties().getSimulatedevolution().getView().getSubtitle();
45 return new PanelSubtitle(text);
46 }
47
48 public static PanelSubtitle getPanelSubtitleForSimulatedKochSnowflake(ComputerKurzweilContext ctx) {
49 String text = ctx.getProperties().getKochsnowflake().getView().getSubtitle();
50 return new PanelSubtitle(text);
51 }
52
53 public static PanelSubtitle getPanelSubtitleForMandelbrot(ComputerKurzweilContext ctx) {
54 String text = ctx.getProperties().getMandelbrot().getView().getSubtitle();
55 return new PanelSubtitle(text);
56 }
57
58
59 public static PanelSubtitle getPanelSubtitleForSameGame(ComputerKurzweilContext ctx) {
60 String text = ctx.getProperties().getSamegame().getView().getSubtitle();
61 return new PanelSubtitle(text);
62 }
63
64 public static PanelSubtitle getPanelSubtitleForSierpinskiTriangle(ComputerKurzweilContext ctx) {
65 String text = ctx.getProperties().getSierpinskitriangle().getView().getSubtitle();
66 return new PanelSubtitle(text);
67 }
68
69 public static PanelSubtitle getPanelSubtitleForSierpinskiTetris(ComputerKurzweilContext ctx) {
70 String text = ctx.getProperties().getTetris().getView().getSubtitle();
71 return new PanelSubtitle(text);
72 }
73
74 public static PanelSubtitle getPanelSubtitleForSierpinskiTurmite(ComputerKurzweilContext ctx) {
75 String text = ctx.getProperties().getTurmite().getView().getSubtitle();
76 return new PanelSubtitle(text);
77 }
78
79 public static PanelSubtitle getPanelSubtitleForSierpinskiWaTor(ComputerKurzweilContext ctx) {
80 String text = ctx.getProperties().getWator().getView().getSubtitle();
81 return new PanelSubtitle(text);
82 }
83 }