use of javafx.scene.layout.Priority in project dolphin-platform by canoo.
the class ViewFactory method updateContentByMetadata.
private void updateContentByMetadata(WithLayoutMetadata bean, Node content) {
Priority priority = MetadataUtilities.getMetadata(ViewMetadata.JAVAFX_LAYOUT_CONTENT_GROW, bean).map(m -> Priority.valueOf(Optional.ofNullable(m.getValue()).orElse("").toString())).orElse(Priority.SOMETIMES);
HBox.setHgrow(content, priority);
VBox.setVgrow(content, priority);
double margin = MetadataUtilities.getMetadata(ViewMetadata.JAVAFX_LAYOUT_MARGIN, bean).map(m -> Double.parseDouble(Optional.ofNullable(m.getValue()).orElse("0.0").toString())).orElse(0.0);
HBox.setMargin(content, new Insets(margin));
VBox.setMargin(content, new Insets(margin));
}
use of javafx.scene.layout.Priority in project POL-POM-5 by PlayOnLinux.
the class RepositoriesPanelSkin method createRepositoryLocationTable.
/**
* Creates a {@link TableView} containing the {@link RepositoryLocation} objects
*
* @return A {@link TableView} containing the {@link RepositoryLocation} objects
*/
private TableView<RepositoryLocation<? extends Repository>> createRepositoryLocationTable() {
final TableView<RepositoryLocation<? extends Repository>> repositoryLocationTable = new TableView<>();
repositoryLocationTable.getStyleClass().add("repositories-table");
// add the priority column
repositoryLocationTable.getColumns().add(createColumn(tr("Priority"), repositoryLocation -> getControl().getRepositoryLocations().indexOf(repositoryLocation) + 1));
// add the repository name column
repositoryLocationTable.getColumns().add(createColumn(tr("Repository name"), RepositoryLocation::toDisplayString));
repositoryLocationTable.setRowFactory(tv -> {
final TableRow<RepositoryLocation<? extends Repository>> row = new TableRow<>();
row.getStyleClass().add("repository-row");
final Tooltip repositoryLocationTooltip = new Tooltip(tr("Move the repository up or down to change its priority"));
// ensure that the tooltip is only shown for non empty rows
row.emptyProperty().addListener((Observable invalidation) -> {
if (row.isEmpty()) {
Tooltip.uninstall(row, repositoryLocationTooltip);
} else {
Tooltip.install(row, repositoryLocationTooltip);
}
});
row.setOnDragDetected(event -> {
if (!row.isEmpty()) {
final int index = row.getIndex();
final Dragboard dragboard = row.startDragAndDrop(TransferMode.MOVE);
// create a preview image
final RepositoryLocation<? extends Repository> repositoryLocation = getControl().getRepositoryLocations().get(index);
dragboard.setDragView(createPreviewImage(repositoryLocation));
// save the dragged repository index
final ClipboardContent content = new ClipboardContent();
content.put(repositoryLocationFormat, index);
dragboard.setContent(content);
event.consume();
}
});
row.setOnDragOver(event -> {
final Dragboard dragboard = event.getDragboard();
if (dragboard.hasContent(repositoryLocationFormat) && row.getIndex() != (Integer) dragboard.getContent(repositoryLocationFormat)) {
event.acceptTransferModes(TransferMode.COPY_OR_MOVE);
event.consume();
}
});
row.setOnDragDropped(event -> {
final Dragboard dragboard = event.getDragboard();
if (dragboard.hasContent(repositoryLocationFormat)) {
final int draggedIndex = (Integer) dragboard.getContent(repositoryLocationFormat);
final List<RepositoryLocation<? extends Repository>> workingCopy = new ArrayList<>(getControl().getRepositoryLocations());
final RepositoryLocation<? extends Repository> draggedRepositoryLocation = workingCopy.remove(draggedIndex);
final int dropIndex = row.isEmpty() ? workingCopy.size() : row.getIndex();
workingCopy.add(dropIndex, draggedRepositoryLocation);
getControl().getRepositoryLocations().setAll(workingCopy);
event.setDropCompleted(true);
event.consume();
}
});
return row;
});
Bindings.bindContent(repositoryLocationTable.getItems(), getControl().getRepositoryLocations());
return repositoryLocationTable;
}
Aggregations