Package javax.swing.text

Examples of javax.swing.text.DefaultFormatterFactory


      final JFormattedTextField textField = ((JSpinner.DefaultEditor)editor).getTextField();     
      SwingTools.addAutoSelectionOnFocusGain(textField);
     
      // Commit text during edition
      if (textField.getFormatterFactory() instanceof DefaultFormatterFactory) {
        DefaultFormatterFactory formatterFactory = (DefaultFormatterFactory)textField.getFormatterFactory();
        JFormattedTextField.AbstractFormatter defaultFormatter = formatterFactory.getDefaultFormatter();
        if (defaultFormatter instanceof DefaultFormatter) {
          ((DefaultFormatter)defaultFormatter).setCommitsOnValidEdit(true);
        }
        if (defaultFormatter instanceof NumberFormatter) {
          final NumberFormatter numberFormatter = (NumberFormatter)defaultFormatter;
          final DecimalFormat defaultFormat = (DecimalFormat)numberFormatter.getFormat();
          final DecimalFormat noGroupingFormat = (DecimalFormat)defaultFormat.clone();
          noGroupingFormat.setGroupingUsed(false);
          // Create a delegate of default formatter to change value returned by getFormat
          NumberFormatter editFormatter = new NumberFormatter() {
              @Override
              public Format getFormat() {
                // Use a different format depending on whether the text field has focus or not
                if (textField.hasFocus()) {
                  // No grouping when text field has focus
                  return noGroupingFormat;
                } else {
                  return defaultFormat;
                }
              }
           
              @Override
              public boolean getCommitsOnValidEdit() {
                return true;
              }
             
              @SuppressWarnings("unchecked")
              @Override
              public Comparable getMaximum() {
                return numberFormatter.getMaximum();
              }
             
              @SuppressWarnings("unchecked")
              @Override
              public Comparable getMinimum() {
                return numberFormatter.getMinimum();
              }
             
              @SuppressWarnings("unchecked")
              @Override
              public void setMaximum(Comparable maximum) {
                numberFormatter.setMaximum(maximum);
              }
             
              @SuppressWarnings("unchecked")
              @Override
              public void setMinimum(Comparable minimum) {
                numberFormatter.setMinimum(minimum);
              }
             
              @Override
              public Class<?> getValueClass() {
                return numberFormatter.getValueClass();
              }
            };
          textField.setFormatterFactory(new DefaultFormatterFactory(editFormatter));
        }
      }
    }
  }
View Full Code Here


        formatter = new NumberFormatter((NumberFormat)lengthFormat);
      } else {
        formatter = new InternationalFormatter(lengthFormat);
      }
    }
    textField.setFormatterFactory(new DefaultFormatterFactory(formatter));
  }
