/** Creates new form ColorTableDialog */
  public DropsConfiguration(java.awt.Frame parent, boolean modal, Rain generator) {
    super(parent, modal);
    this.setTitle(generator.getName().toString() + " Configuration");
    this.generator = generator;
    initComponents();

    tfsLength.setValue(generator.getRainLength());
    tfsCount.setValue(generator.getDropsPerScreen());
    tfsSpeed.setValue(generator.getBpm());

    cbScrollMode.setModel(new DefaultComboBoxModel(RainDirection.values()));

    cbScrollMode.setSelectedItem(generator.getMode());

    tfsLength.addTFSListener(
        new TFSListener() {
          @Override
          public void stateChanged(ChangeEvent e) {
            tpsLengthStateChanged(e);
          }
        });

    tfsSpeed.addTFSListener(
        new TFSListener() {
          @Override
          public void stateChanged(ChangeEvent e) {
            tpsSpeedStateChanged(e);
          }
        });

    tfsCount.addTFSListener(
        new TFSListener() {
          @Override
          public void stateChanged(ChangeEvent e) {
            tpsCountStateChanged(e);
          }
        });

    setLocationRelativeTo(null);
  }