All Downloads are FREE. Search and download functionalities are using the official Maven repository.

xworker.javafx.control.SliderActions Maven / Gradle / Ivy

There is a newer version: 2.0.2
Show newest version
package xworker.javafx.control;

import javafx.geometry.Orientation;
import javafx.scene.control.Slider;
import javafx.util.StringConverter;
import org.xmeta.ActionContext;
import org.xmeta.Thing;
import xworker.javafx.beans.property.PropertyFactory;
import xworker.javafx.util.JavaFXUtils;

public class SliderActions {
    static{
        PropertyFactory.regist(Slider.class, "snapToTicksProperty", o -> {
            Slider obj = (Slider) o;
            return obj.snapToTicksProperty();
        });
        PropertyFactory.regist(Slider.class, "labelFormatterProperty", o -> {
            Slider obj = (Slider) o;
            return obj.labelFormatterProperty();
        });
        PropertyFactory.regist(Slider.class, "showTickMarksProperty", o -> {
            Slider obj = (Slider) o;
            return obj.showTickMarksProperty();
        });
        PropertyFactory.regist(Slider.class, "showTickLabelsProperty", o -> {
            Slider obj = (Slider) o;
            return obj.showTickLabelsProperty();
        });
        PropertyFactory.regist(Slider.class, "majorTickUnitProperty", o -> {
            Slider obj = (Slider) o;
            return obj.majorTickUnitProperty();
        });
        PropertyFactory.regist(Slider.class, "valueChangingProperty", o -> {
            Slider obj = (Slider) o;
            return obj.valueChangingProperty();
        });
        PropertyFactory.regist(Slider.class, "maxProperty", o -> {
            Slider obj = (Slider) o;
            return obj.maxProperty();
        });
        PropertyFactory.regist(Slider.class, "valueProperty", o -> {
            Slider obj = (Slider) o;
            return obj.valueProperty();
        });
        PropertyFactory.regist(Slider.class, "blockIncrementProperty", o -> {
            Slider obj = (Slider) o;
            return obj.blockIncrementProperty();
        });
        PropertyFactory.regist(Slider.class, "orientationProperty", o -> {
            Slider obj = (Slider) o;
            return obj.orientationProperty();
        });
        PropertyFactory.regist(Slider.class, "minorTickCountProperty", o -> {
            Slider obj = (Slider) o;
            return obj.minorTickCountProperty();
        });
        PropertyFactory.regist(Slider.class, "minProperty", o -> {
            Slider obj = (Slider) o;
            return obj.minProperty();
        });
    }

	@SuppressWarnings("unchecked")
	public static void init(Slider node, Thing thing, ActionContext actionContext) {
		ControlActions.init(node, thing, actionContext);
		        
		if(thing.valueExists("blockIncrement")){
            node.setBlockIncrement(thing.getDouble("blockIncrement"));
        }
        if(thing.valueExists("labelFormatter")){
        	StringConverter lf = (StringConverter) JavaFXUtils.getObject(thing, "labelFormatter", actionContext);
        	if(lf != null) {
        		node.setLabelFormatter(lf);
        	}
        }
        if(thing.valueExists("majorTickUnit")){
            node.setMajorTickUnit(thing.getDouble("majorTickUnit"));
        }
        if(thing.valueExists("max")){
            node.setMax(thing.getDouble("max"));
        }
        if(thing.valueExists("minorTickCount")){
            node.setMinorTickCount(thing.getInt("minorTickCount"));
        }
        if(thing.valueExists("min")){
            node.setMin(thing.getDouble("min"));
        }
        if(thing.valueExists("orientation")){
            node.setOrientation(Orientation.valueOf(thing.getString("orientation")));
        }
        if(thing.valueExists("showTickLabels")){
            node.setShowTickLabels(thing.getBoolean("showTickLabels"));
        }
        if(thing.valueExists("showTickMarks")){
            node.setShowTickMarks(thing.getBoolean("showTickMarks"));
        }
        if(thing.valueExists("snapToTicks")){
            node.setSnapToTicks(thing.getBoolean("snapToTicks"));
        }
        if(thing.valueExists("valueChanging")){
            node.setValueChanging(thing.getBoolean("valueChanging"));
        }
        if(thing.valueExists("value")){
            node.setValue(thing.getDouble("value"));
        }
	}
	
	public static Slider create(ActionContext actionContext) {
		Thing self = actionContext.getObject("self");
		
		Slider item = new Slider();
		init(item, self, actionContext);
		actionContext.g().put(self.getMetadata().getName(), item);
		
		actionContext.peek().put("parent", item);
		for(Thing child : self.getChilds()) {
			child.doAction("create", actionContext);
		}
		
		return item;
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy