类javafx.scene.control.TreeTableView源码实例Demo

下面列出了怎么用javafx.scene.control.TreeTableView的API类实例代码及写法,或者点击链接到github查看源代码。

@SuppressWarnings("unchecked")
private String getTreeTableItemText(TreeTableView<?> treeTableView, TreeItem<?> lastPathComponent) {
    @SuppressWarnings("rawtypes")
    TreeTableColumn treeTableColumn = treeTableView.getTreeColumn();
    if (treeTableColumn == null) {
        treeTableColumn = treeTableView.getColumns().get(0);
    }
    ObservableValue<?> cellObservableValue = treeTableColumn.getCellObservableValue(lastPathComponent);
    String original = cellObservableValue.getValue().toString();
    String itemText = original;
    int suffixIndex = 0;
    TreeItem<?> parent = lastPathComponent.getParent();
    if (parent == null)
        return itemText;
    ObservableList<?> children = parent.getChildren();
    for (int i = 0; i < children.indexOf(lastPathComponent); i++) {
        TreeItem<?> child = (TreeItem<?>) children.get(i);
        cellObservableValue = treeTableColumn.getCellObservableValue(child);
        String current = cellObservableValue.getValue().toString();
        if (current.equals(original)) {
            itemText = String.format("%s(%d)", original, ++suffixIndex);
        }
    }
    return itemText;
}
 
@SuppressWarnings("unchecked")
protected void selectTreeTableCells(TreeTableView<?> treeTableView, String value) {
    @SuppressWarnings("rawtypes")
    TreeTableViewSelectionModel selectionModel = treeTableView.getSelectionModel();
    JSONObject cells = new JSONObject(value);
    JSONArray object = (JSONArray) cells.get("cells");
    for (int i = 0; i < object.length(); i++) {
        JSONArray jsonArray = object.getJSONArray(i);
        int rowIndex = getTreeTableNodeIndex(treeTableView, jsonArray.getString(0));
        int columnIndex = getTreeTableColumnIndex(treeTableView, jsonArray.getString(1));
        @SuppressWarnings("rawtypes")
        TreeTableColumn column = treeTableView.getColumns().get(columnIndex);
        if (getVisibleCellAt(treeTableView, rowIndex, columnIndex) == null) {
            treeTableView.scrollToColumn(column);
            treeTableView.scrollTo(rowIndex);
        }
        selectionModel.select(rowIndex, column);
    }
}
 
源代码3 项目: marathonv5   文件: JavaFXTreeTableViewElement.java
@Override
public List<IJavaFXElement> getByPseudoElement(String selector, Object[] params) {
    if (selector.equals("root")) {
        return Arrays.asList(new JavaFXTreeTableViewCellElement(this, 0, 0));
    } else if (selector.equals("mnth-cell")) {
        return Arrays.asList(new JavaFXTreeTableViewCellElement(this, ((Integer) params[0]).intValue() - 1,
                ((Integer) params[1]).intValue() - 1));
    } else if (selector.equals("all-cells")) {
        TreeTableView<?> tableView = (TreeTableView<?>) getComponent();
        int rowCount = tableView.getExpandedItemCount();
        int columnCount = tableView.getColumns().size();
        ArrayList<IJavaFXElement> r = new ArrayList<>();
        for (int i = 0; i < rowCount; i++) {
            for (int j = 0; j < columnCount; j++) {
                r.add(new JavaFXTreeTableViewCellElement(this, i, j));
            }
        }
        return r;
    } else if (selector.equals("select-by-properties")) {
        return findSelectByProperties(new JSONObject((String) params[0]));
    }
    return super.getByPseudoElement(selector, params);
}
 
@SuppressWarnings("unchecked")
@Test
public void selectNoCell() {
    TreeTableView<?> treeTableNode = (TreeTableView<?>) getPrimaryStage().getScene().getRoot().lookup(".tree-table-view");
    Platform.runLater(() -> {
        TreeTableViewSelectionModel<?> selectionModel = treeTableNode.getSelectionModel();
        selectionModel.setCellSelectionEnabled(true);
        selectionModel.select(0, getTreeTableColumnAt(treeTableNode, 0));
        treeTable.marathon_select("");
    });
    new Wait("Waiting for no cell selection") {
        @Override
        public boolean until() {
            return treeTableNode.getSelectionModel().getSelectedCells().size() == 0;
        }
    };
}
 
