<%@ jet package="cruise.ui.jfx.templates.impl" imports="java.util.* cruise.model.abstractObjects.BackingObject cruise.umple.compiler.* cruise.ui.jfx.* " class="SelectManyView" skeleton="../jfx.skeleton" %> <% BackingObject bckObject = (BackingObject) argument; String preffix=JFXProvider.properties.getProperty(cruise.model.Constants.PACKAGE_PREFIX); List mergeList= new ArrayList(); mergeList.addAll( bckObject.getConstructorOneAsociations()); mergeList.addAll(bckObject.getZeroOrOneAsociations()); Iterator iterList; Iterator iterAssocList; %> package <%=preffix + ((bckObject.getPackageName().trim().length()>0)?("." + bckObject.getPackageName()):"")%>; import javafx.geometry.Rectangle2D; import javafx.scene.control.Label; import javafx.scene.control.Button; import javafx.scene.layout.HBox; import javafx.scene.layout.VBox; import javafx.scene.text.Font; import javafx.scene.text.FontWeight; import javafx.ext.swing.SwingComponent; import javafx.scene.Group; import java.awt.Dimension; import javafx.geometry.HPos; import javafx.scene.image.ImageView; import javafx.scene.control.TextBox; import <%=preffix%>.components.IntegerBox; import <%=(bckObject.getPackageName()!=null&&bckObject.getPackageName().trim().length()>0)?(bckObject.getPackageName().trim()+"."):""%><%=bckObject.getClassName()%>; <% for (Iterator i = bckObject.getImports().iterator(); i.hasNext(); ) { %> import <%=i.next().toString()%>; <% } %> import javafx.stage.Stage; import main.Application; import java.util.List; public class <%=bckObject.getClassName()%>SelectManyView { public var stage:Stage; public var selected<%=bckObject.getClassName()%>s:List; init { table.setPreferredSize(new Dimension(600, 140)); keyTable.setPreferredSize(new Dimension(260, 120)); } public var onConfirm: function(); var a<%=bckObject.getClassName()%>Table:<%=bckObject.getClassName()%>Table=new <%=bckObject.getClassName()%>Table(); var table = a<%=bckObject.getClassName()%>Table.create(); var tableComp = SwingComponent.wrap(table); var a<%=bckObject.getClassName()%>KeyTable:<%=bckObject.getClassName()%>KeyTable=new <%=bckObject.getClassName()%>KeyTable(selected<%=bckObject.getClassName()%>s); var keyTable = a<%=bckObject.getClassName()%>KeyTable.create(); var keyTableComp=SwingComponent.wrap(keyTable); var subTitleFont = Font.font("", FontWeight.BOLD, 14); var titleFont = Font.font("", FontWeight.BOLD, 16); var removeButton: Button = Button { text: "Remove"; action: function () { onRemove(); } } var cancelButton: Button = Button { text: "Cancel" action: function () { onCancel(); } } var confirmButton: Button = Button { text: "Confirm" action: function () { onConfirm(); } } var selectButton: Button = Button { text: "Select" action: function () { onSelect(); } } var keyTableBox= VBox { spacing:5 nodeHPos: HPos.RIGHT content: [ keyTableComp, removeButton]} function onRemove() { a<%=bckObject.getClassName()%>KeyTable.deleteSelected<%=bckObject.getClassName()%>(); } function onCancel() { stage.close(); } function onSelect() { if(not selected<%=bckObject.getClassName()%>s.contains(a<%=bckObject.getClassName()%>Table.getSelected<%=bckObject.getClassName()%>())){ selected<%=bckObject.getClassName()%>s.add(a<%=bckObject.getClassName()%>Table.getSelected<%=bckObject.getClassName()%>()); a<%=bckObject.getClassName()%>KeyTable.refresh(); } } public var a<%=bckObject.getClassName()%>SelectManyView:VBox = VBox { translateX: 20; spacing: 15 content: [ Label { text: "<%=bckObject.getClassName()%>" font: titleFont translateX: 0 translateY: 1 }, Label { text: "CurrentSelection" font: subTitleFont translateX: 0 translateY: 1 }, Group { content: keyTableBox }, VBox { width: bind a<%=bckObject.getClassName()%>SelectManyView.width nodeHPos: HPos.RIGHT spacing: 10; content: [tableComp, HBox { spacing: 10; content: [selectButton]}, ] } VBox { width: bind a<%=bckObject.getClassName()%>SelectManyView.width nodeHPos: HPos.CENTER spacing: 0; content: [ HBox { translateX: bind (a<%=bckObject.getClassName()%>SelectManyView.width) /2 -50 spacing: 10; content: [confirmButton, cancelButton]}, ] } ] }; }