package preSimulationWindow; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import javax.swing.BoxLayout; import javax.swing.JFrame; import javax.swing.JTabbedPane; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import utils.Constants; @SuppressWarnings("serial") public class View extends JFrame { private RestManagementPane restTab; private SimulationWindowPane simTab; private JTabbedPane tabbedPane; public View(ViewModel model) { setLayout(new BoxLayout(this.getContentPane(), BoxLayout.PAGE_AXIS)); setSize(Constants.PRE_SIM_WDW_WIDTH, Constants.PRE_SIM_WDW_HEIGHT); setTitle("Paramétrage de la simulation"); restTab = new RestManagementPane(model); simTab = new SimulationWindowPane(model); simTab.addPropertyChangeListener(new PropertyChangeListener() { @Override public void propertyChange(PropertyChangeEvent evt) { if (evt.getPropertyName().equals("launchSimulation")) if (evt.getNewValue().equals(true)) dispose(); } }); tabbedPane = new JTabbedPane(); tabbedPane.add("Simulation", simTab); tabbedPane.add("Service REST", restTab); tabbedPane.addChangeListener(new ChangeListener() { @Override public void stateChanged(ChangeEvent evt) { JTabbedPane pane = (JTabbedPane) evt.getSource(); if (pane.getSelectedIndex() == 0) simTab.updateSpecies(); } }); add(tabbedPane); setDefaultCloseOperation(EXIT_ON_CLOSE); setVisible(true); } }