@SuppressWarnings("unchecked")
@Test
public void selectAllCells() {
    TreeTableView<?> treeTableNode = (TreeTableView<?>) getPrimaryStage().getScene().getRoot().lookup(".tree-table-view");
    Platform.runLater(() -> {
        TreeTableViewSelectionModel<?> selectionModel = treeTableNode.getSelectionModel();
        selectionModel.setCellSelectionEnabled(true);
        selectionModel.setSelectionMode(SelectionMode.MULTIPLE);
        selectionModel.selectRange(0, getTreeTableColumnAt(treeTableNode, 0), treeTableNode.getExpandedItemCount() - 1,
                getTreeTableColumnAt(treeTableNode, 1));
        treeTable.marathon_select("all");
    });
    new Wait("Waiting for all cells to be selected") {
        @Override
        public boolean until() {
            return treeTableNode.getSelectionModel().getSelectedCells().size() == treeTableNode.getExpandedItemCount()
                    * treeTableNode.getColumns().size();
        }
    };
}
 
@Test
public void selectMultipleCells() {
    TreeTableView<?> treeTableNode = (TreeTableView<?>) getPrimaryStage().getScene().getRoot().lookup(".tree-table-view");
    Platform.runLater(() -> {
        TreeTableViewSelectionModel<?> selectionModel = treeTableNode.getSelectionModel();
        selectionModel.setSelectionMode(SelectionMode.MULTIPLE);
        selectionModel.setCellSelectionEnabled(true);
        treeTable.marathon_select(
                "{\"cells\":[[\"/Sales Department/Ethan Williams\",\"Employee\"],[\"/Sales Department/Michael Brown\",\"Email\"]]}");
    });
    new Wait("Waiting for cells to be selected") {
        @Override
        public boolean until() {
            return treeTableNode.getSelectionModel().getSelectedCells().size() == 2;
        }
    };
}
 
@Test
public void getText() {
    TreeTableView<?> treeTableNode = (TreeTableView<?>) getPrimaryStage().getScene().getRoot().lookup(".tree-table-view");
    List<String> text = new ArrayList<>();
    Platform.runLater(() -> {
        treeTableNode.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
        treeTable.marathon_select("{\"rows\":[\"/Sales Department/Emma Jones\",\"/Sales Department/Anna Black\"]}");
        text.add(treeTable.getAttribute("text"));
    });
    new Wait("Waiting for tree table text.") {
        @Override
        public boolean until() {
            return text.size() > 0;
        }
    };
    AssertJUnit.assertEquals("{\"rows\":[\"/Sales Department/Emma Jones\",\"/Sales Department/Anna Black\"]}", text.get(0));
}
 
@Test
public void getText() {
    TreeTableView<?> treeTableNode = (TreeTableView<?>) getPrimaryStage().getScene().getRoot().lookup(".tree-table-view");
    List<String> text = new ArrayList<>();
    Platform.runLater(() -> {
        treeTableNode.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
        treeTable.marathon_select("{\"rows\":[\"/Sales Department/Emma Jones\",\"/Sales Department/Anna Black\"]}");
        text.add(treeTable.getAttribute("text"));
    });
    new Wait("Waiting for tree table text.") {
        @Override
        public boolean until() {
            return text.size() > 0;
        }
    };
    AssertJUnit.assertEquals("{\"rows\":[\"/Sales Department/Emma Jones\",\"/Sales Department/Anna Black\"]}", text.get(0));
}
 
源代码9 项目: marathonv5   文件: RFXComponentTest.java
protected Point2D getPoint(TreeTableView<?> treeTableView, int rowIndex, int columnIndex) {
    Set<Node> treeTableRowCell = treeTableView.lookupAll(".tree-table-row-cell");
    TreeTableRow<?> row = null;
    for (Node tableRow : treeTableRowCell) {
        TreeTableRow<?> r = (TreeTableRow<?>) tableRow;
        if (r.getIndex() == rowIndex) {
            row = r;
            break;
        }
    }
    Set<Node> cells = row.lookupAll(".tree-table-cell");
    for (Node node : cells) {
        TreeTableCell<?, ?> cell = (TreeTableCell<?, ?>) node;
        if (treeTableView.getColumns().indexOf(cell.getTableColumn()) == columnIndex) {
            Bounds bounds = cell.getBoundsInParent();
            Point2D localToParent = cell.localToParent(bounds.getWidth() / 2, bounds.getHeight() / 2);
            Point2D rowLocal = row.localToScene(localToParent, true);
            return rowLocal;
        }
    }
    return null;
}
 
