New create menu

- create menu embed generation parameters
This commit is contained in:
philippe lhardy
2022-01-23 11:28:13 +01:00
parent e426193690
commit 5a6fc2b879
3 changed files with 33 additions and 21 deletions

View File

@@ -80,8 +80,6 @@ implements StatusListener
con.add(scrollableMaze, BorderLayout.CENTER); con.add(scrollableMaze, BorderLayout.CENTER);
controler = new MazeControler(Display.this, params); controler = new MazeControler(Display.this, params);
con.add(controler.getMoveControl(), BorderLayout.NORTH); con.add(controler.getMoveControl(), BorderLayout.NORTH);
con.add(controler.getGenerationControl(), BorderLayout.SOUTH);
/* /*
scrollableMaze.addComponentListener(new ComponentAdapter() { scrollableMaze.addComponentListener(new ComponentAdapter() {
@Override @Override

View File

@@ -28,6 +28,31 @@ public class MazeControler extends JPanel {
p.setName(pName); p.setName(pName);
} }
private JMenu createCreateMenu() {
JMenu createMenu = new JMenu(MazeDefault.labels.getString("create"));
JButton buttonCreate = new JButton(MazeDefault.labels.getString("create"));
buttonCreate.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
display.recreateModel();
}
});
createMenu.add(buttonCreate);
createMenu.add(getGenerationControl());
JButton buttonReset = new JButton("reset");//labels.getString("reset"));
buttonReset.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
display.resetModel();
}
});
createMenu.add(buttonReset);
return createMenu;
}
private JMenu createLoadingMenu() { private JMenu createLoadingMenu() {
JMenu loadMenu = new JMenu(MazeDefault.labels.getString("load")); JMenu loadMenu = new JMenu(MazeDefault.labels.getString("load"));
@@ -237,14 +262,6 @@ public class MazeControler extends JPanel {
private JPanel createResolveQuitBar() { private JPanel createResolveQuitBar() {
JPanel resolveQuitBar = new JPanel(new FlowLayout()); JPanel resolveQuitBar = new JPanel(new FlowLayout());
JButton buttonCreate = new JButton(MazeDefault.labels.getString("create"));
buttonCreate.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
display.recreateModel();
}
});
resolveQuitBar.add(buttonCreate);
JButton resolveButton = new JButton(MazeDefault.labels.getString("resolve")); JButton resolveButton = new JButton(MazeDefault.labels.getString("resolve"));
resolveButton.addActionListener(new ActionListener() { resolveButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) { public void actionPerformed(ActionEvent evt) {
@@ -280,14 +297,6 @@ public class MazeControler extends JPanel {
resolveQuitBar.add(quitButton); resolveQuitBar.add(quitButton);
JButton buttonReset = new JButton("reset");//labels.getString("reset"));
buttonReset.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
display.resetModel();
}
});
resolveQuitBar.add(buttonReset);
return resolveQuitBar; return resolveQuitBar;
} }
@@ -299,7 +308,10 @@ public class MazeControler extends JPanel {
BoxLayout layout = new BoxLayout(this, BoxLayout.Y_AXIS); BoxLayout layout = new BoxLayout(this, BoxLayout.Y_AXIS);
setLayout(layout); setLayout(layout);
settings = new MazeSettings(params);
JMenuBar menuBar = new JMenuBar(); JMenuBar menuBar = new JMenuBar();
menuBar.add(createCreateMenu());
menuBar.add(createSavingMenu()); menuBar.add(createSavingMenu());
menuBar.add(createLoadingMenu()); menuBar.add(createLoadingMenu());
add(menuBar); add(menuBar);
@@ -307,7 +319,7 @@ public class MazeControler extends JPanel {
add(createResolveQuitBar()); add(createResolveQuitBar());
JPanel controlMovesPanel = new JPanel(new BorderLayout()); JPanel controlMovesPanel = new JPanel(new BorderLayout());
settings = new MazeSettings(params);
@SuppressWarnings("serial") @SuppressWarnings("serial")
Action goNorth = new AbstractAction() { Action goNorth = new AbstractAction() {
public void actionPerformed(ActionEvent evt) { public void actionPerformed(ActionEvent evt) {
@@ -369,7 +381,9 @@ public class MazeControler extends JPanel {
add(buildResizeControl()); add(buildResizeControl());
// layers control // layers control
add(buildLayerControl()); add(buildLayerControl());
add(settings);
// NOPE ! it overrides menu belonging
// add(settings);
} }

View File

@@ -47,6 +47,7 @@ public class MazeSettings extends Panel {
}); });
add(slider); add(slider);
fieldWidth = new IntegerField("width",params.getWidth()); fieldWidth = new IntegerField("width",params.getWidth());
addField(fieldWidth); addField(fieldWidth);
@@ -56,7 +57,6 @@ public class MazeSettings extends Panel {
fieldDepth = new IntegerField("depth",params.getMaxDepth()); fieldDepth = new IntegerField("depth",params.getMaxDepth());
addField(fieldDepth); addField(fieldDepth);
JLabel seedLabel = new JLabel();
fieldSeed = new IntegerField("seed", params.getSeed()); fieldSeed = new IntegerField("seed", params.getSeed());
addField(fieldSeed); addField(fieldSeed);