/* * To change this template, choose Tools | Templates * and open the template in the editor. */ package org.pepsoft.worldpainter.layers.combined; import java.awt.Window; import java.util.List; import javax.swing.DefaultComboBoxModel; import javax.swing.JSpinner.NumberEditor; import org.pepsoft.worldpainter.LayerListCellRenderer; import org.pepsoft.worldpainter.WorldPainterDialog; import org.pepsoft.worldpainter.layers.Layer; /** * * @author pepijn */ public class AddLayerDialog extends WorldPainterDialog { /** * Creates new form AddLayerDialog */ public AddLayerDialog(Window parent, List<Layer> allLayers) { super(parent); this.allLayers = allLayers; initComponents(); spinnerFactor.setEditor(new NumberEditor(spinnerFactor, "0")); rootPane.setDefaultButton(buttonOK); pack(); setLocationRelativeTo(parent); } public Layer getSelectedLayer() { return (Layer) comboBoxLayer.getSelectedItem(); } public int getSelectedFactor() { return (Integer) spinnerFactor.getValue(); } public boolean isHiddenSelected() { return checkBoxHide.isSelected(); } /** * This method is called from within the constructor to initialize the form. * WARNING: Do NOT modify this code. The content of this method is always * regenerated by the Form Editor. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents private void initComponents() { jLabel1 = new javax.swing.JLabel(); jLabel2 = new javax.swing.JLabel(); comboBoxLayer = new javax.swing.JComboBox(); jLabel3 = new javax.swing.JLabel(); spinnerFactor = new javax.swing.JSpinner(); jLabel4 = new javax.swing.JLabel(); checkBoxHide = new javax.swing.JCheckBox(); buttonCancel = new javax.swing.JButton(); buttonOK = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); setTitle("Add Layer"); jLabel1.setText("Select the layer to add:"); jLabel2.setText("Layer:"); comboBoxLayer.setModel(new DefaultComboBoxModel(allLayers.toArray())); comboBoxLayer.setRenderer(new LayerListCellRenderer()); jLabel3.setText("Factor:"); spinnerFactor.setModel(new javax.swing.SpinnerNumberModel(100, 1, 1500, 1)); jLabel4.setText("%"); checkBoxHide.setText("Hide from panel:"); checkBoxHide.setHorizontalTextPosition(javax.swing.SwingConstants.LEADING); buttonCancel.setText("Cancel"); buttonCancel.addActionListener(this::buttonCancelActionPerformed); buttonOK.setText("OK"); buttonOK.addActionListener(this::buttonOKActionPerformed); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel1) .addGroup(layout.createSequentialGroup() .addComponent(jLabel2) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(comboBoxLayer, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(18, 18, 18) .addComponent(jLabel3) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(spinnerFactor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addGap(0, 0, 0) .addComponent(jLabel4) .addGap(18, 18, 18) .addComponent(checkBoxHide))) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addComponent(buttonOK) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(buttonCancel) .addContainerGap()) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jLabel1) .addGap(18, 18, 18) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jLabel2) .addComponent(comboBoxLayer, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel3) .addComponent(spinnerFactor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel4) .addComponent(checkBoxHide)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(buttonCancel) .addComponent(buttonOK)) .addContainerGap()) ); pack(); }// </editor-fold>//GEN-END:initComponents private void buttonCancelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonCancelActionPerformed cancel(); }//GEN-LAST:event_buttonCancelActionPerformed private void buttonOKActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonOKActionPerformed ok(); }//GEN-LAST:event_buttonOKActionPerformed // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JButton buttonCancel; private javax.swing.JButton buttonOK; private javax.swing.JCheckBox checkBoxHide; private javax.swing.JComboBox comboBoxLayer; private javax.swing.JLabel jLabel1; private javax.swing.JLabel jLabel2; private javax.swing.JLabel jLabel3; private javax.swing.JLabel jLabel4; private javax.swing.JSpinner spinnerFactor; // End of variables declaration//GEN-END:variables private final List<Layer> allLayers; private static final long serialVersionUID = 1L; }