源代码10 项目: marathonv5   文件: RFXTreeTableViewTest.java
@Test
public void selectMulptipleRows() {
    TreeTableView<?> treeTableView = (TreeTableView<?>) getPrimaryStage().getScene().getRoot().lookup(".tree-table-view");
    LoggingRecorder lr = new LoggingRecorder();
    Platform.runLater(() -> {
        treeTableView.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
        RFXTreeTableView rfxTreeTableView = new RFXTreeTableView(treeTableView, null, null, lr);
        treeTableView.getSelectionModel().selectIndices(2, 4);
        rfxTreeTableView.focusLost(null);
    });
    List<Recording> recordings = lr.waitAndGetRecordings(1);
    Recording recording = recordings.get(0);
    AssertJUnit.assertEquals("recordSelect", recording.getCall());
    AssertJUnit.assertEquals("{\"rows\":[\"/Sales Department/Emma Jones\",\"/Sales Department/Anna Black\"]}",
            recording.getParameters()[0]);
}
 
源代码11 项目: marathonv5   文件: RFXTreeTableViewTest.java
@Test
public void selectAllRows() {
    TreeTableView<?> treeTableView = (TreeTableView<?>) getPrimaryStage().getScene().getRoot().lookup(".tree-table-view");
    LoggingRecorder lr = new LoggingRecorder();
    Platform.runLater(() -> {
        treeTableView.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
        RFXTreeTableView rfxTreeTableView = new RFXTreeTableView(treeTableView, null, null, lr);
        int count = treeTableView.getExpandedItemCount();
        for (int i = 0; i < count; i++) {
            treeTableView.getSelectionModel().select(i);
        }
        rfxTreeTableView.focusLost(null);
    });
    List<Recording> recordings = lr.waitAndGetRecordings(1);
    Recording recording = recordings.get(0);
    AssertJUnit.assertEquals("recordSelect", recording.getCall());
    AssertJUnit.assertEquals("all", recording.getParameters()[0]);
}
 
源代码12 项目: marathonv5   文件: RFXTreeTableViewTest.java
@SuppressWarnings("unchecked")
@Test
public void selectMultipleCells() {
    TreeTableView<?> treeTableView = (TreeTableView<?>) getPrimaryStage().getScene().getRoot().lookup(".tree-table-view");
    LoggingRecorder lr = new LoggingRecorder();
    Platform.runLater(() -> {
        TreeTableViewSelectionModel<?> selectionModel = treeTableView.getSelectionModel();
        selectionModel.setCellSelectionEnabled(true);
        selectionModel.setSelectionMode(SelectionMode.MULTIPLE);
        Point2D point = getPoint(treeTableView, 1, 0);
        RFXTreeTableView rfxTreeTableView = new RFXTreeTableView(treeTableView, null, point, lr);
        rfxTreeTableView.focusGained(null);
        @SuppressWarnings("rawtypes")
        TreeTableColumn column = getTreeTableColumnAt(treeTableView, 0);
        selectionModel.select(1, column);
        selectionModel.select(3, getTreeTableColumnAt(treeTableView, 1));
        rfxTreeTableView.focusLost(null);
    });
    List<Recording> recordings = lr.waitAndGetRecordings(1);
    Recording recording = recordings.get(0);
    AssertJUnit.assertEquals("recordSelect", recording.getCall());
    AssertJUnit.assertEquals(
            "{\"cells\":[[\"/Sales Department/Ethan Williams\",\"Employee\"],[\"/Sales Department/Michael Brown\",\"Email\"]]}",
            recording.getParameters()[0]);
}
 
