@Override
public void start(Stage primaryStage) throws Exception {
ResponsivePane lResponsivePane = new ResponsivePane();
lResponsivePane.addReusableNode("CalendarPicker", new CalendarPicker());
lResponsivePane.addReusableNode("TreeView", new TreeView());
lResponsivePane.addReusableNode("TableView", new TableView());
lResponsivePane.addReusableNode("save", new Button("save"));
lResponsivePane.addReusableNode("saveAndTomorrow", new Button("saveAndTomorrow"));
lResponsivePane.addReusableNode("-", new Button("-"));
lResponsivePane.addReusableNode("+", new Button("+"));
lResponsivePane.addReusableNode("Logo", new Button("Logo"));
lResponsivePane.addReusableNode("version", new Label("v1.0"));
lResponsivePane.setDeviceSize("PHABLET", Diagonal.inch(9.0));
lResponsivePane.addLayout(Diagonal.inch(3.5), createPhoneLayout());
lResponsivePane.addLayout(Diagonal.inch(12.0), createDesktopLayout());
lResponsivePane.addSceneStylesheet(Diagonal.inch(4.0), getClass().getResource("phone.css").toExternalForm());
lResponsivePane.addSceneStylesheet(Diagonal.inch(6.0), getClass().getResource("tablet.css").toExternalForm());
lResponsivePane.addSceneStylesheet(Diagonal.inch(12.0), getClass().getResource("desktop.css").toExternalForm());
}
private Node createDesktopLayout() {
MigPane migPane = new MigPane();
migPane.add(new Ref("Logo"), new CC());
migPane.add(new Ref("version"), new CC().spanX(2).alignX("right").alignY("top").wrap());
migPane.add(new Ref("CalendarPicker"), new CC().alignY("top"));
migPane.add(new Ref("TreeView"), new CC().grow().pushX().spanY(3).wrap());
...
return migPane;
}
private Node createPhoneLayout() {
TabPane tabPane = new TabPane();
tabPane.getTabs().add(createTab("Date", "Calendar", new Ref("CalendarPicker")));
tabPane.getTabs().add(createTab("Tree", "Projectboom", new Ref("TreeView")));
tabPane.getTabs().add(createTab("Calc", "Totalen", new Ref("TreeView")));
...
return tabPane;
}