Package org.jrebirth.form.builder

Source Code of org.jrebirth.form.builder.DefaultFormBuilder

package org.jrebirth.form.builder;

import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Node;
import javafx.scene.control.Label;
import javafx.scene.control.LabelBuilder;
import javafx.scene.effect.DropShadowBuilder;
import javafx.scene.layout.AnchorPane;
import javafx.scene.layout.HBox;
import javafx.scene.layout.HBoxBuilder;
import javafx.scene.layout.Priority;
import javafx.scene.layout.VBox;
import javafx.scene.layout.VBoxBuilder;
import javafx.scene.paint.Color;
import javafx.scene.shape.LineBuilder;

public class DefaultFormBuilder implements FormBuilder {

 

  @Override
  public Node createForm() {

      VBox rootBox = VBoxBuilder.create()
          .spacing(10)
          .build();
     
     
      rootBox.getChildren().addAll(
          buildVBox(),
          buildVBox(),
          buildVBox()
          );
     
        AnchorPane.setTopAnchor(rootBox, 10.0);
        AnchorPane.setLeftAnchor(rootBox, 10.0);

        return rootBox;

    }

  private VBox buildVBox() {
    final VBox contentBox = VBoxBuilder.create()
                .styleClass("Form")
                .prefWidth(200)
               
                .build();



        contentBox.getChildren().add(createField("FIELD", "km/h"));
        contentBox.getChildren().add(createLine());
        contentBox.getChildren().add(createField("Field", "km/h"));
        contentBox.getChildren().add(createLine());
        contentBox.getChildren().add(createField("Field", "km/h"));
        contentBox.getChildren().add(createLine());
        contentBox.getChildren().add(createField("Field", "km/h"));
        contentBox.getChildren().add(createLine());
        contentBox.getChildren().add(createField("Field", "km/h"));
    return contentBox;
  }

    private Node createLine() {

        return LineBuilder.create()
            .styleClass("FormSeparator")
                .startX(0).startY(0)
                .endX(200).endY(0)
                .stroke(Color.GREY)
                .strokeWidth(1)
                .effect(DropShadowBuilder.create()
                        .offsetX(0)
                        .offsetY(1)
                        .radius(1)
                        .color(Color.web("262626"))
                        .build())
                .build();
    }

    private Node createField(final String string, final String string2) {

        final HBox box = HBoxBuilder.create()
            .styleClass("FormRow")
            .alignment(Pos.CENTER_LEFT)
            .build();

        final Label fieldLabel = LabelBuilder.create()
                .text(string)
                .styleClass("FieldLabel")
                .alignment(Pos.BASELINE_LEFT)
//                .effect(DropShadowBuilder.create()
//
//                        .input(InnerShadowBuilder.create()
//
//                                .color(Color.web("dfdfdf"))
//                                .build())
//
//                        .color(Color.web("#bfbfbf"))
//                        .height(5)
//                        .offsetX(1)
//                        .offsetY(-1)
//                        .radius(1)
//                        .spread(0)
//                        .width(2)
//                        .build())

                .build();
       
        HBox.setHgrow(fieldLabel, Priority.NEVER);
        HBox.setMargin(fieldLabel, new Insets(0, 10, 0, 10));

        final Label unity = LabelBuilder.create()
                .text(string2)
                .styleClass("FieldUnity")
//                .effect(DropShadowBuilder.create()
//
//                        .color(Color.web("#262626"))
//                        .height(5)
//                        .offsetX(1)
//                        .offsetY(-1)
//                        .radius(1)
//                        .spread(0)
//                        .width(2)
//                        .build())
                .build();
       
        HBox.setHgrow(unity, Priority.NEVER);
        HBox.setMargin(unity, new Insets(0, 0, 0, 0));

        final Label fieldValue = LabelBuilder.create()
                .text("...")
                .styleClass("FieldValue")
                .build();
       
        HBox.setHgrow(fieldValue, Priority.ALWAYS);
        HBox.setMargin(fieldValue, new Insets(0, 0, 0, 0));

        box.getChildren().addAll(fieldLabel, unity, fieldValue);

        return box;
    }

}
TOP

Related Classes of org.jrebirth.form.builder.DefaultFormBuilder

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.