源代码13 项目: marathonv5   文件: RFXTreeTableViewTest.java
@SuppressWarnings("unchecked")
@Test
public void selectACell() {
    TreeTableView<?> treeTableView = (TreeTableView<?>) getPrimaryStage().getScene().getRoot().lookup(".tree-table-view");
    LoggingRecorder lr = new LoggingRecorder();
    Platform.runLater(() -> {
        TreeTableViewSelectionModel<?> selectionModel = treeTableView.getSelectionModel();
        selectionModel.setCellSelectionEnabled(true);
        Point2D point = getPoint(treeTableView, 1, 0);
        RFXTreeTableView rfxTreeTableView = new RFXTreeTableView(treeTableView, null, point, lr);
        rfxTreeTableView.focusGained(null);
        @SuppressWarnings("rawtypes")
        TreeTableColumn column = getTreeTableColumnAt(treeTableView, 0);
        selectionModel.select(1, column);
        rfxTreeTableView.focusLost(null);
    });
    List<Recording> recordings = lr.waitAndGetRecordings(1);
    Recording recording = recordings.get(0);
    AssertJUnit.assertEquals("recordSelect", recording.getCall());
    AssertJUnit.assertEquals("{\"cells\":[[\"/Sales Department/Ethan Williams\",\"Employee\"]]}", recording.getParameters()[0]);
}
 
源代码14 项目: marathonv5   文件: RFXTreeTableViewTest.java
@SuppressWarnings("unchecked")
@Test
public void selectAllCells() {
    TreeTableView<?> treeTableView = (TreeTableView<?>) getPrimaryStage().getScene().getRoot().lookup(".tree-table-view");
    LoggingRecorder lr = new LoggingRecorder();
    Platform.runLater(() -> {
        treeTableView.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
        RFXTreeTableView rfxTreeTableView = new RFXTreeTableView(treeTableView, null, null, lr);
        int count = treeTableView.getExpandedItemCount();
        treeTableView.getSelectionModel().selectRange(0, getTreeTableColumnAt(treeTableView, 0), count - 1,
                getTreeTableColumnAt(treeTableView, 1));
        rfxTreeTableView.focusLost(null);
    });
    List<Recording> recordings = lr.waitAndGetRecordings(1);
    Recording recording = recordings.get(0);
    AssertJUnit.assertEquals("recordSelect", recording.getCall());
    AssertJUnit.assertEquals("all", recording.getParameters()[0]);
}
 
源代码15 项目: marathonv5   文件: RFXTreeTableViewTest.java
@Test
public void getText() {
    TreeTableView<?> treeTableView = (TreeTableView<?>) getPrimaryStage().getScene().getRoot().lookup(".tree-table-view");
    LoggingRecorder lr = new LoggingRecorder();
    List<String> text = new ArrayList<>();
    Platform.runLater(() -> {
        RFXTreeTableView rfxTreeTableView = new RFXTreeTableView(treeTableView, null, null, lr);
        treeTableView.getSelectionModel().select(2);
        rfxTreeTableView.focusLost(null);
        text.add(rfxTreeTableView.getAttribute("text"));
    });
    new Wait("Waiting for tree table view text.") {
        @Override
        public boolean until() {
            return text.size() > 0;
        }
    };
    AssertJUnit.assertEquals("{\"rows\":[\"/Sales Department/Emma Jones\"]}", text.get(0));
}
 
源代码16 项目: diirt   文件: ServiceViewer.java
public ServiceViewer() {
    FXMLLoader fxmlLoader = new FXMLLoader(
            getClass().getResource("ServiceViewer.fxml"));

    fxmlLoader.setRoot(this);
    fxmlLoader.setController(this);

    try {
        fxmlLoader.load();
    } catch (IOException exception) {
        throw new RuntimeException(exception);
    }

    TreeItem<BrowserItem> root = new TreeBrowserItem(new ServiceRootBrowserItem());
    root.setExpanded(true);
    servicesTreeTable.setRoot(root);
    servicesTreeTable.setShowRoot(false);
    servicesTreeTable.setColumnResizePolicy(TreeTableView.CONSTRAINED_RESIZE_POLICY);
    TreeTableColumn<BrowserItem,String> nameCol = new TreeTableColumn<>("Name");
    TreeTableColumn<BrowserItem,String> descriptionCol = new TreeTableColumn<>("Description");

    servicesTreeTable.getColumns().setAll(nameCol, descriptionCol);

    nameCol.setCellValueFactory(new TreeItemPropertyValueFactory<>("name"));
    descriptionCol.setCellValueFactory(new TreeItemPropertyValueFactory<>("description"));
}
 
