Package jfxtras.styles.jmetro8

Source Code of jfxtras.styles.jmetro8.MetroPasswordFieldSkin

package jfxtras.styles.jmetro8;

import javafx.scene.control.PasswordField;
import javafx.scene.control.TextField;

/**
* Created by pedro_000 on 12/15/13.
*/
public class MetroPasswordFieldSkin extends TextFieldWithButtonSkin{
    private boolean shouldMaskText = true;

    public MetroPasswordFieldSkin(TextField textField) {
        super(textField);
    }

    @Override
    protected void rightButtonPressed() {
        TextField textField = getSkinnable();
        shouldMaskText = false;
        textField.setText(textField.getText());
        shouldMaskText = true;
    }

    @Override
    protected  void rightButtonReleased()
    {
        TextField textField = getSkinnable();
        textField.setText(textField.getText());
        textField.end();
    }

    @Override protected String maskText(String txt) {
        if (getSkinnable() instanceof PasswordField && shouldMaskText) {
            int n = txt.length();
            StringBuilder passwordBuilder = new StringBuilder(n);
            for (int i = 0; i < n; i++) {
                passwordBuilder.append(BULLET);
            }

            return passwordBuilder.toString();
        } else {
            return txt;
        }
    }
}
TOP

Related Classes of jfxtras.styles.jmetro8.MetroPasswordFieldSkin

TOP
Copyright © 2018 www.massapi.com. 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.