2 * Sixth 3D engine demos. Copyright ©2012-2018, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of version 3 of the GNU Lesser General Public License
6 * or later as published by the Free Software Foundation.
9 package eu.svjatoslav.sixth.e3d.examples.launcher;
11 import eu.svjatoslav.sixth.e3d.examples.*;
14 import java.awt.event.ActionEvent;
15 import java.io.IOException;
17 class MenuPanel extends JPanel {
18 private static final long serialVersionUID = 2012721856427052560L;
21 final GroupLayout groupLayout = new GroupLayout(this);
22 GroupLayout.SequentialGroup sequentialGroup = groupLayout.createSequentialGroup();
23 sequentialGroup.addComponent(new JLabel("Choose an example to launch:"));
24 sequentialGroup.addComponent(new JButton(new ShowOctree()));
25 sequentialGroup.addComponent(new JButton(new ShowMathGraphs()));
26 sequentialGroup.addComponent(new JButton(new ShowPointCloud()));
27 sequentialGroup.addComponent(new JButton(new ShowRain()));
28 sequentialGroup.addComponent(new JButton(new ShowSinusMap()));
29 sequentialGroup.addComponent(new JButton(new ShowTextEditors()));
30 sequentialGroup.addComponent(new JButton(new ShowGameOfLife()));
31 sequentialGroup.addComponent(new JButton(new ShowRandomPolygons()));
34 private class ShowTextEditors extends AbstractAction {
36 putValue(NAME, "Text editors");
40 public void actionPerformed(final ActionEvent e) {
41 TextEditorDemo.main(null);
45 private class ShowSinusMap extends AbstractAction {
47 putValue(NAME, "Wireframe sphere and ploygon landscape");
51 public void actionPerformed(final ActionEvent e) {
52 SphereDemo.main(null);
56 private class ShowRain extends AbstractAction {
58 putValue(NAME, "Raining numbers");
62 public void actionPerformed(final ActionEvent e) {
63 RainingNumbersDemo.main(null);
67 private class ShowPointCloud extends AbstractAction {
69 putValue(NAME, "Pointcloud galaxy");
73 public void actionPerformed(final ActionEvent e) {
74 PointCloudDemo.main(null);
78 private class ShowMathGraphs extends AbstractAction {
80 putValue(NAME, "Mathematical graphs");
84 public void actionPerformed(final ActionEvent e) {
87 } catch (final IOException e1) {
93 private class ShowRandomPolygons extends AbstractAction {
94 ShowRandomPolygons() {
95 putValue(NAME, "Random polygons");
99 public void actionPerformed(final ActionEvent e) {
100 RandomPolygonsDemo.main(null);
104 private class ShowOctree extends AbstractAction {
106 putValue(NAME, "Volumetric Octree");
110 public void actionPerformed(final ActionEvent e) {
111 OctreeDemo.main(null);
115 private class ShowGameOfLife extends AbstractAction {
117 putValue(NAME, "Game of Life");
121 public void actionPerformed(final ActionEvent e) {
122 eu.svjatoslav.sixth.e3d.examples.life.Main.main(null);