源代码17 项目: mzmine3   文件: FeatureTableFX.java
/**
 * Copy all rows of selected cells
 *
 * @param table
 * @param addHeader
 */
@SuppressWarnings("rawtypes")
public void copySelectionToClipboard(final TreeTableView<ModularFeatureListRow> table,
    boolean addHeader) {
  // final Set<Integer> rows = new TreeSet<>();
  // for (final TreeTablePosition tablePosition : table.getSelectionModel().getSelectedCells()) {
  // rows.add(tablePosition.getRow());
  // }
  // final StringBuilder strb = new StringBuilder();
  // boolean firstRow = true;
  // for (final Integer row : rows) {
  // if (!firstRow) {
  // strb.append('\n');
  // } else if (addHeader) {
  // for (final TreeTableColumn<ModularFeatureListRow, ?> column : table.getColumns()) {
  // strb.append(column.getText());
  // }
  // strb.append('\n');
  // }
  // boolean firstCol = true;
  // for (final TreeTableColumn<ModularFeatureListRow, ?> column : table.getColumns()) {
  // if (!firstCol) {
  // strb.append('\t');
  // }
  // firstCol = false;
  // final Object cellData = column.getCellData(row);
  // if (cellData == null)
  // strb.append("");
  // else if (cellData instanceof DataType<?>)
  // strb.append(((DataType<?>) cellData).getFormattedString(cellData));
  // else
  // strb.append(cellData.toString());
  // }
  // firstRow = false;
  // }
  // final ClipboardContent clipboardContent = new ClipboardContent();
  // clipboardContent.putString(strb.toString());
  // Clipboard.getSystemClipboard().setContent(clipboardContent);
}
 
源代码18 项目: marathonv5   文件: JavaFXElementPropertyAccessor.java
public String getTreeTableCellText(TreeTableView<?> treeTableView, int row, int column) {
    if (column == -1 || row == -1) {
        return null;
    }
    String scolumn = getTreeTableColumnName(treeTableView, column);
    if (scolumn == null || "".equals(scolumn)) {
        scolumn = "" + column;
    }
    return new JSONObject()
            .put("cell", new JSONArray()
                    .put(getTreeTableNodePath(treeTableView, treeTableView.getSelectionModel().getModelItem(row))).put(scolumn))
            .toString();
}
 
源代码19 项目: marathonv5   文件: JavaFXElementPropertyAccessor.java
public TreeTableCell<?, ?> getTreeTableCellAt(TreeTableView<?> treeTableView, Point2D point) {
    point = treeTableView.localToScene(point);
    Set<Node> lookupAll = getTreeTableCells(treeTableView);
    TreeTableCell<?, ?> selected = null;
    for (Node cellNode : lookupAll) {
        Bounds boundsInScene = cellNode.localToScene(cellNode.getBoundsInLocal(), true);
        if (boundsInScene.contains(point)) {
            selected = (TreeTableCell<?, ?>) cellNode;
            break;
        }
    }
    return selected;
}
 
源代码20 项目: marathonv5   文件: JavaFXElementPropertyAccessor.java
protected int getTreeTableColumnAt(TreeTableView<?> treeTableView, Point2D point) {
    TreeTableCell<?, ?> selected = getTreeTableCellAt(treeTableView, point);
    if (selected == null) {
        return -1;
    }
    return treeTableView.getColumns().indexOf(selected.getTableColumn());
}
 
源代码21 项目: marathonv5   文件: JavaFXElementPropertyAccessor.java
protected int getTreeTableRowAt(TreeTableView<?> treeTableView, Point2D point) {
    TreeTableCell<?, ?> selected = getTreeTableCellAt(treeTableView, point);
    if (selected == null) {
        return -1;
    }
    return selected.getTreeTableRow().getIndex();
}
 