View Full Code Here

    this.latitudeSpinner = new JSpinner(latitudeSpinnerModel);
    // Change positive / negative notation by North / South
    JFormattedTextField textField = ((DefaultEditor)this.latitudeSpinner.getEditor()).getTextField();
    NumberFormatter numberFormatter = (NumberFormatter)((DefaultFormatterFactory)textField.getFormatterFactory()).getDefaultFormatter();
    numberFormatter.setFormat(new DecimalFormat("N ##0.000;S ##0.000"));
    textField.setFormatterFactory(new DefaultFormatterFactory(numberFormatter));
    SwingTools.addAutoSelectionOnFocusGain(textField);
    latitudeSpinnerModel.setValue(controller.getLatitudeInDegrees());
    final PropertyChangeListener latitudeChangeListener = new PropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent ev) {
          latitudeSpinnerModel.setValue((Float)ev.getNewValue());
        }
      };
    controller.addPropertyChangeListener(CompassController.Property.LATITUDE_IN_DEGREES, latitudeChangeListener);
    latitudeSpinnerModel.addChangeListener(new ChangeListener() {
        public void stateChanged(ChangeEvent ev) {
          controller.removePropertyChangeListener(CompassController.Property.LATITUDE_IN_DEGREES, latitudeChangeListener);
          controller.setLatitudeInDegrees(((Number)latitudeSpinnerModel.getValue()).floatValue());
          controller.addPropertyChangeListener(CompassController.Property.LATITUDE_IN_DEGREES, latitudeChangeListener);
        }
      });
   
    this.longitudeLabel = new JLabel(SwingTools.getLocalizedLabelText(preferences, CompassPanel.class, "longitudeLabel.text"));
    final SpinnerNumberModel longitudeSpinnerModel = new SpinnerNumberModel(new Float(0), new Float(-180), new Float(180), new Float(5));
    this.longitudeSpinner = new JSpinner(longitudeSpinnerModel);
    // Change positive / negative notation by East / West
    textField = ((DefaultEditor)this.longitudeSpinner.getEditor()).getTextField();
    numberFormatter = (NumberFormatter)((DefaultFormatterFactory)textField.getFormatterFactory()).getDefaultFormatter();
    numberFormatter.setFormat(new DecimalFormat("E ##0.000;W ##0.000"));
    textField.setFormatterFactory(new DefaultFormatterFactory(numberFormatter));
    SwingTools.addAutoSelectionOnFocusGain(textField);
    longitudeSpinnerModel.setValue(controller.getLongitudeInDegrees());
    final PropertyChangeListener longitudeChangeListener = new PropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent ev) {
          longitudeSpinnerModel.setValue((Float)ev.getNewValue());
View Full Code Here

    dialogPanel.add(amountLabel);
    amountDisplayFormat = NumberFormat.getCurrencyInstance();
    amountDisplayFormat.setMinimumFractionDigits(2);
    amountEditFormat = NumberFormat.getNumberInstance();
    amountField= new JFormattedTextField(
        new DefaultFormatterFactory(
          new NumberFormatter(amountDisplayFormat),
          new NumberFormatter(amountDisplayFormat),
          new NumberFormatter(amountEditFormat)
          )
        );
View Full Code Here

        initComponents();

        df = (DecimalFormat)DecimalFormat.getNumberInstance();
        df.setMinimumFractionDigits(2);
        df.setMaximumFractionDigits(2);
        xTextField.setFormatterFactory(new DefaultFormatterFactory(new NumberFormatter(df)));
        yTextField.setFormatterFactory(new DefaultFormatterFactory(new NumberFormatter(df)));
        zTextField.setFormatterFactory(new DefaultFormatterFactory(new NumberFormatter(df)));
        angleTextField.setFormatterFactory(new DefaultFormatterFactory(new NumberFormatter(df)));

        // Set the initial values for the fields
        nameTextField.setText("");
        urlTextField.setText("");
        xTextField.setText("0");
View Full Code Here

        mask = new MaskFormatter ("UUUUUUU");
      }
    catch (ParseException pe)
      {
      }
    DefaultFormatterFactory factory =
      new DefaultFormatterFactory (mask, null, null, nullFormatter);
    harness.check (field.getText().equals("aBcDeFg"));
    field.setFormatterFactory(factory);
    harness.check (field.getText().equals("ABCDEFG"));

    harness.checkPoint ("field value going to null brings in nullFormatter");
View Full Code Here

        if (formats != null) {
            Contract.asNotNull(formats, "the array of formats " + "must not contain null elements");
        }
       
        DateFormat[] old = getFormats();
        _dateField.setFormatterFactory(new DefaultFormatterFactory(
                new DatePickerFormatter(formats, getLocale())));
        firePropertyChange("formats", old, getFormats());
    }
View Full Code Here

        revertValue();
        firePropertyChange(VALUE_PROPERTY_NAME, oldValue, value);
    }

    private AbstractFormatterFactory createFactory(final Object value) {
        DefaultFormatterFactory factory = new DefaultFormatterFactory();
        if (value instanceof Number) {
            factory.setDefaultFormatter(new NumberFormatter());
        } else if (value instanceof Date) {
            factory.setDefaultFormatter(new DateFormatter());
        } else {
            factory.setDefaultFormatter(new DefaultFormatter());
        }
        return factory;
    }
View Full Code Here

        return factory;
    }

    private AbstractFormatterFactory createFactory(final AbstractFormatter
                                                   formatter) {
        DefaultFormatterFactory factory = new DefaultFormatterFactory();
        factory.setDefaultFormatter(formatter);
        return factory;
    }
View Full Code Here

        }

        private void initTextField() {
            SpinnerDateFormatter formatter = new SpinnerDateFormatter(format, getModel());
            JFormattedTextField textField = getTextField();
            textField.setFormatterFactory(new DefaultFormatterFactory(formatter));
            textField.setEditable(true);
        }
View Full Code Here

TOP

Related Classes of javax.swing.text.DefaultFormatterFactory

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.