Skip to content
Snippets Groups Projects
Commit 4671f198 authored by Andreas Bayha's avatar Andreas Bayha
Browse files

TreeViewer: Added line break for text-only cells.


Cell styling now also adds automatic line break for text cells.

Issue-ref: 4283
Issue-URL: af3#4283

Signed-off-by: default avatarAndreas Bayha <bayha@fortiss.org>
parent 0083d70b
No related branches found
No related tags found
1 merge request!1934283
Pipeline #37189 passed
Pipeline: maven-releng

#37190

    ......@@ -5,7 +5,7 @@ DynamicTextFieldTreeTableCell.java 62fa0c08b11d87e0eed41f84be85505c2740e75d GREE
    DynamicTreeContentProviderBase.java 91896b1fb5104d126544c44c1ff8c30f2a13a8d6 GREEN
    DynamicTreeItem.java 7e81ea98038b5eca90df583e0268d4e8f37aaf25 GREEN
    DynamicTreeItemBase.java d883066ecc181120302ca32f328538de7a45b093 GREEN
    DynamicTreeTableUIProviderBase.java 29aa753793ab90676d45e5b76b11f7b46ce02a97 GREEN
    DynamicTreeTableUIProviderBase.java ffb2508111b84845f5da6d46a2c0223d45dade04 YELLOW
    DynamicTreeTableViewer.java 77e9995a3bee37d57578dad9434a53c702128efa YELLOW
    DynamicTreeUIProviderBase.java 82d3c051213f0147f4c67ad247a08696cee73110 GREEN
    DynamicTreeViewer.java 33066062a82101cf28410e4d04f85bb9c24251db GREEN
    ......
    ......@@ -40,6 +40,7 @@ import javafx.scene.input.KeyEvent;
    import javafx.scene.input.MouseButton;
    import javafx.scene.input.MouseEvent;
    import javafx.scene.paint.Color;
    import javafx.scene.text.Text;
    import javafx.util.Callback;
    import javafx.util.converter.DefaultStringConverter;
    ......@@ -322,6 +323,16 @@ public abstract class DynamicTreeTableUIProviderBase<T> {
    final Node icon = getIconNode(data, columnIndex);
    cell.setGraphic(icon);
    cell.setStyle(getCellStyle(data, columnIndex));
    // For non-icon cells, enable line-break.
    if(icon == null) {
    Text text = new Text(cell.getText());
    text.setStyle("-fx-text-alignment:justify;");
    int lineWrapBorder = 5;
    text.wrappingWidthProperty()
    .bind(cell.getTableColumn().widthProperty().subtract(lineWrapBorder));
    cell.setGraphic(text);
    }
    } else {
    // reset icon for cases, in which a row was styled before, but became empty by now.
    cell.setGraphic(null);
    ......@@ -603,7 +614,7 @@ public abstract class DynamicTreeTableUIProviderBase<T> {
    * {@link DynamicTreeViewer} due to the absence of proper selection interfaces in
    * JFX.
    */
    private void addContextMenuHandler(TreeTableCell<T, String> cell, ContextMenu menu, T element) {
    private void addContextMenuHandler(TreeTableCell<T, ?> cell, ContextMenu menu, T element) {
    cell.getTreeTableView().addEventHandler(MouseEvent.MOUSE_RELEASED, e -> {
    if(e.getButton() == MouseButton.SECONDARY) {
    TreeItem<T> selected =
    ......
    0% Loading or .
    You are about to add 0 people to the discussion. Proceed with caution.
    Finish editing this message first!
    Please register or to comment