源代码22 项目: marathonv5   文件: JavaFXElementPropertyAccessor.java
@SuppressWarnings("rawtypes")
public TreeTableCell getVisibleCellAt(TreeTableView<?> treeTableView, int row, int column) {
    Set<Node> lookupAll = getTreeTableCells(treeTableView);
    TreeTableCell cell = null;
    for (Node node : lookupAll) {
        TreeTableCell<?, ?> cell1 = (TreeTableCell<?, ?>) node;
        TreeTableRow<?> tableRow = cell1.getTreeTableRow();
        TreeTableColumn<?, ?> tableColumn = cell1.getTableColumn();
        if (tableRow.getIndex() == row && tableColumn == treeTableView.getColumns().get(column)) {
            cell = cell1;
            break;
        }
    }
    return cell;
}
 
源代码23 项目: marathonv5   文件: JavaFXElementPropertyAccessor.java
private Set<Node> getTreeTableCells(TreeTableView<?> treeTableView) {
    Set<Node> l = treeTableView.lookupAll("*");
    Set<Node> r = new HashSet<>();
    for (Node node : l) {
        if (node instanceof TreeTableCell<?, ?>) {
            if (!((TreeTableCell<?, ?>) node).isEmpty())
                r.add(node);
        }
    }
    return r;
}
 
源代码24 项目: marathonv5   文件: JavaFXElementPropertyAccessor.java
public String getTextForTreeTableNode(TreeTableView<?> treeTableView, TreeItem<?> selectedItem) {
    StringBuilder sb = new StringBuilder();
    Object[] treePath = buildTreePath(selectedItem);
    int start = treeTableView.isShowRoot() ? 0 : 1;
    for (int i = start; i < treePath.length; i++) {
        String pathString = escapeSpecialCharacters(getTextForTreeTableNodeObject(treeTableView, (TreeItem<?>) treePath[i]));
        sb.append("/").append(pathString);
    }
    return sb.toString();
}
 
源代码25 项目: marathonv5   文件: JavaFXElementPropertyAccessor.java
public JSONArray getTreeTableNodeText(TreeTableView<?> treeTableView, ObservableList<?> selectedItems) {
    JSONArray pa = new JSONArray();
    for (Object object : selectedItems) {
        pa.put(getTextForTreeTableNode(treeTableView, (TreeItem<?>) object));
    }
    return pa;
}
 
源代码26 项目: marathonv5   文件: JavaFXElementPropertyAccessor.java
public String getTreeTableSelection(TreeTableView<?> treeTableView) {
    TreeTableViewSelectionModel<?> selectionModel = treeTableView.getSelectionModel();
    ObservableList<Integer> selectedIndices = selectionModel.getSelectedIndices();
    ObservableList<?> selectedCells = selectionModel.getSelectedCells();
    int rowCount = treeTableView.getExpandedItemCount();
    int columnCount = treeTableView.getColumns().size();
    if (selectedIndices.size() == 0 || selectedCells.size() == 0) {
        return "";
    } else if (!selectionModel.isCellSelectionEnabled() && selectedIndices.size() == treeTableView.getExpandedItemCount()
            || selectionModel.isCellSelectionEnabled() && selectedCells.size() == rowCount * columnCount) {
        return "all";
    } else if (!selectionModel.isCellSelectionEnabled()) {
        return getTreeTableRowSelectionText(treeTableView, selectionModel.getSelectedItems());
    } else {
        int[] rows = new int[selectedCells.size()];
        int[] columns = new int[selectedCells.size()];
        JSONObject cells = new JSONObject();
        JSONArray value = new JSONArray();
        for (int i = 0; i < selectedCells.size(); i++) {
            TreeTablePosition<?, ?> cell = (TreeTablePosition<?, ?>) selectedCells.get(i);
            rows[i] = cell.getRow();
            columns[i] = cell.getColumn();
            List<String> cellValue = new ArrayList<>();
            cellValue.add(getTreeTableNodePath(treeTableView, selectionModel.getModelItem(cell.getRow())));
            cellValue.add(getTreeTableColumnName(treeTableView, cell.getColumn()));
            value.put(cellValue);
        }
        cells.put("cells", value);
        return cells.toString();
    }
}
 
源代码27 项目: marathonv5   文件: JavaFXElementPropertyAccessor.java
protected int getTreeTableColumnIndex(TreeTableView<?> treeTableView, String columnName) {
    ObservableList<?> columns = treeTableView.getColumns();
    int ncolumns = columns.size();
    for (int i = 0; i < ncolumns; i++) {
        @SuppressWarnings("rawtypes")
        String column = ((TreeTableColumn) columns.get(i)).getText();
        if (columnName.equals(escapeSpecialCharacters(column))) {
            return i;
        }
    }
    throw new RuntimeException("Could not find column " + columnName + " in tree table");
}
 
