Edit C:\Program Files\Java\jdk1.8.0_121\javafx\css\StyleConverter.java
/* * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package javafx.css; import com.sun.javafx.css.converters.BooleanConverter; import com.sun.javafx.css.converters.ColorConverter; import com.sun.javafx.css.converters.DurationConverter; import com.sun.javafx.css.converters.EffectConverter; import com.sun.javafx.css.converters.EnumConverter; import com.sun.javafx.css.converters.FontConverter; import com.sun.javafx.css.converters.InsetsConverter; import com.sun.javafx.css.converters.PaintConverter; import com.sun.javafx.css.converters.SizeConverter; import com.sun.javafx.css.converters.StringConverter; import com.sun.javafx.css.converters.URLConverter; import javafx.geometry.Insets; import javafx.scene.effect.Effect; import javafx.scene.paint.Color; import javafx.scene.paint.Paint; import javafx.scene.text.Font; import javafx.util.Duration; /** * Converter converts {@code ParsedValue&tl;F,T>} from type F to type T. the * {@link CssMetaData} API requires a {@code StyleConverter} which is used * when computing a value for the {@see StyleableProperty}. There are * a number of predefined converters which are accessible by the static * methods of this class. * @see ParsedValue * @see StyleableProperty * @since JavaFX 8.0 */ public class StyleConverter<F, T> { /** * Convert from the parsed CSS value to the target property type. * * @param value The {@link ParsedValue} to convert * @param font The {@link Font} to use when converting a * <a href="http://www.w3.org/TR/css3-values/#relative-lengths">relative</a> * value. */ @SuppressWarnings("unchecked") public T convert(ParsedValue<F,T> value, Font font) { // unchecked! return (T) value.getValue(); } /** * @return A {@code StyleConverter} that converts "true" or "false" to {@code Boolean} * @see Boolean#valueOf(java.lang.String) */ public static StyleConverter<String,Boolean> getBooleanConverter() { return BooleanConverter.getInstance(); } /** * @return A {@code StyleConverter} that converts a String * representation of a duration to a {@link Duration} * * @since JavaFX 8u40 */ public static StyleConverter<?,Duration> getDurationConverter() { return DurationConverter.getInstance(); } /** * @return A {@code StyleConverter} that converts a String * representation of a web color to a {@code Color} * @see Color#web(java.lang.String) */ public static StyleConverter<String,Color> getColorConverter() { return ColorConverter.getInstance(); } /** * @return A {@code StyleConverter} that converts a parsed representation * of an {@code Effect} to an {@code Effect} * @see Effect */ public static StyleConverter<ParsedValue[], Effect> getEffectConverter() { return EffectConverter.getInstance(); } /** * @return A {@code StyleConverter} that converts a String representation * of an {@code Enum} to an {@code Enum} * @see Enum#valueOf(java.lang.Class, java.lang.String) */ public static <E extends Enum<E>> StyleConverter<String, ? extends Enum<?>> getEnumConverter(Class<E> enumClass) { // TODO: reuse EnumConverter instances EnumConverter<E> converter; converter = new EnumConverter<>(enumClass); return converter; } /** * @return A {@code StyleConverter} that converts a parsed representation * of a {@code Font} to an {@code Font}. * @see Font#font(java.lang.String, javafx.scene.text.FontWeight, javafx.scene.text.FontPosture, double) */ public static StyleConverter<ParsedValue[], Font> getFontConverter() { return FontConverter.getInstance(); } /** * @return A {@code StyleConverter} that converts a [<length> | * <percentage>]{1,4} to an {@code Insets}. */ public static StyleConverter<ParsedValue[], Insets> getInsetsConverter() { return InsetsConverter.getInstance(); } /** * @return A {@code StyleConverter} that converts a parsed representation * of a {@code Paint} to a {@code Paint}. */ public static StyleConverter<ParsedValue<?, Paint>, Paint> getPaintConverter() { return PaintConverter.getInstance(); } /** * CSS length and number values are parsed into a Size object that is * converted to a Number before the value is applied. If the property is * a {@code Number} type other than Double, the * {@link CssMetaData#set(javafx.scene.Node, java.lang.Object, javafx.css.Origin) set} * method of ({@code CssMetaData} can be over-ridden to convert the Number * to the correct type. For example, if the property is an {@code IntegerProperty}: * <code><pre> * {@literal @}Override public void set(MyNode node, Number value, Origin origin) { * if (value != null) { * super.set(node, value.intValue(), origin); * } else { * super.set(node, value, origin); * } * } * </pre></code> * @return A {@code StyleConverter} that converts a parsed representation * of a CSS length or number value to a {@code Number} that is an instance * of {@code Double}. */ public static StyleConverter<?, Number> getSizeConverter() { return SizeConverter.getInstance(); } /** * A converter for quoted strings which may have embedded unicode characters. * @return A {@code StyleConverter} that converts a representation of a * CSS string value to a {@code String}. */ public static StyleConverter<String,String> getStringConverter() { return StringConverter.getInstance(); } /** * A converter for URL strings. * @return A {@code StyleConverter} that converts a representation of a * CSS URL value to a {@code String}. */ public static StyleConverter<ParsedValue[], String> getUrlConverter() { return URLConverter.getInstance(); } }
Ms-Dos/Windows
Unix
Write backup
jsp File Browser version 1.2 by
www.vonloesch.de