<<<<<<< HEAD package ui.propertypanels; import classes.Project; import classes.TypeSelection; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.Insets; import java.awt.event.KeyEvent; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JColorChooser; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JSpinner; import javax.swing.JTextField; import javax.swing.SpinnerNumberModel; import simulation.VehicleType; import trafficdefinition.Flow; import ui.controls.SimTimeEdit; import ui.dialogs.DlgSelectTypes; /** * @author PapaleonLe01 */ public class PnlFlowProperties extends JPanel { private static final long serialVersionUID = 1L; private JButton btnChangeColor = null; private JButton btnSelectVehicleTypes = null; private Flow currentFlow = null; // @jve:decl-index=0: private JLabel lblBeginTimeTitle = null; private JLabel lblColorTitle = null; private JLabel lblEndTimeTitle = null; private JLabel lblFromTitle = null; private JLabel lblFromValue = null; private JLabel lblNameTitle = null; private JLabel lblNumberOfVehiclesTitle = null; private JLabel lblToTitle = null; private JLabel lblToValue = null; private JSpinner spnNumberOfVehicles = null; private JTextField txtName = null; private JCheckBox chkEnabled = null; private SimTimeEdit steBeginTime = null; private SimTimeEdit steEndTime = null; /** * This is the default constructor */ public PnlFlowProperties() { super(); initialize(); } public void setFlow(Flow flow) { currentFlow = flow; txtName.setText(currentFlow.getName()); lblFromValue.setText(currentFlow.getStart().getId()); lblToValue.setText(currentFlow.getEnd().getId()); steBeginTime.setValue(currentFlow.getBeginTime()); steEndTime.setValue(currentFlow.getEndTime()); spnNumberOfVehicles.setValue(currentFlow.getNumberOfVehicles()); btnChangeColor.setBackground(currentFlow.getColor()); chkEnabled.setSelected(currentFlow.isEnabled()); } /** * This method initializes btnChangeColor * @return javax.swing.JButton * @uml.property name="btnChangeColor" */ private JButton getBtnChangeColor() { if (btnChangeColor == null) { btnChangeColor = new JButton(); btnChangeColor.setText(""); btnChangeColor.setPreferredSize(new Dimension(86, 20)); btnChangeColor.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { ChangeColor(); } }); } return btnChangeColor; } /** * This method initializes btnSelectVehicleTypes * @return javax.swing.JButton * @uml.property name="btnSelectVehicleTypes" */ private JButton getBtnSelectVehicleTypes() { if (btnSelectVehicleTypes == null) { btnSelectVehicleTypes = new JButton(); btnSelectVehicleTypes.setText("Vehicle types..."); btnSelectVehicleTypes.setIcon(new ImageIcon(getClass().getResource("/resources/icons/vehicletypes.png"))); btnSelectVehicleTypes.setPreferredSize(new Dimension(150, 20)); btnSelectVehicleTypes.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { SelectVehicleTypes(); } }); } return btnSelectVehicleTypes; } /** * This method initializes spnNumberOfVehicles * @return javax.swing.JSpinner * @uml.property name="spnNumberOfVehicles" */ private JSpinner getSpnNumberOfVehicles() { if (spnNumberOfVehicles == null) { spnNumberOfVehicles = new JSpinner(); spnNumberOfVehicles.setPreferredSize(new Dimension(70, 20)); spnNumberOfVehicles.setModel(new SpinnerNumberModel(1, 1, 1000000, 1)); spnNumberOfVehicles.addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent e) { currentFlow.setNumberOfVehicles((Integer) spnNumberOfVehicles.getValue()); } }); } return spnNumberOfVehicles; } /** * This method initializes txtName * @return javax.swing.JTextField * @uml.property name="txtName" */ private JTextField getTxtName() { if (txtName == null) { txtName = new JTextField(); txtName.addFocusListener(new java.awt.event.FocusAdapter() { public void focusLost(java.awt.event.FocusEvent e) { currentFlow.setName(txtName.getText()); } }); } return txtName; } /** * This method initializes this * * @return void */ private void initialize() { GridBagConstraints gridBagConstraints21 = new GridBagConstraints(); gridBagConstraints21.gridx = 1; gridBagConstraints21.gridy = 4; GridBagConstraints gridBagConstraints15 = new GridBagConstraints(); gridBagConstraints15.gridx = 1; gridBagConstraints15.gridy = 3; GridBagConstraints gridBagConstraints14 = new GridBagConstraints(); gridBagConstraints14.gridx = 1; gridBagConstraints14.anchor = GridBagConstraints.WEST; gridBagConstraints14.gridy = 7; GridBagConstraints gridBagConstraints22 = new GridBagConstraints(); gridBagConstraints22.gridx = 1; gridBagConstraints22.anchor = GridBagConstraints.WEST; gridBagConstraints22.gridy = 5; GridBagConstraints gridBagConstraints23 = new GridBagConstraints(); gridBagConstraints23.gridx = 1; gridBagConstraints23.fill = GridBagConstraints.BOTH; gridBagConstraints23.insets = new Insets(2, 0, 2, 10); gridBagConstraints23.gridy = 6; GridBagConstraints gridBagConstraints13 = new GridBagConstraints(); gridBagConstraints13.gridx = 0; gridBagConstraints13.anchor = GridBagConstraints.NORTH; gridBagConstraints13.insets = new Insets(15, 2, 2, 2); gridBagConstraints13.weighty = 1.0D; gridBagConstraints13.gridwidth = 2; gridBagConstraints13.gridy = 8; GridBagConstraints gridBagConstraints12 = new GridBagConstraints(); gridBagConstraints12.gridx = 0; gridBagConstraints12.insets = new Insets(0, 10, 0, 5); gridBagConstraints12.anchor = GridBagConstraints.WEST; gridBagConstraints12.gridy = 5; lblNumberOfVehiclesTitle = new JLabel(); lblNumberOfVehiclesTitle.setText("Number of vehicles:"); GridBagConstraints gridBagConstraints51 = new GridBagConstraints(); gridBagConstraints51.gridx = 0; gridBagConstraints51.insets = new Insets(0, 10, 0, 0); gridBagConstraints51.anchor = GridBagConstraints.WEST; gridBagConstraints51.gridy = 6; lblColorTitle = new JLabel(); lblColorTitle.setText("Color:"); GridBagConstraints gridBagConstraints31 = new GridBagConstraints(); gridBagConstraints31.gridx = 0; gridBagConstraints31.insets = new Insets(0, 10, 0, 0); gridBagConstraints31.anchor = GridBagConstraints.WEST; gridBagConstraints31.gridy = 4; lblEndTimeTitle = new JLabel(); lblEndTimeTitle.setText("End time:"); GridBagConstraints gridBagConstraints11 = new GridBagConstraints(); gridBagConstraints11.gridx = 0; gridBagConstraints11.insets = new Insets(0, 10, 0, 0); gridBagConstraints11.anchor = GridBagConstraints.WEST; gridBagConstraints11.gridy = 3; lblBeginTimeTitle = new JLabel(); lblBeginTimeTitle.setText("Begin time:"); GridBagConstraints gridBagConstraints5 = new GridBagConstraints(); gridBagConstraints5.gridx = 1; gridBagConstraints5.fill = GridBagConstraints.HORIZONTAL; gridBagConstraints5.insets = new Insets(0, 0, 0, 10); gridBagConstraints5.gridy = 2; lblToValue = new JLabel(); lblToValue.setText("To"); lblToValue.setFont(new Font("Dialog", Font.PLAIN, 12)); GridBagConstraints gridBagConstraints4 = new GridBagConstraints(); gridBagConstraints4.gridx = 0; gridBagConstraints4.insets = new Insets(0, 10, 0, 0); gridBagConstraints4.anchor = GridBagConstraints.WEST; gridBagConstraints4.gridy = 2; lblToTitle = new JLabel(); lblToTitle.setText("To:"); GridBagConstraints gridBagConstraints3 = new GridBagConstraints(); gridBagConstraints3.gridx = 1; gridBagConstraints3.fill = GridBagConstraints.HORIZONTAL; gridBagConstraints3.insets = new Insets(0, 0, 0, 10); gridBagConstraints3.gridy = 1; lblFromValue = new JLabel(); lblFromValue.setText("From"); lblFromValue.setDisplayedMnemonic(KeyEvent.VK_UNDEFINED); lblFromValue.setFont(new Font("Dialog", Font.PLAIN, 12)); GridBagConstraints gridBagConstraints2 = new GridBagConstraints(); gridBagConstraints2.gridx = 0; gridBagConstraints2.insets = new Insets(0, 10, 0, 0); gridBagConstraints2.anchor = GridBagConstraints.WEST; gridBagConstraints2.gridy = 1; lblFromTitle = new JLabel(); lblFromTitle.setText("From:"); GridBagConstraints gridBagConstraints1 = new GridBagConstraints(); gridBagConstraints1.fill = GridBagConstraints.HORIZONTAL; gridBagConstraints1.gridy = 0; gridBagConstraints1.weightx = 1.0; gridBagConstraints1.insets = new Insets(10, 0, 0, 10); gridBagConstraints1.gridx = 1; GridBagConstraints gridBagConstraints = new GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.insets = new Insets(10, 10, 0, 0); gridBagConstraints.anchor = GridBagConstraints.WEST; gridBagConstraints.gridy = 0; lblNameTitle = new JLabel(); lblNameTitle.setText("Name:"); this.setSize(300, 214); this.setLayout(new GridBagLayout()); this.add(lblNameTitle, gridBagConstraints); this.add(getTxtName(), gridBagConstraints1); this.add(lblFromTitle, gridBagConstraints2); this.add(lblFromValue, gridBagConstraints3); this.add(lblToTitle, gridBagConstraints4); this.add(lblToValue, gridBagConstraints5); this.add(lblBeginTimeTitle, gridBagConstraints11); this.add(lblEndTimeTitle, gridBagConstraints31); this.add(lblColorTitle, gridBagConstraints51); this.add(lblNumberOfVehiclesTitle, gridBagConstraints12); this.add(getBtnSelectVehicleTypes(), gridBagConstraints13); this.add(getBtnChangeColor(), gridBagConstraints23); this.add(getSpnNumberOfVehicles(), gridBagConstraints22); this.add(getChkEnabled(), gridBagConstraints14); this.add(getSteBeginTime(), gridBagConstraints15); this.add(getSteEndTime(), gridBagConstraints21); } protected void ChangeColor() { Color newColor = JColorChooser.showDialog(this, "Select flow color", currentFlow.getColor()); if (newColor != null) { currentFlow.setColor(newColor); btnChangeColor.setBackground(newColor); } } protected void SelectVehicleTypes() { // Create a type selection that contains all the vehicle types of the // project, each with a 0 probability TypeSelection<VehicleType> projectVehicleTypes = new TypeSelection<VehicleType>(Project.getCurrentlyLoadedProject().getVehicleTypes()); // Get a copy of the layer's vehicle types (so that if the user cancels, // the // changes won't be permanent) TypeSelection<VehicleType> flowVehicleTypes = new TypeSelection<VehicleType>(currentFlow.getVehicleSelection()); // Show the vehicle selection dialog flowVehicleTypes.addTypesNotInSelection(projectVehicleTypes); DlgSelectTypes<VehicleType> dlg = new DlgSelectTypes<VehicleType>(flowVehicleTypes); dlg.setVisible(true); if (dlg.getAnswer() == JOptionPane.OK_OPTION) { // Remove any types that have 0 probability flowVehicleTypes.removeTypesWithZeroPercentage(); // Set the selected types to the layer currentFlow.setVehicleSelection(flowVehicleTypes); } } /** * This method initializes chkEnabled * @return javax.swing.JCheckBox * @uml.property name="chkEnabled" */ private JCheckBox getChkEnabled() { if (chkEnabled == null) { chkEnabled = new JCheckBox(); chkEnabled.setText("Enabled"); chkEnabled.addItemListener(new java.awt.event.ItemListener() { public void itemStateChanged(java.awt.event.ItemEvent e) { currentFlow.setEnabled(chkEnabled.isSelected()); } }); } return chkEnabled; } /** * This method initializes steBeginTime * @return ui.controls.SimTimeEdit * @uml.property name="steBeginTime" */ private SimTimeEdit getSteBeginTime() { if (steBeginTime == null) { steBeginTime = new SimTimeEdit(); steBeginTime.addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent e) { currentFlow.setBeginTime(steBeginTime.getValue()); } }); } return steBeginTime; } /** * This method initializes steEndTime * @return ui.controls.SimTimeEdit * @uml.property name="steEndTime" */ private SimTimeEdit getSteEndTime() { if (steEndTime == null) { steEndTime = new SimTimeEdit(); steEndTime.addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent e) { currentFlow.setEndTime(steEndTime.getValue()); } }); } return steEndTime; } } // @jve:decl-index=0:visual-constraint="10,10" ======= package ui.propertypanels; import classes.Project; import classes.TypeSelection; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.GridBagConstraints; import java.awt.GridBagLayout; import java.awt.Insets; import java.awt.event.KeyEvent; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JColorChooser; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JSpinner; import javax.swing.JTextField; import javax.swing.SpinnerNumberModel; import simulation.VehicleType; import trafficdefinition.Flow; import ui.controls.SimTimeEdit; import ui.dialogs.DlgSelectTypes; /** * @author PapaleonLe01 */ public class PnlFlowProperties extends JPanel { private static final long serialVersionUID = 1L; private JButton btnChangeColor = null; private JButton btnSelectVehicleTypes = null; private Flow currentFlow = null; // @jve:decl-index=0: private JLabel lblBeginTimeTitle = null; private JLabel lblColorTitle = null; private JLabel lblEndTimeTitle = null; private JLabel lblFromTitle = null; private JLabel lblFromValue = null; private JLabel lblNameTitle = null; private JLabel lblNumberOfVehiclesTitle = null; private JLabel lblToTitle = null; private JLabel lblToValue = null; private JSpinner spnNumberOfVehicles = null; private JTextField txtName = null; private JCheckBox chkEnabled = null; private SimTimeEdit steBeginTime = null; private SimTimeEdit steEndTime = null; /** * This is the default constructor */ public PnlFlowProperties() { super(); initialize(); } public void setFlow(Flow flow) { currentFlow = flow; txtName.setText(currentFlow.getName()); lblFromValue.setText(currentFlow.getStart().getId()); lblToValue.setText(currentFlow.getEnd().getId()); steBeginTime.setValue(currentFlow.getBeginTime()); steEndTime.setValue(currentFlow.getEndTime()); spnNumberOfVehicles.setValue(currentFlow.getNumberOfVehicles()); btnChangeColor.setBackground(currentFlow.getColor()); chkEnabled.setSelected(currentFlow.isEnabled()); } /** * This method initializes btnChangeColor * @return javax.swing.JButton * @uml.property name="btnChangeColor" */ private JButton getBtnChangeColor() { if (btnChangeColor == null) { btnChangeColor = new JButton(); btnChangeColor.setText(""); btnChangeColor.setPreferredSize(new Dimension(86, 20)); btnChangeColor.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { ChangeColor(); } }); } return btnChangeColor; } /** * This method initializes btnSelectVehicleTypes * @return javax.swing.JButton * @uml.property name="btnSelectVehicleTypes" */ private JButton getBtnSelectVehicleTypes() { if (btnSelectVehicleTypes == null) { btnSelectVehicleTypes = new JButton(); btnSelectVehicleTypes.setText("Vehicle types..."); btnSelectVehicleTypes.setIcon(new ImageIcon(getClass().getResource("/resources/icons/vehicletypes.png"))); btnSelectVehicleTypes.setPreferredSize(new Dimension(150, 20)); btnSelectVehicleTypes.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { SelectVehicleTypes(); } }); } return btnSelectVehicleTypes; } /** * This method initializes spnNumberOfVehicles * @return javax.swing.JSpinner * @uml.property name="spnNumberOfVehicles" */ private JSpinner getSpnNumberOfVehicles() { if (spnNumberOfVehicles == null) { spnNumberOfVehicles = new JSpinner(); spnNumberOfVehicles.setPreferredSize(new Dimension(70, 20)); spnNumberOfVehicles.setModel(new SpinnerNumberModel(1, 1, 1000000, 1)); spnNumberOfVehicles.addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent e) { currentFlow.setNumberOfVehicles((Integer) spnNumberOfVehicles.getValue()); } }); } return spnNumberOfVehicles; } /** * This method initializes txtName * @return javax.swing.JTextField * @uml.property name="txtName" */ private JTextField getTxtName() { if (txtName == null) { txtName = new JTextField(); txtName.addFocusListener(new java.awt.event.FocusAdapter() { public void focusLost(java.awt.event.FocusEvent e) { currentFlow.setName(txtName.getText()); } }); } return txtName; } /** * This method initializes this * * @return void */ private void initialize() { GridBagConstraints gridBagConstraints21 = new GridBagConstraints(); gridBagConstraints21.gridx = 1; gridBagConstraints21.gridy = 4; GridBagConstraints gridBagConstraints15 = new GridBagConstraints(); gridBagConstraints15.gridx = 1; gridBagConstraints15.gridy = 3; GridBagConstraints gridBagConstraints14 = new GridBagConstraints(); gridBagConstraints14.gridx = 1; gridBagConstraints14.anchor = GridBagConstraints.WEST; gridBagConstraints14.gridy = 7; GridBagConstraints gridBagConstraints22 = new GridBagConstraints(); gridBagConstraints22.gridx = 1; gridBagConstraints22.anchor = GridBagConstraints.WEST; gridBagConstraints22.gridy = 5; GridBagConstraints gridBagConstraints23 = new GridBagConstraints(); gridBagConstraints23.gridx = 1; gridBagConstraints23.fill = GridBagConstraints.BOTH; gridBagConstraints23.insets = new Insets(2, 0, 2, 10); gridBagConstraints23.gridy = 6; GridBagConstraints gridBagConstraints13 = new GridBagConstraints(); gridBagConstraints13.gridx = 0; gridBagConstraints13.anchor = GridBagConstraints.NORTH; gridBagConstraints13.insets = new Insets(15, 2, 2, 2); gridBagConstraints13.weighty = 1.0D; gridBagConstraints13.gridwidth = 2; gridBagConstraints13.gridy = 8; GridBagConstraints gridBagConstraints12 = new GridBagConstraints(); gridBagConstraints12.gridx = 0; gridBagConstraints12.insets = new Insets(0, 10, 0, 5); gridBagConstraints12.anchor = GridBagConstraints.WEST; gridBagConstraints12.gridy = 5; lblNumberOfVehiclesTitle = new JLabel(); lblNumberOfVehiclesTitle.setText("Number of vehicles:"); GridBagConstraints gridBagConstraints51 = new GridBagConstraints(); gridBagConstraints51.gridx = 0; gridBagConstraints51.insets = new Insets(0, 10, 0, 0); gridBagConstraints51.anchor = GridBagConstraints.WEST; gridBagConstraints51.gridy = 6; lblColorTitle = new JLabel(); lblColorTitle.setText("Color:"); GridBagConstraints gridBagConstraints31 = new GridBagConstraints(); gridBagConstraints31.gridx = 0; gridBagConstraints31.insets = new Insets(0, 10, 0, 0); gridBagConstraints31.anchor = GridBagConstraints.WEST; gridBagConstraints31.gridy = 4; lblEndTimeTitle = new JLabel(); lblEndTimeTitle.setText("End time:"); GridBagConstraints gridBagConstraints11 = new GridBagConstraints(); gridBagConstraints11.gridx = 0; gridBagConstraints11.insets = new Insets(0, 10, 0, 0); gridBagConstraints11.anchor = GridBagConstraints.WEST; gridBagConstraints11.gridy = 3; lblBeginTimeTitle = new JLabel(); lblBeginTimeTitle.setText("Begin time:"); GridBagConstraints gridBagConstraints5 = new GridBagConstraints(); gridBagConstraints5.gridx = 1; gridBagConstraints5.fill = GridBagConstraints.HORIZONTAL; gridBagConstraints5.insets = new Insets(0, 0, 0, 10); gridBagConstraints5.gridy = 2; lblToValue = new JLabel(); lblToValue.setText("To"); lblToValue.setFont(new Font("Dialog", Font.PLAIN, 12)); GridBagConstraints gridBagConstraints4 = new GridBagConstraints(); gridBagConstraints4.gridx = 0; gridBagConstraints4.insets = new Insets(0, 10, 0, 0); gridBagConstraints4.anchor = GridBagConstraints.WEST; gridBagConstraints4.gridy = 2; lblToTitle = new JLabel(); lblToTitle.setText("To:"); GridBagConstraints gridBagConstraints3 = new GridBagConstraints(); gridBagConstraints3.gridx = 1; gridBagConstraints3.fill = GridBagConstraints.HORIZONTAL; gridBagConstraints3.insets = new Insets(0, 0, 0, 10); gridBagConstraints3.gridy = 1; lblFromValue = new JLabel(); lblFromValue.setText("From"); lblFromValue.setDisplayedMnemonic(KeyEvent.VK_UNDEFINED); lblFromValue.setFont(new Font("Dialog", Font.PLAIN, 12)); GridBagConstraints gridBagConstraints2 = new GridBagConstraints(); gridBagConstraints2.gridx = 0; gridBagConstraints2.insets = new Insets(0, 10, 0, 0); gridBagConstraints2.anchor = GridBagConstraints.WEST; gridBagConstraints2.gridy = 1; lblFromTitle = new JLabel(); lblFromTitle.setText("From:"); GridBagConstraints gridBagConstraints1 = new GridBagConstraints(); gridBagConstraints1.fill = GridBagConstraints.HORIZONTAL; gridBagConstraints1.gridy = 0; gridBagConstraints1.weightx = 1.0; gridBagConstraints1.insets = new Insets(10, 0, 0, 10); gridBagConstraints1.gridx = 1; GridBagConstraints gridBagConstraints = new GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.insets = new Insets(10, 10, 0, 0); gridBagConstraints.anchor = GridBagConstraints.WEST; gridBagConstraints.gridy = 0; lblNameTitle = new JLabel(); lblNameTitle.setText("Name:"); this.setSize(300, 214); this.setLayout(new GridBagLayout()); this.add(lblNameTitle, gridBagConstraints); this.add(getTxtName(), gridBagConstraints1); this.add(lblFromTitle, gridBagConstraints2); this.add(lblFromValue, gridBagConstraints3); this.add(lblToTitle, gridBagConstraints4); this.add(lblToValue, gridBagConstraints5); this.add(lblBeginTimeTitle, gridBagConstraints11); this.add(lblEndTimeTitle, gridBagConstraints31); this.add(lblColorTitle, gridBagConstraints51); this.add(lblNumberOfVehiclesTitle, gridBagConstraints12); this.add(getBtnSelectVehicleTypes(), gridBagConstraints13); this.add(getBtnChangeColor(), gridBagConstraints23); this.add(getSpnNumberOfVehicles(), gridBagConstraints22); this.add(getChkEnabled(), gridBagConstraints14); this.add(getSteBeginTime(), gridBagConstraints15); this.add(getSteEndTime(), gridBagConstraints21); } protected void ChangeColor() { Color newColor = JColorChooser.showDialog(this, "Select flow color", currentFlow.getColor()); if (newColor != null) { currentFlow.setColor(newColor); btnChangeColor.setBackground(newColor); } } protected void SelectVehicleTypes() { // Create a type selection that contains all the vehicle types of the // project, each with a 0 probability TypeSelection<VehicleType> projectVehicleTypes = new TypeSelection<VehicleType>(Project.getCurrentlyLoadedProject().getVehicleTypes()); // Get a copy of the layer's vehicle types (so that if the user cancels, // the // changes won't be permanent) TypeSelection<VehicleType> flowVehicleTypes = new TypeSelection<VehicleType>(currentFlow.getVehicleSelection()); // Show the vehicle selection dialog flowVehicleTypes.addTypesNotInSelection(projectVehicleTypes); DlgSelectTypes<VehicleType> dlg = new DlgSelectTypes<VehicleType>(flowVehicleTypes); dlg.setVisible(true); if (dlg.getAnswer() == JOptionPane.OK_OPTION) { // Remove any types that have 0 probability flowVehicleTypes.removeTypesWithZeroPercentage(); // Set the selected types to the layer currentFlow.setVehicleSelection(flowVehicleTypes); } } /** * This method initializes chkEnabled * @return javax.swing.JCheckBox * @uml.property name="chkEnabled" */ private JCheckBox getChkEnabled() { if (chkEnabled == null) { chkEnabled = new JCheckBox(); chkEnabled.setText("Enabled"); chkEnabled.addItemListener(new java.awt.event.ItemListener() { public void itemStateChanged(java.awt.event.ItemEvent e) { currentFlow.setEnabled(chkEnabled.isSelected()); } }); } return chkEnabled; } /** * This method initializes steBeginTime * @return ui.controls.SimTimeEdit * @uml.property name="steBeginTime" */ private SimTimeEdit getSteBeginTime() { if (steBeginTime == null) { steBeginTime = new SimTimeEdit(); steBeginTime.addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent e) { currentFlow.setBeginTime(steBeginTime.getValue()); } }); } return steBeginTime; } /** * This method initializes steEndTime * @return ui.controls.SimTimeEdit * @uml.property name="steEndTime" */ private SimTimeEdit getSteEndTime() { if (steEndTime == null) { steEndTime = new SimTimeEdit(); steEndTime.addChangeListener(new javax.swing.event.ChangeListener() { public void stateChanged(javax.swing.event.ChangeEvent e) { currentFlow.setEndTime(steEndTime.getValue()); } }); } return steEndTime; } } // @jve:decl-index=0:visual-constraint="10,10" >>>>>>> origin/abdalla