源代码28 项目: marathonv5   文件: JavaFXElementPropertyAccessor.java
protected int[] getTreeTableSelectedRows(TreeTableView<?> treeTableView, String value) {
    JSONArray o = new JSONObject(value).getJSONArray("rows");
    int[] rows = new int[o.length()];
    for (int i = 0; i < o.length(); i++) {
        rows[i] = getTreeTableNodeIndex(treeTableView, o.getString(i));
    }
    return rows;
}
 
源代码29 项目: marathonv5   文件: JavaFXElementFactory.java
public static void reset() {
    add(Node.class, JavaFXElement.class);
    add(TextInputControl.class, JavaFXTextInputControlElement.class);
    add(HTMLEditor.class, JavaFXHTMLEditor.class);
    add(CheckBox.class, JavaFXCheckBoxElement.class);
    add(ToggleButton.class, JavaFXToggleButtonElement.class);
    add(Slider.class, JavaFXSliderElement.class);
    add(Spinner.class, JavaFXSpinnerElement.class);
    add(SplitPane.class, JavaFXSplitPaneElement.class);
    add(ProgressBar.class, JavaFXProgressBarElement.class);
    add(ChoiceBox.class, JavaFXChoiceBoxElement.class);
    add(ColorPicker.class, JavaFXColorPickerElement.class);
    add(ComboBox.class, JavaFXComboBoxElement.class);
    add(DatePicker.class, JavaFXDatePickerElement.class);
    add(TabPane.class, JavaFXTabPaneElement.class);
    add(ListView.class, JavaFXListViewElement.class);
    add(TreeView.class, JavaFXTreeViewElement.class);
    add(TableView.class, JavaFXTableViewElement.class);
    add(TreeTableView.class, JavaFXTreeTableViewElement.class);
    add(CheckBoxListCell.class, JavaFXCheckBoxListCellElement.class);
    add(ChoiceBoxListCell.class, JavaFXChoiceBoxCellElement.class);
    add(ComboBoxListCell.class, JavaFXComboBoxCellElement.class);
    add(CheckBoxTreeCell.class, JavaFXCheckBoxTreeCellElement.class);
    add(ChoiceBoxTreeCell.class, JavaFXChoiceBoxCellElement.class);
    add(ComboBoxTreeCell.class, JavaFXComboBoxCellElement.class);
    add(TableCell.class, JavaFXTableViewCellElement.class);
    add(CheckBoxTableCell.class, JavaFXCheckBoxTableCellElement.class);
    add(ChoiceBoxTableCell.class, JavaFXChoiceBoxCellElement.class);
    add(ComboBoxTableCell.class, JavaFXComboBoxCellElement.class);
    add(TreeTableCell.class, JavaFXTreeTableCellElement.class);
    add(CheckBoxTreeTableCell.class, JavaFXCheckBoxTreeTableCell.class);
    add(ChoiceBoxTreeTableCell.class, JavaFXChoiceBoxCellElement.class);
    add(ComboBoxTreeTableCell.class, JavaFXComboBoxCellElement.class);
    add(WebView.class, JavaFXWebViewElement.class);
    add(GenericStyledArea.GENERIC_STYLED_AREA_CLASS, RichTextFXGenericStyledAreaElement.class);
}
 
源代码30 项目: marathonv5   文件: JavaFXTreeTableViewElement.java
private List<IJavaFXElement> findSelectByProperties(JSONObject o) {
    List<IJavaFXElement> r = new ArrayList<>();
    if (o.has("select")) {
        JSONObject jo = new JSONObject((String) o.get("select"));
        JSONArray cell = (JSONArray) jo.get("cell");
        JavaFXTreeTableViewCellElement e = new JavaFXTreeTableViewCellElement(this, cell.getString(0),
                getTreeTableColumnIndex((TreeTableView<?>) getComponent(), cell.getString(1)));
        if (!(boolean) e._makeVisible()) {
            return Arrays.asList();
        }
        r.add(e);
    }
    return r;
}
 
 类所在包
 同包方法