2 * Sixth 3D engine demos. Author: Svjatoslav Agejenko.
3 * This project is released under Creative Commons Zero (CC0) license.
7 package eu.svjatoslav.sixth.e3d.examples.launcher;
9 import eu.svjatoslav.sixth.e3d.examples.*;
12 import java.awt.event.ActionEvent;
13 import java.io.IOException;
15 class MenuPanel extends JPanel {
16 private static final long serialVersionUID = 2012721856427052560L;
19 final GroupLayout groupLayout = new GroupLayout(this);
20 GroupLayout.SequentialGroup sequentialGroup = groupLayout.createSequentialGroup();
21 sequentialGroup.addComponent(new JLabel("Choose an example to launch:"));
22 sequentialGroup.addComponent(new JButton(new ShowOctree()));
23 sequentialGroup.addComponent(new JButton(new ShowMathGraphs()));
24 sequentialGroup.addComponent(new JButton(new ShowPointCloud()));
25 sequentialGroup.addComponent(new JButton(new ShowRain()));
26 sequentialGroup.addComponent(new JButton(new ShowSinusMap()));
27 sequentialGroup.addComponent(new JButton(new ShowTextEditors()));
28 sequentialGroup.addComponent(new JButton(new ShowGameOfLife()));
29 sequentialGroup.addComponent(new JButton(new ShowRandomPolygons()));
32 private class ShowTextEditors extends AbstractAction {
34 putValue(NAME, "Text editors");
38 public void actionPerformed(final ActionEvent e) {
39 TextEditorDemo.main(null);
43 private class ShowSinusMap extends AbstractAction {
45 putValue(NAME, "Wireframe sphere and ploygon landscape");
49 public void actionPerformed(final ActionEvent e) {
50 SphereDemo.main(null);
54 private class ShowRain extends AbstractAction {
56 putValue(NAME, "Raining numbers");
60 public void actionPerformed(final ActionEvent e) {
61 RainingNumbersDemo.main(null);
65 private class ShowPointCloud extends AbstractAction {
67 putValue(NAME, "Pointcloud galaxy");
71 public void actionPerformed(final ActionEvent e) {
72 PointCloudDemo.main(null);
76 private class ShowMathGraphs extends AbstractAction {
78 putValue(NAME, "Mathematical graphs");
82 public void actionPerformed(final ActionEvent e) {
85 } catch (final IOException e1) {
91 private class ShowRandomPolygons extends AbstractAction {
92 ShowRandomPolygons() {
93 putValue(NAME, "Random polygons");
97 public void actionPerformed(final ActionEvent e) {
98 RandomPolygonsDemo.main(null);
102 private class ShowOctree extends AbstractAction {
104 putValue(NAME, "Volumetric Octree");
108 public void actionPerformed(final ActionEvent e) {
109 OctreeDemo.main(null);
113 private class ShowGameOfLife extends AbstractAction {
115 putValue(NAME, "Game of Life");
119 public void actionPerformed(final ActionEvent e) {
120 eu.svjatoslav.sixth.e3d.examples.life.Main.main(null);