X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Feu%2Fsvjatoslav%2Fsixth%2Fe3d%2Fexamples%2Flauncher%2FMenuPanel.java;h=30c7ee3c94e8a0139adb1fe2e71b5a2591d2c2cb;hb=cea6336f011484356f2d4294d45849f3c398e2e7;hp=1f868b9965b6e71aef93c8bcba28b7b290de7416;hpb=151ac55eaaa0f3a2d7a589a0a3ff877b6db09a6f;p=sixth-3d-demos.git diff --git a/src/main/java/eu/svjatoslav/sixth/e3d/examples/launcher/MenuPanel.java b/src/main/java/eu/svjatoslav/sixth/e3d/examples/launcher/MenuPanel.java index 1f868b9..30c7ee3 100644 --- a/src/main/java/eu/svjatoslav/sixth/e3d/examples/launcher/MenuPanel.java +++ b/src/main/java/eu/svjatoslav/sixth/e3d/examples/launcher/MenuPanel.java @@ -1,5 +1,5 @@ /* - * Sixth 3D engine demos. Copyright ©2012-2016, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu + * Sixth 3D engine demos. Copyright ©2012-2018, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu * * This program is free software; you can redistribute it and/or * modify it under the terms of version 3 of the GNU Lesser General Public License @@ -11,121 +11,28 @@ package eu.svjatoslav.sixth.e3d.examples.launcher; import eu.svjatoslav.sixth.e3d.examples.*; import javax.swing.*; -import javax.swing.GroupLayout.Alignment; -import javax.swing.LayoutStyle.ComponentPlacement; import java.awt.event.ActionEvent; import java.io.IOException; class MenuPanel extends JPanel { private static final long serialVersionUID = 2012721856427052560L; - public MenuPanel() { - - final JLabel chooseExample = new JLabel("Choose an example to launch."); - - final JButton showTextEditors = new JButton(new ShowTextEditors()); - final JButton showSinusMap = new JButton(new ShowSinusMap()); - final JButton showRain = new JButton(new ShowRain()); - final JButton showPointCloud = new JButton(new ShowPointcloud()); - final JButton showMathGraphs = new JButton(new ShowMathGraphs()); - final JButton showOctree = new JButton(new ShowOctree()); - + MenuPanel() { final GroupLayout groupLayout = new GroupLayout(this); - groupLayout - .setHorizontalGroup(groupLayout - .createParallelGroup(Alignment.LEADING) - .addGroup( - groupLayout - .createSequentialGroup() - .addContainerGap() - .addGroup( - groupLayout - .createParallelGroup( - Alignment.LEADING) - .addGroup( - Alignment.TRAILING, - groupLayout - .createSequentialGroup() - .addComponent( - chooseExample, - GroupLayout.PREFERRED_SIZE, - 426, - GroupLayout.PREFERRED_SIZE) - .addContainerGap( - GroupLayout.DEFAULT_SIZE, - Short.MAX_VALUE)) - .addGroup( - Alignment.TRAILING, - groupLayout - .createSequentialGroup() - .addGroup( - groupLayout - .createParallelGroup( - Alignment.TRAILING) - .addComponent( - showOctree, - Alignment.LEADING, - GroupLayout.DEFAULT_SIZE, - 331, - Short.MAX_VALUE) - .addComponent( - showMathGraphs, - Alignment.LEADING, - GroupLayout.DEFAULT_SIZE, - 331, - Short.MAX_VALUE) - .addComponent( - showPointCloud, - Alignment.LEADING, - GroupLayout.DEFAULT_SIZE, - 331, - Short.MAX_VALUE) - .addComponent( - showRain, - Alignment.LEADING, - GroupLayout.DEFAULT_SIZE, - 331, - Short.MAX_VALUE) - .addComponent( - showSinusMap, - Alignment.LEADING, - GroupLayout.DEFAULT_SIZE, - GroupLayout.DEFAULT_SIZE, - Short.MAX_VALUE) - .addComponent( - showTextEditors, - GroupLayout.DEFAULT_SIZE, - 331, - Short.MAX_VALUE)) - .addGap(107))))); - groupLayout.setVerticalGroup(groupLayout.createParallelGroup( - Alignment.LEADING).addGroup( - groupLayout - .createSequentialGroup() - .addGap(7) - .addComponent(chooseExample, GroupLayout.PREFERRED_SIZE, - 58, GroupLayout.PREFERRED_SIZE) - .addPreferredGap(ComponentPlacement.RELATED) - .addComponent(showTextEditors) - .addPreferredGap(ComponentPlacement.RELATED) - .addComponent(showSinusMap) - .addPreferredGap(ComponentPlacement.RELATED) - .addComponent(showRain) - .addPreferredGap(ComponentPlacement.RELATED) - .addComponent(showPointCloud) - .addPreferredGap(ComponentPlacement.RELATED) - .addComponent(showMathGraphs) - .addPreferredGap(ComponentPlacement.RELATED) - .addComponent(showOctree) - .addContainerGap(137, Short.MAX_VALUE))); - setLayout(groupLayout); - + GroupLayout.SequentialGroup sequentialGroup = groupLayout.createSequentialGroup(); + sequentialGroup.addComponent(new JLabel("Choose an example to launch:")); + sequentialGroup.addComponent(new JButton(new ShowOctree())); + sequentialGroup.addComponent(new JButton(new ShowMathGraphs())); + sequentialGroup.addComponent(new JButton(new ShowPointcloud())); + sequentialGroup.addComponent(new JButton(new ShowRain())); + sequentialGroup.addComponent(new JButton(new ShowSinusMap())); + sequentialGroup.addComponent(new JButton(new ShowTextEditors())); + sequentialGroup.addComponent(new JButton(new ShowGameOfLife())); + sequentialGroup.addComponent(new JButton(new ShowRandomPolygons())); } private class ShowTextEditors extends AbstractAction { - private static final long serialVersionUID = 5197962166765841015L; - - public ShowTextEditors() { + ShowTextEditors() { putValue(NAME, "Text editors"); } @@ -136,8 +43,6 @@ class MenuPanel extends JPanel { } private class ShowSinusMap extends AbstractAction { - private static final long serialVersionUID = -896479509963403828L; - public ShowSinusMap() { putValue(NAME, "Wireframe sphere and ploygon landscape"); } @@ -149,8 +54,6 @@ class MenuPanel extends JPanel { } private class ShowRain extends AbstractAction { - private static final long serialVersionUID = 8566009849873897321L; - public ShowRain() { putValue(NAME, "Raining numbers"); } @@ -166,8 +69,6 @@ class MenuPanel extends JPanel { } private class ShowPointcloud extends AbstractAction { - private static final long serialVersionUID = -5369105936409884389L; - public ShowPointcloud() { putValue(NAME, "Pointcloud galaxy"); } @@ -179,8 +80,6 @@ class MenuPanel extends JPanel { } private class ShowMathGraphs extends AbstractAction { - private static final long serialVersionUID = -8486796142555764460L; - public ShowMathGraphs() { putValue(NAME, "Mathematical graphs"); } @@ -195,20 +94,37 @@ class MenuPanel extends JPanel { } } - private class ShowOctree extends AbstractAction { - private static final long serialVersionUID = -6210703594848004946L; + private class ShowRandomPolygons extends AbstractAction { + public ShowRandomPolygons() { + putValue(NAME, "Random polygons"); + } + @Override + public void actionPerformed(final ActionEvent e) { + RandomPolygonsDemo.main(null); + } + } + + private class ShowOctree extends AbstractAction { public ShowOctree() { putValue(NAME, "Volumetric Octree"); } @Override public void actionPerformed(final ActionEvent e) { - try { - OctreeDemo.main(null); - } catch (final IOException e1) { - e1.printStackTrace(); - } + OctreeDemo.main(null); + } + } + + private class ShowGameOfLife extends AbstractAction { + public ShowGameOfLife() { + putValue(NAME, "Game of Life"); + } + + @Override + public void actionPerformed(final ActionEvent e) { + eu.svjatoslav.sixth.e3d.examples.life.Main.main(null); } } + }